2013-01-21 40 views
0

我已经使用了硒IDE并创建了测试用例。我已经用C#将它们转换为Nunit,并且我开始运行测试用例。如何使用nunit接口或C#代码来调整运行测试用例的速度(在selenium ide界面中,我可以调整速度以便慢慢地运行测试用例。)如何在C#或nunit界面中调整nunit测试用例的速度?

感谢 拉姆萨加尔

+4

你为什么要这么做? –

+1

你不应该这样做。这会增加写得不好的测试工作的可能性,但不会使它们稳定。您应该修改测试以正确地与应用程序同步。 –

+0

有人可能想要这样做的原因,例如,您有一些缓慢的渲染页面或JavaScript在每个驱动程序选择之后运行,导致测试在计算机尝试点击/选择/键入某些尚未完全准备然而。 –

回答

0

你可以添加一个TestFixtureSetup每个TestFixture。下面的例子应该在每次测试之前运行,并导致5秒的等待:

[TestFixture] 
public MyTests() 
{ 
    [TestFixtureSetUp] 
    public void Init() 
    { 
     System.Thread.Sleep(5000); 
    } 

    ... 
} 
+2

+1。把它放到一个作为基础测试夹具的基类中,然后你可以在每个测试夹具设置中使用它。虽然,我不完全确定OP为什么要这样做。 – Arran

0

其中的一个环节应该工作:

类似SO问题:

selenium webdriver manage speed?

论坛结果为硒(http://seleniumforum.forumotion.net/t376-to-control-of-speed-execute-in-selenium-rc):

[SetUp] 
public void SetupTest() 
{ 
selenium = new DefaultSelenium("localhost", 4444, "*iexplore", URL"); 
selenium.Start(); 
selenium.SetSpeed("1000"); 

} 
+1

你的StackOverflow链接不是这个问题的链接吗?!.....请注意,你在这里建议的是Selenium v​​1代码。 – Arran

+0

哎呀,坏的贴。谢谢阿兰。 – tallseth

0

我已经过去几天一直在关注这个问题。到目前为止,解决这个问题的最简单的方法是创建一个驱动程序属性,而不是一个变量,并为该get添加一个等待。

private IWebDriver _driver; 
    public IWebDriver driver 
    { 
     get{ Thread.Sleep(500); 
      return _driver; 
     } 

     set 
     { _driver = value; } 
    } 

这意味着任何时候你的要求驾驶员,这是任何时候你在浏览器中做任何事情,它会按指定量慢下来。