2012-07-30 4 views
5

Je souhaite intégrer les tests FsCheck aux tests NUnit. Plus précisément, lorsque je déclare plusieurs propriétés FsCheck, je veux qu'elles soient visibles et exécutables depuis le coureur VS. J'ai trouvé description de l'utilisation de xUnit aux côtés de FsCheck (sous "Implémentation IRunner pour intégrer FsCheck avec mb | x | N | cs | Unit"), mais ce n'est pas ce que je veux. Y a-t-il un moyen de le faire?Intégration FsCheck et NUnit

Répondre

3

Pouvez-vous expliquer pourquoi utiliser ce n'est pas ce que vous voulez? C'est le moyen de renvoyer le résultat d'un test FsCheck à NUnit. Vous devez écrire des tests FsCheck comme les tests NUnit normaux, et les attribuer avec un attribut Test (ou quel que soit le nom utilisé dans NUnit).

Si vous souhaitez une intégration plus étroite avec NUnit, vous devez vous familiariser avec le modèle de plug-in NUnit. L'intégration de NUnit est la prochaine sur ma liste de tâches. Pour un exemple d'intégration avec XUnit.NET, jetez un coup d'oeil au projet FsCheck.Xunit dans la source. Du côté de FsCheck, il devrait être assez similaire, mais le modèle de plugin de NUnit est assez différent de celui de XUnit.

6

Juste pour référence, il y a maintenant une intégration FsCheck.Nunit nuget package Il fonctionne pour F # 3.1 uniquement (pour le moment)

Utilisation:

Ajoutez le package NuGet (il ajoutera également un fichier dans le projet qui est prévu)

[<Property>] 
let maxLe (x:float) y = 
    (x <= y) ==> (lazy (max x y = y)) 

si vous voulez une sortie verbeuse, vous pouvez ajouter verbeux = true à l'attribut de propriété

+0

cela ne fonctionne pas avec nUnitLite malheureusement = ( – Maslow