Mango Baby Steps : Unit Testing your app
Making apps is good , making apps that work perfectly is better
In order to make sure that your app works fine you may want to test your code .
So let’s take a walk through Mango Unit Testing Framework.
You can grab the new assemblies from here.
Next you should have something to test …right ?
Nothing complicated, we will work with the famous “ Hello Mango” sample.
In Visual Studio : File—> New project –> Silverlight for Windows Phone
Choose Windows Phone application and name it “ Hello Mango” . Since we are working with Mango, don’t forget to choose the Windows Phone 7.1 version
We will change the application title to “ Hello Mango” , the page title to “ Unit Test” and we will add a textblock containing “ Hello Mango” :
Now that you have your sample app ready , run it to make sure that everything is fine and then we will move to the test project.
the test project is also a Windows phone application called “ HelloMangoTest”
We need to convert the windows phone application to a Unit Test project:
Download the assemblies as describe it below , unzip the file and make sure they are unlocked so you can use them on your local machine.
Add the two assemblies to the “ HelloMangoTest” project :
You have also to delete the MainPage.xaml because Silverlight Unit Test Framework has a TestPage.
One more thing to do :
In the App.xaml.cs, add
, you will have this code:
Set the test project as a Startup Project and now you are ready to write the tests.
add a new class and name it “ test” :
In this test we want to make sure that when the MainPage is initialized , there is indeed a textBlock ( we called it “ txt” ) . Here is the code :
When you run the project, you will get this first screen :
And I have no idea what this screen is I need to ask Jeff Wilcox about it.
Surprisingly it’s not working So I did a small search and found out that I shouldn’t delete the MainPage and change the Rootvisual in the App.xaml.cs.
Instead I put this code in my MainPage.xaml.cs in the test project :
If the Boolean is true, the unit test become the content of the Mainpage.
Let’s run again …Wohoo! It’s working not only on the emulator but also on a real device :
The list of Test classes under your project will be shown in first page. You can go into each class to see all test methods by clicking on the name of class.
In our case you will see Test and pass. Click on the method’s name ( pass) and you will get the test information , the result is “ passed”.
That was an introduction of how to use Silverlight Unit Test Framework with Mango