我正在使用 pnunit 在远程机器上运行 nunit 测试,pnunit 代理加载测试并在 Windows 2008 中运行它,但测试无法在 Windows 2003 中加载,代理错误是
INFO PNUnit.Agent.PNUnitAgent - Registering channel on port 9080
INFO PNUnit.Agent.PNUnitAgent - RunTest called for Test MyTest, AssemblyName test.dll, TestToRun test.Program.myDeployTest
INFO PNUnit.Agent.PNUnitTestRunner - Spawning a new thread
INFO PNUnit.Agent.PNUnitTestRunner - Thread entered for Test MyTest:test.Program.myDeployTest Assembly test.dll
Unhandled Exception: System.BadImageFormatException: The format of the file 'test
' is invalid.
File name: "test"
Server stack trace:
at System.Reflection.Assembly.nLoad(AssemblyName fileName, String codeBase, B
oolean isStringized, Evidence assemblySecurity, Boolean throwOnFileNotFound, Ass
embly locationHint, StackCrawlMark& stackMark)
在运行 procmon 并监视代理进程时,我可以看到代理可执行文件在 Windows 2003 上使用 .NET 1.1 程序集,在 Windows 2008 上使用 .NET 2.0,这可能是对这种行为的解释。如何让代理在 Windows 2003 上使用 .NET 2.0?我正在使用 Visual Studio 2005 创建测试。