2013-09-24 27 views
8

テストを書くときには通常、接頭辞モジュールtest_の名前をspam.pytest_spam.pyとします。これにより、テストを簡単に見つけることができます。モジュールのクラスをテストするときには、Testを後に付けて同様のクラス名のunittest.TestCase派生形を作成します。例えばSpamSpamTestになります(これはSpamのテスト実装のように聞こえませんのでTestSpamではありません)。次に、クラス関数は、接頭辞がtest_で、接尾辞が_testconditionであるテスト関数または他の記述的な接尾辞によってテストされます。私は、元のオブジェクト名が含まれているので、これがすばらしく機能することがわかります。モジュール関数のPythonユニットテスト命名規則

モジュールレベルの機能をテストするときに問題が発生します。私の通常の構造に続いて、Testを後置した関数と同じ名前のunittest.TestCase派生を作成します。この問題は、クラス名がラクダ文字で、関数名が下線で囲まれて単語を区切っていることです。命名規則を無視すると、some_functionSomeFunctionTestになります。私は助けることができないが、これは醜いと感じている。

どのような適合が良いでしょうか?一般的なプラクティスは何ですか?これにはpep8のような「標準」がありますか?あなたは何を使うのですか?

+0

正直?私はそれが重要だとは言えません。ただ一貫している。 – Veedrac

答えて

3

あなたがやっていることは、最もクリーンなアプローチです。人々がモジュールレベルの機能のテストを見つけようとする明確な場所がある限り、あなたは良いと思います。関数名とテストクラス名の間の文体的な違いは、煩わしいものの、心配するほど重要ではありません。