我正在尝试使用TestCase属性运行nunit3参数化测试。
我的测试方法如下:
[Test]
[TestCase("testuser")]
public void OBA_Test(String name)
{
driver.Manage().Timeouts().ImplicitlyWait(TimeSpan.FromSeconds(10000));
driver.Navigate().GoToUrl(baseURL + somewebsite)
// Code to test website.
}
然后我拿下dll并尝试使用
运行nunit3-console.exe "C:\temp\test\Selenium Testing Prod.dll" /run:"SeleniumTests.SeleniunProdTest.OBA_Test(\"testuser\")"
我在这里做错了什么?有什么指针吗?
参考:nunit-console does not run tests parameterized with TestCase attribute
答案 0 :(得分:3)
该消息告诉您正在使用的NUnit版本没有识别/run
选项。 NUnit V2的/run
被NUnit 3中的增强/test
选项取代。
答案 1 :(得分:0)
我使用的是nunit版本2缺少某些功能。我更新到版本3并遵循这篇文章: http://executeautomation.com/blog/passing-parameters-to-nunit-test-via-cli-using-params/
基本上在我的[设置]中我将命令行输入收集为:
name = TestContext.Parameters.Get("empname");
并在我的[Test]中使用它,并在命令行中使用--params,如下所示:
nunit3-console.exe --params:empname=testemp "C:\temp\Debug_PROD\Selenium Testing Prod.dll"