第二种测试方法是C#
这是我的密码:第二种测试方法是C#,c#,.net,unit-testing,selenium,visual-studio-2012,C#,.net,Unit Testing,Selenium,Visual Studio 2012,这是我的密码: [TestInitialize] public void init() { _browser = new DefaultSelenium("localhost", 4444, @"*iehta", "http://localhost:4444"); } [TestMethod] public void TestLogin() { bool hasText; _browser.
[TestInitialize]
public void init()
{
_browser = new DefaultSelenium("localhost", 4444, @"*iehta", "http://localhost:4444");
}
[TestMethod]
public void TestLogin()
{
bool hasText;
_browser.Start();
_browser.Open("http://localhost/testSite.asp");
_browser.Type("id=NomUtilisateur", "admin");
_browser.Type("id=UserPassword", "password");
_browser.Click("name=Submit");
_browser.WaitForPageToLoad("30000");
hasText = _browser.IsTextPresent("test");
Assert.IsTrue(hasText, @"The search result does not contain text ""test"".");
}
[TestMethod]
public void TestRequisitionPhotocopie()
{
_browser.Start();
_browser.Open("http://localhost/testSite.asp");
_browser.Type("id=NomUtilisateur", "admin");
_browser.Type("id=UserPassword", "password");
_browser.Click("name=Submit");
_browser.WaitForPageToLoad("30000");
_browser.Click("link=lnkTest");
_browser.WaitForPageToLoad("30000");
}
[TestCleanup]
public void clean()
{
_browser.Stop();
//_browser.Close();
}
如果我运行两个测试方法,secon测试总是失败,并显示如下错误消息:
远程服务器不存在或不可用
如果我评论其中一种测试方法,它是有效的,我的两种测试方法是有效的
我的错在哪里
谢谢
编辑:
该错误并非每次都发生,但如果我调试Selenium Remote Control,则该错误位于Selenium-browserbot.js的第724行:windowToModify.seleniumAlert=windowToModify.alert
Selenium日志控制台中没有任何内容您这样试过吗?我总是在测试设置中启动selenium。(我也在用Nunit
[SetUp]
public void init()
{
_browser = new DefaultSelenium("localhost", 4444, @"*iehta", "http://localhost:4444");
_browser.Start();
_browser.Open("http://localhost/testSite.asp");
}
[TestMethod]
public void TestLogin()
{
bool hasText;
_browser.Type("id=NomUtilisateur", "admin");
_browser.Type("id=UserPassword", "password");
_browser.Click("name=Submit");
_browser.WaitForPageToLoad("30000");
hasText = _browser.IsTextPresent("test");
Assert.IsTrue(hasText, @"The search result does not contain text ""test"".");
}
[TestMethod]
public void TestRequisitionPhotocopie()
{
_browser.Type("id=NomUtilisateur", "admin");
_browser.Type("id=UserPassword", "password");
_browser.Click("name=Submit");
_browser.WaitForPageToLoad("30000");
_browser.Click("link=lnkTest");
_browser.WaitForPageToLoad("30000");
}
[TearDown]
public void clean()
{
_browser.Stop();
//_browser.Close();
}
你这样试过吗?我总是在测试设置中启动selenium。(我也在使用Nunit。)
[SetUp]
public void init()
{
_browser = new DefaultSelenium("localhost", 4444, @"*iehta", "http://localhost:4444");
_browser.Start();
_browser.Open("http://localhost/testSite.asp");
}
[TestMethod]
public void TestLogin()
{
bool hasText;
_browser.Type("id=NomUtilisateur", "admin");
_browser.Type("id=UserPassword", "password");
_browser.Click("name=Submit");
_browser.WaitForPageToLoad("30000");
hasText = _browser.IsTextPresent("test");
Assert.IsTrue(hasText, @"The search result does not contain text ""test"".");
}
[TestMethod]
public void TestRequisitionPhotocopie()
{
_browser.Type("id=NomUtilisateur", "admin");
_browser.Type("id=UserPassword", "password");
_browser.Click("name=Submit");
_browser.WaitForPageToLoad("30000");
_browser.Click("link=lnkTest");
_browser.WaitForPageToLoad("30000");
}
[TearDown]
public void clean()
{
_browser.Stop();
//_browser.Close();
}
您应该检查所有可用的日志文件-看起来可能是启动Selenium服务器无法进行测试2,或者在测试1后您没有完全关闭它。但是如果没有任何日志输出,很难判断。日志在哪里?但IE给了我一个错误…我不知道您的安装程序可能会将有关测试运行的日志文件存储在哪里;)因此,您在IE中遇到了一个错误,远程服务器没有响应,这不是来自Selenium的错误?调用browser可以吗?启动两次而不在两次之间停止?对于您的两个测试方法及其共享的同一个浏览器,init只发生一次instance@Nikolay我已经尝试在我的测试方法中停止,但它没有改变任何事情。您应该检查所有可用的日志文件-看起来可能是启动Selenium服务器无法进行测试2,或者在测试1后您没有完全关闭它。但是如果没有任何日志输出,很难判断。日志在哪里?但IE给了我一个错误…我不知道您的安装程序可能会将有关测试运行的日志文件存储在哪里;)因此,您在IE中遇到了一个错误,远程服务器没有响应,这不是来自Selenium的错误?调用browser可以吗?启动两次而不在其间停止?对于两个测试方法,init只发生一次,并且它们共享同一个浏览器instance@Nikolay我已经尝试在我的测试方法中停止,但它没有改变任何事情。