我有一个像
这样的测试 [Test]
[TestCase("Chrome", TestName = "One")]
[TestCase("Firefox", TestName = "Two")]
[TestCase("IE", TestName = "Three")]
public void MyTest(string Browser)
{
.............
}
我通过编程将其称为
SimpleNameFilter filter = new SimpleNameFilter() { };
Test = "SeleniumTests.Test.One";
filter.Add(Test);
CoreExtensions.Host.InitializeService();
TestPackage testPackage = new TestPackage(@"D:\Test.dll");
RemoteTestRunner remoteTestRunner = new RemoteTestRunner();
remoteTestRunner.Load(testPackage);
TestResult result = remoteTestRunner.Run(new NullListener(), filter, true, LoggingThreshold.All);
当我执行上面的代码时,测试“一个”正在执行,但是多次调用,有人可以告诉为什么会发生这种情况吗?
提前致谢, 基肖尔马布。
答案 0 :(得分:0)
首先,在您的情况下,您不需要第一个[Test]
,因为您已经拥有[TestCase(...)]
。只需删除该属性,看看这是否会产生影响。
其次,我相信会发生什么,测试类 - One
(我认为你称之为它)得到了它并在其中执行所有测试。例如,MyTest
将运行3次(对于每个TestCase
)。
我希望我理解你是对的。