Running Single TestFixtures from C # Code

I know how to run full NUnit assemblies from C # code

TestPackage testPackage = new TestPackage(assemblyName);
RemoteTestRunner remoteTestRunner = new RemoteTestRunner();
remoteTestRunner.Load(testPackage);
TestResult testResult = remoteTestRunner.Run(new NullListener(), TestFilter.Empty, false, LoggingThreshold.Error);

But how can I run single TestFixtures or even Single Tests?

+5
source share
1 answer

Thanks to @Tony Hopkinson, I found a solution. I just needed to create a class that inherits from TestFilterand overwrite there Match.

public class SingleTestFilter : TestFilter
{
    private string testName;

    public SingleTestFilter(string TestName)
    {
        testName = TestName;
    }


    public override bool Match(ITest test)
    {
        return test.TestName.Name.Equals(testName);
    }
}

And then call remoteTestRunner.Runwith it as a parameter.

remoteTestRunner.Run(new NullListener(), new SingleTestFilter("MyTest"), false, LoggingThreshold.Error);
+1
source

All Articles