Nunit - 为什么具有唯一名称的单个测试正在执行多次?

时间:2013-05-21 04:52:29

标签: nunit

我有一个像

这样的测试
    [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);

当我执行上面的代码时,测试“一个”正在执行,但是多次调用,有人可以告诉为什么会发生这种情况吗?

提前致谢, 基肖尔马布。

1 个答案:

答案 0 :(得分:0)

首先,在您的情况下,您不需要第一个[Test],因为您已经拥有[TestCase(...)]。只需删除该属性,看看这是否会产生影响。 其次,我相信会发生什么,测试类 - One(我认为你称之为它)得到了它并在其中执行所有测试。例如,MyTest将运行3次(对于每个TestCase)。

我希望我理解你是对的。