0

私はJUnitを学んでいますが、assertTrue(..)を次のように使用しないでください:

anObject myObject=anObject();
myObject.assertTrue(...);

私がよく理解していない部分は、OO言語では、オブジェクトなしでこのメソッド呼び出しが突然来るところです.JUnit.assertTrue(...)を暗示しているようです.私は正しいですか?

その場合、「結果結果 = JUnitCore.runClasses(TestJunit.class);」次のようにする必要があります。

Result result = runClasses(TestJunit.class);

なぜ矛盾するのですか?何か不足していますか?

4

2 に答える 2

1

この場合assertTrueは、で定義された静的メソッドAssert.javaです。

したがって、ソースは通常import static org.junit.Assert.*;、クラスのすべての静的メソッドをAssertテスト ソース内で使用できるようにします。また、JUnit入門ガイドで行われているように、メソッドなどの単一のメソッドのみを静的にインポートすることもできassertEqualsます。静的インポートは Java 1.5 で導入されました。

OO っぽい言語は、多くの場合、オブジェクトの特定のインスタンス (たとえば、 SmalltalkScala )で動作しないメソッドを作成する方法を提供します。

于 2013-07-03T02:12:56.187 に答える