无法加载<mytest>,因为它不在Appbase下

8 vb.net nunit watin

我已经通过在目录中选择我的测试项目创建了一个NUnit项目(NunitLoginTest.nunit)nunit\bin,现在我正在尝试加载该项目,但它给了我以下错误.

无法加载因为它不在Appbase下,无法加载文件或程序集"nunitLogintest"或其依赖项之一.系统找不到指定的路径

它与什么有关?我还检查了我的配置文件.我从控制台运行它.

更新:

我想启动NUnit,然后它应该加载我在某个目录中的Visual Studio项目,然后运行所有测试(如果我没有在任何NUnit项目中定义它).

实际上我想创建一个批处理文件来运行所有这些.当我这样做时,它将不会加载项目.我在环境变量中定义了c:\ Program Files \nunit\bin路径.

小智 5

在某些情况下,您必须自己填写ApplicationBase.主菜单,项目,编辑,填充DLL文件所在的ApplicationBase.


小智 4

当我运行 NUnit 测试时,我不会创建 XXX.nunit 项目文件。在控制台我输入:

nunit-console.exe c:\myproject\bin\myproject.test.dll 
Run Code Online (Sandbox Code Playgroud)

在您的情况下,您有一个 .nunit 文件,其中列出了要测试的程序集。确保从执行 nunit-console.exe 的位置正确解析文件中的路径。我的示例具有程序集的完整路径,因此我可以从任何位置运行 nunit-console.exe。

nunit 文件看起来像这样:

<NUnitProject>
  <Settings activeconfig="Debug" appbase="C:\dev\Community\src\" />
  <Config name="Debug" appbase="C:\dev\Community\src" binpathtype="Auto">
    <assembly path="Profile.Test\bin\Debug\Profile.Test.dll" />
    <assembly path="Roster.Test\bin\Debug\Roster.Test.dll" />
  </Config>
  <Config name="Release" binpathtype="Auto" />
</NUnitProject>
Run Code Online (Sandbox Code Playgroud)

appbase 设置指示在哪里优化要测试的程序集。所以程序集的完整路径是appbase + 程序集路径。