3

私は通常、クラスごとに単体テストを行いますが、これは問題ありません。しかし、Pythonをいじった後、他の言語、メタクラス、内部クラスではこれまで遭遇したことのない問題に遭遇しました。

内部クラスとメタクラスを含むクラスがあるとしましょう。この状況で単体テストを構成するための最良の方法は何ですか?

1つの方法は、3つすべてが非常に緊密に結合されているため、1つのテストモジュールですべてをテストすることです。しかし、これは私には間違っているようです。しかし、メタクラスを単独で単体テストし、そのメタクラスを使用するテスト内にダミークラスを作成するにはどうすればよいですか?

あなたの考えはstackoverflowしてください!

4

1 に答える 1

3

クラスをインスタンス化してテストします。あなたが言及した「ダミークラス」はメタクラスのインスタンスになるので、まさにそれをテストする必要があります。

内部クラス/外部クラスのテストに関しては、はい、外部クラスのテストに内部クラスのテストを含めます。内側のクラスを外側のクラスから独立してテストすることが理にかなっているのなら、なぜそれは内側のクラスなのですか?内部クラスは、外部クラスのスコープでのみ意味をなす必要があります。個別にテストする場合、とにかく外部クラスの環境を模倣する必要があります。

于 2011-08-07T08:10:16.540 に答える