[# VS11] What happened to my unit tests migrated from # VS2010?

p>image

Buenas,

After a good while working with Visual Studio 11 and ReSharper 7, because will already grasping you hand. Those who complain of the icons and the Look & Feel because they complain free because in reality, once you get used to it or you realize that has changed the IDE.

Clarification: I personally think that if the colors of the VS11 IDE you bothered, is that these more concerned by the IDE for the code… should not be so.

But hey, how they have changed quite a lot, if it is important to know and learn about them. One of them is that now withVisual Studio 11 we can integrate the implementation of unit testing with different set of unit tests, nUnit, MSTest, etc. But of course to support this scenario, have had to modify the way in which Visual Studio 2010 worked tied to MSTests.

Let’s see an example. I have a solution in Visual Studio with a ClassLibrary featured Foo() and Bar(), and then 2 unit tests with the following code.

   1: [TestMethod()]

   2: public void AskForFooAndGetFoo()

   3: {

   4:     var target = new Class1();

   5:     var actual = target.Foo();

   6:     Assert.AreEqual("Foo", actual);

   7: }

   8:  

   9: [TestMethod()]

  10: public void AskForBarAndGetBar()

  11: {

  12:     var target = new Class1();

  13:     var actual = target.Bar();

  14:     Assert.AreEqual("Bar", actual);

  15: }

As I am an organized person, was created my list of tests

image

and of course, the unit tests passed OK and code coverage was very good.

image

Until here everything great. And I so happy working with Visual Studio 2010.

However, things change a bit when we open the same solution with Visual Studio 11 we see that the lists of tests are not more supported. We can see the tests and the categories that we have created, but you can not run tests.

image

The reference article that redirected to us, it is very good although I am sure that will change in the near future.

For the implementation of unit testing, now have a new panel in Visual Studio 11 called "Unit Test Explorer". And here’s an interesting detail about the operation of the aircraft.

The "Unit Test Explorer" pane, is responsible for inspecting the code of our solution automatically and detects the unit tests in the same.

image

Then we can run the unit tests, launching the failed tests, which have passed correctly, etc.

image

We also have the ability to filter by these views and select the TestSettings with which we want to run the tests.

But the best (or one of the best things) is slightly hidden. Now the IDE allows us to configure Visual Studio 11 so that the unit tests run automatically after each compilation (something which previously made with a MACRO).

image

So… our tests is not lost, we only have to organize them again. And it is also a great time to review our evidence, starting with the same name.

Said it this morning via Twitter the ReSharperteam. @ ReSharper

Documenting a method name with a comment? Try giving it a better name. Better name doesn’t fit in one line?Now you have a serious issue!

Saludos @ Home

El Bruno

image image image

References: http://msdn.microsoft.com/library/dd286595(VS.110).aspx

[#VS11] Que ha pasado con mis tests unitarios migrados desde #VS2010?

p>image

Buenas,

después de un buen tiempo trabajando con Visual Studio 11 y ReSharper 7, pues ya le voy agarrando la mano. Los que se quejan de los íconos y el Look & Feel pues se quejan gratis porque en realidad, una vez que te acostumbras ni te das cuenta de que ha cambiado el IDE.

Aclaración: personalmente pienso que si los colores del IDE de VS11 te molestan, es que estas más preocupado por el IDE que por el código … no debería ser así.

Pero bueno, como han cambiado bastantes cosas, si es importante conocer y aprender sobre las mismas. Una de ellas es que ahora con Visual Studio 11 podemos integrar la ejecución de pruebas unitarias con diferentes set de unit tests, nUnit, MSTest, etc. Pero claro para dar soporte a este escenario, han tenido que modificar la forma en la que Visual Studio 2010 trabajaba atado a MSTests.

Veamos un ejemplo. Yo tengo una solución en Visual Studio con una ClassLibrary con las funciones Foo() y Bar(), y luego 2 unit tests con el siguiente código.

   1: [TestMethod()]

   2: public void AskForFooAndGetFoo()

   3: {

   4:     var target = new Class1();

   5:     var actual = target.Foo();

   6:     Assert.AreEqual("Foo", actual);

   7: }

   8:  

   9: [TestMethod()]

  10: public void AskForBarAndGetBar()

  11: {

  12:     var target = new Class1();

  13:     var actual = target.Bar();

  14:     Assert.AreEqual("Bar", actual);

  15: }

Como soy una persona organizada, pues tenía creada mi lista de tests

image

y claro, los unit tests pasaban OK y la cobertura de código era muy buena.

image

Hasta aquí todo genial. Y yo tan feliz trabajando con Visual Studio 2010.

Sin embargo, la cosa cambia un poco cuando abrimos la misma solución con Visual Studio 11 vemos que las listas de tests no están más soportadas. Podemos ver los tests y las categorías que hemos creado pero no podemos ejecutar los tests.

image

El artículo de referencia al que nos redirigen, está muy bien aunque estoy seguro que lo cambiarán en un futuro próximo.

Para la ejecución de las pruebas unitarias, tenemos ahora un nuevo panel en Visual Studio 11 llamado “Unit Test Explorer”. Y he aquí un detalle interesante sobre el funcionamiento del mismo.

El panel “Unit Test Explorer”, se encarga de inspeccionar automáticamente el código de nuestra solución y detecta las pruebas unitarias que hay en la misma.

image

Luego podemos ejecutar las pruebas unitarias, lanzar las pruebas fallidas, las que han pasado correctamente, etc.

image

También tenemos la capacidad de filtrar por estas vistas y de seleccionar el TestSettings con el que queremos ejecutar las pruebas.

Pero lo mejor (o una de las mejores cosas) está un poco escondida. Ahora el IDE nos permite configurar Visual Studio 11 para que las pruebas unitarias se ejecuten automáticamente después de cada compilación (algo que antes hacía con una MACRO).

image

Así que … nuestras pruebas no se han perdido, solo tenemos que organizarlas nuevamente. Y además es un excelente momento para revisar nuestras pruebas, empezando por el nombre de las mismas.

Lo dijo esta mañana a través de Twitter el equipo de ReSharper. @ReSharper

Documenting a method name with a comment? Try giving it a better name. Better name doesn’t fit in one line? Now you have a serious issue!

 

 

Saludos @ Home

El Bruno

image image image

Referencias: http://msdn.microsoft.com/library/dd286595(VS.110).aspx