问题可能真的很微不足道,但我无法以适当的方式处理它。我将 Selenium 与 NUnit 一起使用,有两个类:
1)“DemoTest”,它涉及一个简单的测试“DummyTest”:
public class DemoTest : TestBase
{
public class RunTest
{
[Test, Category("Main-Tests"), Order(1)]
public void DummyTest()
{
}
}
}
2)“测试基础”类,我想在其中放置所有 NUnit/驱动程序属性,例如:“SetUp”/“TearDown”
[TestFixture]
public class TestBase
{
public IWebDriver driver;
public IWebDriver Driver
{
get { return driver; }
set { driver = value; }
}
public string pageURL = "http://automationpractice.com/";
[SetUp]
public void SetUp()
{
driver = new ChromeDriver();
driver.Manage().Timeouts().PageLoad = TimeSpan.FromSeconds(15);
driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromSeconds(0);
driver.Navigate().GoToUrl(pageURL);
}
[TearDown]
public void TearDown()
{
driver.Close();
driver.Dispose();
}
}
}
由于声明了 NUnit 属性(SetUp 部分),因此来自 DemoTest 类的测试至少应该在 pageURL 变量下的页面上移动。
结果是在运行测试后它会立即跳转到“通过”而不打开指定的地址。
“DemoTest”继承自“Test base”类。Nuget 包已正确安装。当我将测试放在“测试基础”类中时,一切正常,但我想让它分开。