Unit testing en Windows Phone 7…
Con la implantación cada vez más extendida de las prácticas de programación extrema (eXtremeProgramming) han surgido una serie de prácticas que han cambiado la forma en la que se venía desarrollando el software.
Una de las prácticas más importantes de esta nueva forma de desarrollar es el Desarrollo Guiado por Pruebas o TDD. Esta práctica engloba a otras dos:
- Escribir las pruebas primero (Test First Development)
- Refactorización (Refactoring)
Si queremos aplicar esta técnica en nuestros proyectos de Windows Phone 7 necesitaremos configurar algunas cosas para tener un proyecto de pruebas funcionando.
- Obtener la versión del Unit Test Framework compatible con Windows Phone 7.Están disponibles en esta entrada del blog de Jeff Wilcox o directamente desde el siguiente enlace.
- Crear un nuevo proyecto de aplicación para Windows Phone 7.Las pruebas que realicemos se ejecutarán directamente en el simulador para probar nuestro código. Por ello, es necesario que el proyecto que albergue las pruebas sea de este tipo.
- Añadir las referencias necesarias del Unit Test FrameworkÉstas serían:
Microsoft.VisualStudio.TestTools.UnitTesting; Microsoft.Silverlight.Testing;
- Modificar el fichero de code behind de MainPage.xaml añadiendo el siguiente código:
void MainPage_Loaded(object sender, RoutedEventArgs e) { SystemTray.IsVisible = false; var testPage = UnitTestSystem.CreateTestPage() as IMobileTestPage; BackKeyPress += (x, xe) => xe.Cancel = testPage.NavigateBack(); (Application.Current.RootVisual as PhoneApplicationFrame).Content = testPage; }
- Añadir una nueva clase estandar.Aquí añadiríamos el código de los test que quisiéramos ejecutar, por ejemplo, uno que pruebe que todo está funcionando.
using Microsoft.VisualStudio.TestTools.UnitTesting; using Microsoft.Silverlight.Testing; namespace SampleTest { [TestClass] public class SampleTest { [TestMethod] public void AlwaysPass() { Assert.IsTrue(true); } } }
Y ejecutando tendremos nuestro proyecto para pruebas unitarias en Windows Phone 7 en marcha

Algunos enlaces que te pueden resultar útiles:
Category: Microsoft, Windows Phone 7 | Tags: Silverlight, TDD, Unit Testing, Windows Phone 7 One comment »
October 17th, 2010 at 15:39
[...] Este toolkit ayuda a separar las Vistas del Modelo, lo que permite crear aplicaciones más sencillas y fáciles de mantener y extender. También facilita el desarrollo de aplicaciones que se puedan testear . [...]