0

セットアップ機能のロード中に各テストケースが必要であり、「x」の異なる値を宣言する必要があります。setUp 関数で達成できる方法はありますか。以下にサンプルコードを記載します。以下のsetUp関数でPSEUDO CODEを変更する方法は?

import random
import unittest

class TestSequenceFunctions(unittest.TestCase):

    def setUp(self):

        # ***PSEUDO CODE***
        x = 10 # if test_shuffle uses setUp()
        x = 20 # if test_choice uses setUp()
        x = 30 # if test_sample uses setUp()
        # ***PSEUDO CODE***

    def test_shuffle(self):
        #test_shuffle

    def test_choice(self):
        #test_choice

    def test_sample(self):
        #test_choice

if __name__ == '__main__':
    unittest.main()

各テストケースを別々のファイルに書くことで達成できますが、ファイルの数が大幅に増加します。

4

2 に答える 2

1

1 つの unittest ファイルは、すべてが同様の機能をカバーするテストをテーマ別にキャプチャします。セットアップは、その機能をテスト可能な状態にするために使用されます。

X の割り当てを実際のテスト メソッドに移動します (すべてのテストで実際に X を使用する場合は、セットアップで X = 0 を保持します)。テストを正確に読むと、何が起こっているのか、どのようにテストされているのかがより明確になります。テストの前提条件に複雑さを導入しているため、setup 関数内でのテストの動作に影響を与える条件付きロジックを使用しないでください。つまり、エラーが発生する可能性がはるかに大きくなります。

于 2014-12-02T13:40:16.477 に答える