MSTests werden in Visual Studio ausgeführt, jedoch nicht über den Dotnet-Test
Posted: 14 Jan 2025, 11:43
https://github.com/mrpmorris/AutoRegister
(deleted-tests branch)
Mein Unit-Tests-Projekt hat einen Projektverweis auf Morris.AutoRegister.Fody< /code>. Wenn ich die Tests in Visual Studio ausführe, funktionieren sie einwandfrei, aber wenn ich sie über dotnet test im Ordner „Source“ ausführe, erhalte ich für jeden Test die folgende Fehlermeldung...
UPDATE

(deleted-tests branch)
Mein Unit-Tests-Projekt hat einen Projektverweis auf Morris.AutoRegister.Fody< /code>. Wenn ich die Tests in Visual Studio ausführe, funktionieren sie einwandfrei, aber wenn ich sie über dotnet test im Ordner „Source“ ausführe, erhalte ich für jeden Test die folgende Fehlermeldung...
Code: Select all
C:\Data\Mine\Code\AutoRegister\Source\Lib\Morris.AutoRegisterTests\ModuleWeaverTests\AutoRegisterAttributeTests\FindTests\ServiceTypeFilterTests.cs(31): error test failed:
WhenAServiceTypeFilterIsSpecified_ThenOnlyServiceTypesMatchingThatFilterAreRegistered (1ms): Test method Morris.Au
toRegisterTests.ModuleWeaverTests.AutoRegisterAttributeTests.FindTests.ServiceTypeFilterTests.WhenAServiceTypeFilt
erIsSpecified_ThenOnlyServiceTypesMatchingThatFilterAreRegistered threw exception:
System.IO.FileNotFoundException: Could not load file or assembly 'Morris.AutoRegister.Fody, Version=1.0.0.0, Cultu
re=neutral, PublicKeyToken=null'. The system cannot find the file specified.
Stack Trace:
at Morris.AutoRegisterTests.ModuleWeaverTests.WeaverExecutor.Execute(String sourceCode, TestResult& testResult
, String& manifest, Boolean assertNoDiagnosticsOutput, String partialMethodsSourceCode)
at Morris.AutoRegisterTests.ModuleWeaverTests.AutoRegisterAttributeTests.FindTests.ServiceTypeFilterTests.WhenA
ServiceTypeFilterIsSpecified_ThenOnlyServiceTypesMatchingThatFilterAreRegistered() in C:\Data\Mine\Code\AutoRegist
er\Source\Lib\Morris.AutoRegisterTests\ModuleWeaverTests\AutoRegisterAttributeTests\FindTests\ServiceTypeFilterTes
ts.cs:line 31
at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructo
r)
at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr)
- Wenn ich die App in VS erstelle und dann den Dotnet-Test ausführe – -no-build dann wird der Test ausgeführt und besteht.
- Wenn ich dotnet test --no-restore ausführe, wird er neu erstellt und funktioniert immer noch.
Wenn ich „dotnet test“ ausführe, wird es wiederhergestellt + neu erstellt und dann schlägt fehl. - Ich habe den folgenden Unterschied in Morris.AutoRegisterTests.deps.json entdeckt
