Visual Studio 2010 does not discover new unit test

2020-05-18 05:21发布

问题:

I am writing some unit tests in Visual Studio 2010. I can run all tests by using "Run all Tests in Current Context".

However, if I write a new unit test, it does not get picked up by the environment - in other words, I am not able to find it in Test List Editor, by running all tests, or anywhere else. If I unload the project and then reload it; the new test is available to run.

When I am adding a unit test, I simply add a new method to an already existing TestClass and decorating it with [TestMethod] attribute - nothing fancy.

What might be causing this behaviour, and how do I make it work ?

回答1:

I finally figured out the problem. In Options under Test Tools -> Test Project, there is an option "Disable background discovery of test methods". It was turned on - I do not know how that happened, but removing the checkmark and restarting Visual Studio solved the problem.



回答2:

I've had this problem as well when building in debug mode. When I switched it to build in release mode that fixed it for me.



回答3:

I had a similar problem in Visual Studio 2012, however none of the solutions worked. I am developing a 64 bit application and the solution was to choose:-

Test -> Test Settings -> Default Processor Architecture -> X64


回答4:

I've had this issue and option 2 below fixed it for me.

  1. Remove any app.config file (not sure why, but one of the MS forums has a few of these posts with this solution) and

  2. Ensure that within the configuration properties of the solution the project is set to build!!