'The NUnit 3 driver encountered an error while executing reflected code (NUnit.Engine.NUnitEngineException)
I have a simple Nunit project which contains only a single test. I want to execute my code using command, so I have installed ‘Nunit-console.exe’ on my Windows 10 machine. After installation, executed the code on command prompt using below command
nunit3-console.exe "G:\LiveProjects\NUnitTestProject2\NUnitTestProject2\bin\Debug\netcoreapp3.1\NUnitTestProject2.dll"
like so
After executing this command, I have discovered below error message:
NUnit.Engine.NUnitEngineException : The NUnit 3 driver encountered an error while executing reflected code.
----> System.InvalidCastException : Unable to cast transparent proxy to type 'System.Web.UI.ICallbackEventHandler'.
--NUnitEngineException
The NUnit 3 driver encountered an error while executing reflected code.
like so
Please refer my below code:
[TestFixture]
public class Tests
{
[SetUp]
public void Setup()
{
Console.WriteLine("Welcome setup");
}
[Test]
public void Test1()
{
Console.WriteLine("Welcome first Test ");
Assert.Pass();
}
}
like so
Configuration details of my project:
- Microsoft.NET Framework version 4.7.0
- OS: window 10
- IDE: Visual studio 2019
- Use Nunit framework for unit testing
- NUnit3TestAdapter (Version) 3.16.1
- Microsoft.NET.Test.Sdk (Version) 16.5.0
- NUnit.Console (Version) 3.11.1
- Target .NET framework (Version) 3.1
Also, I have tried to disable the ‘code coverage’ option in visual studio 2019, however - I am not able to see it in. Can anyone suggest - where is ‘code coverage’ option available in visual studio 2019.
Solution 1:[1]
Charlie's comment is correct - however unfortunately still won't resolve your issue. Your test suite targets .NET Core - which the NUnit Console does not yet support. (Although there is a beta version out with support.)
For now, the best solution is to run with dotnet test, rather than the nunit console. For more details, see the guide here: https://docs.nunit.org/articles/nunit/getting-started/dotnet-core-and-dotnet-standard.html
Solution 2:[2]
Version 3.16.1 of the NUnit 3 test adapter is not compatible with version 3.11.1 of the engine, which is used by the console package you installed.
You must either downgrade the console runner to 3.10 or upgrade the adapter to 3.17.
For a detailed explanation see my blog post at http://charliepoole.org/technical/nunit-engine-version-conflicts-in-visual-studio.html
Solution 3:[3]
Remove the console runner and run the below command that works
dotnet test [path to your nunit test project solution file]
Ex:
dotnet test D:\MyProject\MobileProject\MobileProject.NUnitTest.csproj
Mac:
dotnet test /Users/MyName/MobileProject/MobileProject.NUnitTest.csproj
https://docs.nunit.org/articles/nunit/getting-started/dotnet-core-and-dotnet-standard.html
Solution 4:[4]
My issue was pretty straight forward, I had to save elapsed time in a weird way I would say?
I pushed the let ElapsedTime to the top of my file (since everything you see here is at the bottom of my js) I put on the pause function before clearing the Interval
saveTimer = ElapsedTime;
and went to my save method and added
finalcurrenthunt.timer=saveTimer;
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|---|
| Solution 1 | Chris |
| Solution 2 | Charlie |
| Solution 3 | |
| Solution 4 | CrimsonClouds Zer0Two |
