最初のテストが失敗したとしても、TestCase 内のすべてのアサーション テストが実際にテストされることを望みます。私の状況では、すべてのアサーションは同じ性質のものです。
実際、私はPythonオブジェクトとして書かれた式を評価するものを持っています(文字列として書かれた式を計算してeval
ください)。私は次のようなことをしたいと思います:
class MyTest(TestCase):
def test_something(self):
for id in ids:
for expression in get_formulas(id):
for variable in extract_variables(expression):
self.assertIn(variable, list_of_all_variables)
=> !variable
にないすべての を表示したいlist_of_all_variables
これは、いわゆる数式をすべて確認し、エラーを修正できるようにするために必要です。
もう少しコンテキスト:
1 つのアプリで (バージョン管理されたデータ ファイルに書き込まれた ID のリストに応じて) さまざまな数のテストを実行しています。
可変数の TestCase インスタンスを作成するために、基本クラス (mixin) を作成し、3-argstype
関数を使用してその場でクラスを作成しました (つまり、クラスを作成します)。
このように、さまざまな IDn
に対応するテストがあります。n
これは最初のステップですが、私が望んでいるのは、これらのテストのすべてのアサーションがテストされ、対応するアサーション エラーが出力されることです。