Unit testing met Silverlight

Met de Beta1 release van Silverlight 2, lanceerden we een Unit test uitrusting waarmee je unit tests kan uitvoeren op zowel API als UI niveau. Deze belangrijke mogelijkheid beperkt zich niet tot de browser of het platform en kan gebruikt worden om snel geautomatiseerde unit tests uit te voeren en te verifiëren.Naast de unit test uitrusting voor Silverlight, hebben we ook de broncode van ~2,000 unit tests uitgebracht, die ook automatische dekking bood voor de  Silverlight control broncode, die we ook uitbrachten onder een vrijblijvende licentie (Je kunt de broncode van de control vrij nemen, aanpassen, de unit test op uitvoeren om het gedrag te controleren, om dan de controls te heruitbrengen zoals dat zelf wilt).

 

Leer Unit Testen met Silverlight

 

Jeff Wilcox (die de Silverlight unit test framework en uitrusting ontwikkelde) heeft hier een fantastische blogpost waarin wordt behandeld hoe je een Silverlight Unit Test project toevoegt aan een bewerking. Je kunt de chat applicatie downloaden die ik vorige maand toonde in de expression blend blog post tutorial . Je kunt ook de fantastische video post van Jeff bekijken, waarin hij de unit test framework en de test cases die we uitbrachten beschrijft. Zoals Jeff toont in zijn post, kun je nu ook een “Silverlight Test Project” toevoegen in de Visual Studio functie die unit tests vervat voor een applicatie waar je aan werkt:

Daarna kun je de unit test klassen toevoegen aan het test project dat API’s test of UI acties simuleert in de Silverlight controls (simuleer klikken op knoppen, ...).

Je kunt nu het test project inschakelen en de tests erin uitvoeren om te controleren en te rapporteren over hun status.Het test framework van Jeff biedt automatisch een test uitrusting dat gebaseerd is op browsers en een raportage systeem (wat betekent dat je het kan uitvoeren in elke browser/OS combinatie waarop SIlverlight steunt): 

 

Het test framework van Jeff ondersteunt ook snelle herinstelling van de controls na elke test (en het vermijdt ook dat je een nieuwe browser moet opstarten voor elk test scenario - wat het enorm snel maakt).In een mum van tijd vlieg je door honderden of duizenden geautomatiseerde tests :  

Groene resultaten betekenen dat de testen geslaagd zijn. De rode resultaten geven aan dat een test gefaald is en registeren de bevestigingsfout en/of runtime fouten die zijn opgetreden.

Samenvatting

 

Als je ooit moeite had om een strategie te bedenken om  geautomatiseerde unit testing of TDD met AJAX toepassingen uit te proberen, dan denk ik dat je akkoord zult gaan dat Silverlight veel betere test opties biedt. Als je Visual Studio gebruikt, kan je je tests en je bewerking zelf in afzonderlijke projecten bewaren, en je hoeft de tests niet in uw Silverlight toepassing te plaatsen om ze te uit te voeren.Naast de ondersteuning van de bovengenoemde uitrusting en het framework van de unit tests, zullen wij ook UI automatiserende APIs met de definitieve versie van Silverlight 2 ondersteunen.  Deze zullen toegankelijkheidsscenario's toelaten (de schermlezers toestaan om met Silverlight te werken en Sectie 508 overeenstemmen met Silverlight toepassingen). Met deze UI automatiserende APIs zal je ook UI’s kunnen testen en doelgerichte browser UI automatisering bouwen die echte muis en toetsenbord interactie simuleren en die geautomatiseerde doelgerichte ervaringstests mogelijk maken. De combinatie zou het moeten mogelijk maken om sterkere en beter onderhoudbare RIA oplossingen te bouwen.

Hopelijk kan je hiermee aan de slag,

 

Scott

 P.S. Voor meer tutorials en tips over Silverlight 2, ga eens kijken naar mijn nieuwe "Silverlight Tips, Tricks, Tutorials en Links" pagina. 

 

Published Wednesday, April 2, 2008 11:16 AM by Joeri Pansaerts

Comments

No Comments