gpt4 book ai didi

c# - 如何从 C# 代码运行 NUnit 测试

转载 作者:IT王子 更新时间:2023-10-29 04:48:47 25 4
gpt4 key购买 nike

我正在尝试编写一个简单的方法来接收文件并使用 NUnit 运行它。我设法使用 NUnit 的源代码构建的代码不起作用:

if(openFileDialog1.ShowDialog() != DialogResult.OK)
{
return;
}

var builder = new TestSuiteBuilder();
var testPackage = new TestPackage(openFileDialog1.FileName);
var directoryName = Path.GetDirectoryName(openFileDialog1.FileName);
testPackage.BasePath = directoryName;
var suite = builder.Build(testPackage);

TestResult result = suite.Run(new NullListener(), TestFilter.Empty);

问题是我不断收到 builder.Build 抛出的异常,指出未找到程序集。

我错过了什么?有没有其他方法可以从代码运行测试(不使用 Process.Start)?

最佳答案

在开头添加以下行,设置 NUnit 框架并可能对您有所帮助:

CoreExtensions.Host.InitializeService();

以编程方式执行 NUnit 测试的另一种“更简单”的方法是:

TestPackage testPackage = new TestPackage(@"C:\YourProject.Tests.dll");
RemoteTestRunner remoteTestRunner = new RemoteTestRunner();
remoteTestRunner.Load(testPackage);
TestResult testResult = remoteTestRunner.Run(new NullListener());

您需要引用以下程序集:

  • nunit.core.dll
  • nunit.core.interfaces.dll

当然,nunit.framework.dll 必须在您的测试程序集所在的文件夹中;)

关于c# - 如何从 C# 代码运行 NUnit 测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2825918/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com