2017-06-09 1 views
1

Je fais mes premiers pas pour les tests unitaires. J'utilise MVVM et je peux tester à peu près tout avec un test unitaire (pas un test ui). Le problème est que dans la couverture mes classes de contrôleur apparaissent et qui affectent ma couverture. Bien sûr, je peux toujours faire des tests d'interface utilisateur pour couvrir ces cours, mais je ne veux pas. Est-il possible d'ignorer de la couverture toutes les classes import UIKit?Ignorer Afficher les contrôleurs de la couverture XCTest

+0

Je recommande les tests unitaires All The Things, y compris les contrôleurs de vue. Si j'étais dans votre équipe, je voudrais au moins pouvoir voir votre manque de couverture sur les contrôleurs de vue. Que vous les testiez ou non, ne cachez pas la vérité. –

+0

Il n'est pas prévu de les cacher. Mais je sais que mes contrôleurs n'ont rien d'autre que les appels ViewModel. Je peux toujours les tester en utilisant des tests d'interface utilisateur. –

+0

Ah, très bien. Qu'en est-il des tests de clichés de vue, pour confirmer que la mise en page n'a pas changé? (Ceux-ci n'ont pas à être au niveau du contrôleur de vue, mais le sont souvent.) –

Répondre

0

Ce n'est pas (encore) possible.

Mais la couverture de code n'est pas une métrique utile. Vous pouvez augmenter la couverture sans améliorer votre suite de tests. Vous devriez ignorer ce nombre. Rédigez des tests jusqu'à ce que vous soyez sûr qu'un test sur lequel passent tous les tests signifie que l'application fonctionne.

Vous pouvez également écrire des tests pour vos contrôleurs de vue.

+0

Qu'est-ce qu'une bonne métrique? –

+0

Une autre question: Quelle est la métrique du bon code? Si vous en avez un, peut-être que cela correspond également au code de test. Je n'ai pas une telle mesure. Pas pour le code. Pas pour le code de test. – dasdom