Visual Studio 15.8.1 not running MS unit tests
C#Visual StudioMstestC# Problem Overview
When I updated Visual Studio to the latest version, 1 of my test projects stopped running tests and outputted this message:
> Test project {} does not reference any .NET NuGet adapter. Test > discovery or execution might not work for this project. It is > recommended to reference NuGet test adapters in each test project in > the solution.
UPDATED: I was using MS Test as opposed to any other test frameworks like Nunit or Xunit.
C# Solutions
Solution 1 - C#
Ok, you can add Nuget packages as asked. But you can also try to disable the following setting (Tools->Options->Test): "For improved performance, only use test adapters in test assembly folder or as specified in runsettings file".
Let me know if it works for you.
Solution 2 - C#
I had to add the following Nuget packages:
MSTest.TestAdapter
MSTest.TestFramework
Microsoft.NET.Test.Sdk
Solution 3 - C#
If you are using MS Test, try installing
MSTest.TestAdapter
via nuget or
if you are using nunit, install
NUnit3TestAdapter
latest versions via nuget.
After installing please restart the visual studio and then you can see the tests running.
Solution 4 - C#
I had the same issue and none of the answers above worked.
Installing NUnit3TestAdapter V3.10.0
fixed it.
Solution 5 - C#
I had a very similar issue recently with xUnit, the same outcome, however my fix was due to the fact that previously with lower versions of Microsoft.NET.Test.Sdk you didn't need XUnit.Runner.VisualStudio explicitly installed.
When I updated my Microsoft.NET.Test.Sdk to version 15.9.0 it stopped allowing tests to run until I installed the XUnit.Runner.VisualStudio Nuget.
Now, This may seem blatantly obvious, but, previously it would cope without it and still work. Now, it does not. The same will probably be true of other test platforms. It worked for me.
Solution 6 - C#
My reputation score does not currently allow me to add this as a comment to the accepted answer. For reference, I've appended version numbers to the nuget packages referenced in csharpsql's answer:
MSTest.TestAdapter v1.3.2
MSTest.TestFramework v1.3.2
Microsoft.NET.Test.Sdk v15.9.0
Solution 7 - C#
I know that it is stupid, but for me nothing from earlier answers were working. After that I just restart my computer and everything is working correctly :) (My proble was that one day everything was working correctly and next day it stopped working)
Solution 8 - C#
For me I felt very foolish after spending hours, trying EVERYTHING, only to find that I had simply forgotten to add the [TestMethod] directive on the unit test method.
Solution 9 - C#
I was trying to run an existing project. I had the .NET Core SDK 3.3 installed, but did not have 2.1 installed. This was causing the tests to silently fail.
Solution 10 - C#
I ran into this problem too (in VS 2019), which can be found all over the web. I also support @csharpsql's simple solution. I also couldn't directly comment (how annoying Stack Overflow!)
I had used 'Remove unused references' in VS. I did have to restart VS to get the references removed from view. Cleaning and rebuilding posed no problem.
But running all tests from the Test Explorer reported 'Not run' on all tests, without any explanation or error message. Very annoying.
After finding the suggestion here I started experimenting with re-adding the latest versions of those 3 references. That solved my problem. I just remains annoying this unnecessary problem occurs!
Solution 11 - C#
Since its just a checkbox, Ive tried disabling the following setting before anything else, and it worked!
Tools -> Options -> Test -> "For improved performance, only use test adapters in test assembly folder or as specified in runsettings file"
Solution 12 - C#
Adding NuGet packages doesn't work for me.
Disable the following setting (Tools->Options->Test): "For improved performance, only use test adapters in test assembly folder or as specified in runsettings file" works.