Part 1 : Changes in Visual Studio 2012 with respect to test features


Welcome to the first post in this series which will give an overview of the differences in Visual Studio 2012 (VS12) retrospect to Visual Studio 2010 (VS10). Before, we start, a quick introduction of our workgroup, we are a group of five people who have decided to put the content of this blog. A-team consists of Amit Saxena, Anil Chandra Lingam, Chandra Sekhara Rao Aluru, Harsh Jain and Kiran Kumar Grandhe.

In this particular post, we will cover the basic differences between VS2012 and VS2010 Test features, mostly with respect to navigation, running the tests, results and some features that have been deprecated in VS12. Let us now dive into this.

Test List Editor which is very commonly used to run tests in VS10 is deprecated in VS12 and is replaced by Test Explorer. Below screenshots show this difference with a red highlight.

 

Next question would obviously be, how do I run my tests from Test Explorer and how will this be different from VS2010. The experience of running the tests in VS12 is seemingly different from VS10 for a first time user. When you select Test Explorer in VS12 as shown in the above screen shot (Test – Windows – Test Explorer), it will open the Test Explorer window and you will see ‘Run All’ or ‘Run’ option to execute your tests as compared to ‘Run Checked Tests’ or ‘Debug Checked Tests’ in VS10. Below screen shots will show this difference

 

 

In VS12 ‘checkbox’ option is removed which means that if you want to select any particular tests to run, you have to click ‘CTRL + Select’.

Now that we understand the differences on how to run the tests in VS12, let us look at the features that have changed in VS12 while the tests are in progress. Unlike, VS10 where the progress of the test is shown with a distinct ‘In Progress’ icon, this icon is replaced in VS12 with a simple status bar. We have highlighted the differences in the below screenshots

To this point, we have seen the changes on how to Open the tests, run the tests and progress state of the tests in VS12. Now, let us look at the changes that are included after running the tests.

In VS10 test results would open in a TRX file when you click on the Passed/Failed tests, where you can find more details, this is replaced in VS12 with simple intuitive message at the bottom of ‘Test Explorer’ window. This window also has a stack trace, in case of a failed test. Highlighted part in the below window will show the difference.

 

That is it in this post, in the next post, we will be covering the differences in the Load Test of VS12 retrospect to VS10.


Comments (7)

  1. Can you also Blog on Developer's Perpective, it is more of Testing perspective

  2. bkstill says:

    As there is no longer any distinct In Progress Icon or status per each test in VS2012 is there anyway of identifying which test is currently running?

  3. @bkstill  You will know which TC passed when you are running in a Batch (List will be updated as and when TC is passed/failed), but you will not know which TC is currently under run.

  4. Borislav Traykov says:

    If Visual Studio 2012 doesn't use TRX files for the test results, where are the test results that are shown in the Test Explorer window stored?

    What is their format?

    Thanks in advance to anyone who knows the answers to these questions!

  5. Paul says:

    Typical MS.

    Meddling with a feature that worked relatively well in a previous version, and is no longer intuitive or does not work as well.

  6. Vinay says:

    VS2010 Test experience was much better than 2012 and I cant understand why MS screws the things that are so intuitive to the user in the next version ? just because they have to do something different in next version ?. Can any one from MS please explain ?. How is 2012 test experience is better than 2010 ?.

  7. antmx says:

    I agree with Vinay. Why 2010's way of testing has been 'deprecated' when it was so useful does not appear to make sense. I've seen the 'Generate Unit Test' add-on for 2012/13 but it's poor compared to what 2010 had out of the box. There may be some long term strategy for improving VS's testing tools, but if that's not yet ready then why remove what already worked so well? Now we have to use the PrivateObject to access non-public members of a type that we want to run tests against, passing it a string for the method name and an array of objects as the arguments. Whacky….