0

问题可能真的很微不足道,但我无法以适当的方式处理它。我将 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 包已正确安装。当我将测试放在“测试基础”类中时,一切正常,但我想让它分开。

4

1 回答 1

1

尝试修复DemoTest类如下:

[TestFixture]
public class DemoTest : TestBase
{
    [Test, Category("Main-Tests"), Order(1)]
    public void DummyTest()
    {
    }
}
于 2020-01-21T12:01:53.830 回答