unittestを使用したテスト スイートを含む JSON パーサー ライブラリ ( ijson ) があります。ライブラリには、実際にはいくつかの解析実装 (「バックエンド」) が、同一の API を持つモジュールの形式で含まれています。利用可能なバックエンドごとに、テスト スイートを数回自動的に実行したいと考えています。私の目標は次のとおりです。
- バックエンドに依存しないため、すべてのテストを 1 か所に保持したいと考えています。
- テストが失敗したときに、現在使用されているバックエンドの名前が何らかの方法で表示されるようにします。
- unittest で通常許可されているように、単一の TestCase または単一のテストを実行できるようにしたいと考えています。
では、このためにテスト スイートを構成する最善の方法は何でしょうか? カスタム テスト ランナーを作成しますか? TestCases にバックエンド自体をロードさせますか? バックエンドごとに個別の TestCase クラスを命令的に生成しますか?
ところで、私は特に unittest ライブラリと結婚していません。問題が解決する場合は、別のライブラリを試してみることにオープンです。ただし、テスト コードは既に用意されているため、unittest を使用することをお勧めします。