2009-10-29 13 views
1

Créer un test Pex pour tester une DLL et du matériel contrôlé par cette DLL?Créer un test Pex pour tester une DLL et du matériel contrôlé par cette DLL?

J'ai un matériel qui a une API dans lequel est contrôlé par une DLL. J'ai écrit des tests unitaires dans nunit qui appellent les parties appropriées de l'API et font un test. Par exemple, je pourrais avoir un «test de données», qui a un 1. ouvert, 2. lu d'un côté et 3. envoyer de l'autre, et l'affirmer est si oui ou non les données sont correctes. Je pense que Pex pourrait faire un bon travail de manipulation de cette donnée. Ma question est que je suis assis sur une DLL et que j'ai besoin d'assembler plusieurs choses pour le test. Comment implémenter Pex ici (je ne connais presque rien de Pex pour le moment)? Est-ce que je dois d'une façon ou d'une autre créer une API que je contrôle au-dessus de la DLL qui a lu et envoyé et laisser Pex aller à cette couche pour créer son test?

Edit: Je a fait quelques recherches et on a regardé une superbe vidéo sur au http://channel9.msdn.com/posts/Peli/Getting-started-with-Pex-in-Visual-Studio-2008/

Je conteste la capacité de le faire. Des sons comme Pex seront géniaux pour créer des tests mais pas vraiment un système complet (API plus matériel plus données)

Répondre

1

Il doit instrumenter le code pour générer les tests, donc il n'atteindra pas les comportements externes. Si votre API est mince et ne fait pas grand-chose, vous n'en tirerez pas grand-chose. Si vous avez une bonne quantité de logique dans cette API avec les appels matériels, je voudrais séparer tout cela du code qui fait l'interaction réelle avec le matériel - la définition d'une interface et l'utiliser dans le reste de la code. Cela vous permettra d'utiliser sur toute la logique impliquée. Ce qui précède comprend la séparation de choses comme l'analyse/analyse des données d'envoyer/recevoir. Vous serez en mesure de couvrir tout cela.