使用带有 TestCase 属性的 nunit3-console.exe 进行参数化测试
Parameterized test using nunit3-console.exe with TestCase attribute
我正在尝试 运行 使用 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
该消息告诉您,您正在使用的 NUnit 版本无法识别 /run
选项。 NUnit V2 的 /run
被 NUnit 3 中增强的 /test
选项取代。
我使用的是缺少某些功能的 nunit 版本 2。我更新到版本 3 并遵循了这篇文章:
http://executeautomation.com/blog/passing-parameters-to-nunit-test-via-cli-using-params/
基本上在我的 [Setup] 中,我将命令行输入收集为:
name = TestContext.Parameters.Get("empname");
并在我的 [测试] 中使用了它,并在命令行中使用了 --params 如下:
nunit3-console.exe --params:empname=testemp "C:\temp\Debug_PROD\Selenium Testing Prod.dll"
我正在尝试 运行 使用 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
该消息告诉您,您正在使用的 NUnit 版本无法识别 /run
选项。 NUnit V2 的 /run
被 NUnit 3 中增强的 /test
选项取代。
我使用的是缺少某些功能的 nunit 版本 2。我更新到版本 3 并遵循了这篇文章: http://executeautomation.com/blog/passing-parameters-to-nunit-test-via-cli-using-params/
基本上在我的 [Setup] 中,我将命令行输入收集为:
name = TestContext.Parameters.Get("empname");
并在我的 [测试] 中使用了它,并在命令行中使用了 --params 如下:
nunit3-console.exe --params:empname=testemp "C:\temp\Debug_PROD\Selenium Testing Prod.dll"