2011-09-04 1 views

Répondre

4

La logique de test et les tests ne doivent jamais faire partie du code de "production" (production pouvant être utilisée par vous, remise au client, etc.). Donc, c'est une mauvaise idée de les avoir n'importe où dans votre script.

Idéalement, les avoir dans des fichiers séparés.

+1

Pourquoi ???????????? –

+0

Veuillez justifier. –

+0

Je suis un nouveau programmeur et je trouve cette question non informative – RodericDay

0

Je suppose que non, en fait, j'ai vu beaucoup de scripts python (principalement des plugins d'une autre application) écrits de cette façon.

3

La meilleure pratique consiste à placer les tests dans des unités distinctes utilisant le module unittest. Cette séparation vous permet de garder le code principal propre (pas besoin de beaucoup de fonctions d'aide au test) et vous encourage à écrire de bons tests complets puisque vous n'êtes pas inhibé par l'encombrement du code principal.

5

Cela dépend vraiment de votre code et des objectifs de votre script. Pour les projets importants et complexes, vous devez certainement mettre tous vos tests dans un endroit séparé. Mais en travaillant sur quelque chose de petit, il peut être une bonne solution d'avoir des tests avec du code - c'est l'idée principale de doctest (c'est un excellent module Python qui vous permet d'écrire des tests dans les docstrings). Dans ce cas, votre if __name__ == '__main__' ressemblera:

if __name__ == "__main__": 
    import doctest 
    doctest.testmod() 

Je trouve agréable et propre.

Questions connexes