クラスに属性を設定する方法は知っていますが、ファイルに設定する方法が見つかりません..
flow = ['1','4','5','2']
def test_generator(test):
def test_parser(self):
print test
return test_parser
class API_tests(unittest.TestCase):
pass
for test in flow:
test_name = 'test_%s' % test
test = test_generator(test)
setattr(API_tests, test_name, test)
これは、動作します。
setattr() の API_tests をクラスではなくオブジェクトとしてのファイルに置き換えて、このファイルに関数 (test_generator X 4) が追加されるようにします。それらを動的に設定します。
コマンドラインで「nosetests -v」を実行すると、「4 つのテストに合格しました」と表示されると予想される結果です。
この質問は他の作品にある可能性があります:現在のファイルをオブジェクトとして取得する方法
ありがとう