2013-12-11 14 views
14

Ho cercato PEP 8 -- Style Guide for Python Code e PEP8 -- Advanced Usage per indizi su come denominare le mie classi di test. Tuttavia, questo non è mai menzionato su entrambi i siti, così come su molti altri siti che ho visto, come ad esempio la pagina unittest nella documentazione di Python. L'unico stile coerente che vedo è "CapWords". Nella documentazione unittest hanno esempi per TestSequenceFunctions e DefaultWidgetSizeTestCase.Convenzione di denominazione PEP8 sulle classi di test

Quello che sto cercando di scoprire è se utilizzare "Nome" Test o Test "Nome". I metodi usano test_ "nome" e questo è abbastanza consolidato. Per quanto riguarda le lezioni, sto lottando per trovare una convenzione, se ce n'è una.

Apprezzerei l'aiuto del forum su questo.

risposta

9

Il documentation for unittest suggerisce, per es .:

class TestSequenceFunctions(unittest.TestCase): 

    def test_shuffle(self): 
     ... 

    def test_choice(self): 
     ... 

commentando

I tre test individuali sono definiti con metodi cui nomi iniziano con le lettere test. Questa convenzione di denominazione informa il runner di test su quali metodi rappresentano i test.

+0

Grazie. I test stessi non sono un problema perché altrimenti l'unittest non li raccoglierà. – musabaloyi

3

Django e SQLAlchemy, due grandi e popolari progetti Python, utilizzano entrambi i test "Nome". Personalmente, preferisco testare "Nome", principalmente perché quando ci sono più TestCase in un file, ognuno dei quali inizia con "Test" rende difficile la scansione.

Non dicendo che questo equivale a un consenso, solo due punti dati significativi e un'osservazione personale.

+1

Grazie. Sono d'accordo con il tuo ragionamento. – musabaloyi

Problemi correlati