【发布时间】:2015-08-13 22:54:48
【问题描述】:
使用 Selenium C# Web 驱动程序和 NUnit 实现自动化。我正在使用命令行生成 Allure 报告,并且我的报告创建得非常好,但我需要以下问题的帮助: 我使用页面对象模型(2 个测试和 1 个页面)具有以下结构。现在,当我看到它显示在顶部测试运行(2 个测试套件,2 个测试用例)的报告时,每个测试用例都是一个测试套件。我想说 1 个测试套件,2 个测试用例。我该怎么做?
namespace ApplicationName.TestCases
{
[TestFixture]
class VerifyCreateOrder
{
IWebDriver driver;
[SetUp]
public void Initialize()
{
driver = new FirefoxDriver();
}
[TestCase]
public void doCreateOrder()
{
LoginPage loginPage = new LoginPage();
//some Assertion
}
}
}
namespace ApplicationName.TestCases
{
[TestFixture]
class SearchOrder
{
IWebDriver driver;
[SetUp]
public void Initialize()
{
driver = new FirefoxDriver();
}
[TestCase]
public void doSearchOrder()
{
LoginPage loginPage = new LoginPage();
//some Assertion
}
}
}
以下是我的 LoginPage Page 对象:
namespace ApplicationName.Pages
{
class LoginPage
{
public void doLogin(IWebDriver driver, String username, String password)
{
driver.Navigate().GoToUrl("http://www.myxyzsite.com");
driver.FindElement(By.Id("xyz")).SendKeys(username);
driver.FindElement(By.Id("xyz")).SendKeys(password);
driver.FindElement(By.Id("xyz")).Click();
}
}
}
我在http://www.nunit.org/index.php?p=suite&r=2.5.5 阅读了有关 NUnit 套件属性的信息,并创建了一个带有枚举器的 c# 类,但我如何调用它/连接它?我需要对我的测试课程进行哪些更改?
namespace NUnit.Tests
{
public class MyTestSuite
{
[Suite]
public static IEnumerable Suite
{
get
{
ArrayList suite = new ArrayList();
suite.Add(new VerifyCreateOrder());
suite.Add(new SearchOrder());
return suite;
}
}
}
}
【问题讨论】: