C#单元测试中的Selenium Webdriver自动机
我必须使用selenium编写用于测试web应用程序的单元测试方法来自动化测试。我对硒还不熟悉,我不了解的一点是: 1) 我已经用wait.Until命令为登录页面编写了一个单元测试方法C#单元测试中的Selenium Webdriver自动机,c#,unit-testing,selenium,C#,Unit Testing,Selenium,我必须使用selenium编写用于测试web应用程序的单元测试方法来自动化测试。我对硒还不熟悉,我不了解的一点是: 1) 我已经用wait.Until命令为登录页面编写了一个单元测试方法 [TestMethod] public void LoginWithParameters() { IWebDriver driver = new ChromeDriver(); try { driver.Navigate(
[TestMethod]
public void LoginWithParameters()
{
IWebDriver driver = new ChromeDriver();
try
{
driver.Navigate().GoToUrl(ConfigurationManager.AppSettings["TestURLLogin"]);
var userName = driver.FindElement(By.Id("UserName"));
var passWord = driver.FindElement(By.Id("Password"));
var logOn = driver.FindElement(By.XPath("//input[@value='Log On']"));
userName.SendKeys(ConfigurationManager.AppSettings["UserName"]);
passWord.SendKeys(ConfigurationManager.AppSettings["Password"]);
logOn.Click();
WebDriverWait wait = new WebDriverWait(driver, TimeSpan.FromSeconds(10));
var by = By.LinkText("Home");
wait.Until(ExpectedConditions.VisibilityOfAllElementsLocatedBy(by));
}
catch (Exception ex)
{
Assert.Fail("Test failed. The exception was:\n {0}", ex.Message.ToString());
}
var str = driver.PageSource;
Assert.IsTrue(str.Contains("Home"));
}
2) 登录后,我必须填写表格并提交。
现在的条件是“只有在登录测试成功的情况下,我必须转移到表单填充单元测试方法。”。若登录失败,那个么我不必去表单填充单元测试方法
就我对单元测试的理解而言,单元测试方法并不依赖于其他单元测试方法。那么,在这些条件下,如何使用C#中的webdirver实现selenium自动化呢 我相信您只需右键单击您的测试类代码并选择
运行测试方法
,它们将按照页面上显示的方法顺序运行?这就是你的意思吗?这不是单元测试。这是一个集成测试。是的,单元测试并不依赖于其他的单元测试。这里的内容是测试的先决条件。所以我喜欢用小黄瓜语法写我的集成测试,当我登录的时候,我用下面的数据填写这个表格,当我提交表格的时候,我会看到“x”,这是一个相当广泛的问题。一种方法是将测试放在框架中的某个套件中,触发“prereq”套件,并且仅在“prereq”通过时运行其他测试。