モジュールレベルのデータ(JSONファイル)に依存するプログラムの単体テストを作成しようとしています。
setUpClass
クラスメソッドを使用してテストJSONファイルを設定し、テストが実行された後にそれを破棄すると考えていました。
問題は、モジュールレベルのJSONをセットアップしても、テストしようとしているプログラムの他の関数で必要とされる値が返されることです。
は、ここで私が何を意味するかの例です:unittestのsetUpClassクラスメソッドは、他のテストで使用する値を返しますか?
import unittest
import myProg
class TestProg(unittest.TestCase):
@classmethod
def setUpClass(cls):
# initialize() creates the JSON file
myProg.initialize()
f = myProg.initialize_storage()
return f
def test_prog_func(self):
myProg.prog_func("test_key", "test_value", f)
f
は私の関数の残りの部分で必要とされる項目です。 このコードは機能しません。私は、 "return f
"をテスト全体を通じて使用されるsetUpClassから許可する方法を探しています。
setUpClassメソッドの最初の引数 'cls'はクラス変数です。それを保存します。 'cls.f = f' –