JUnitレポートを見てください。JUnitはすでにパッケージ別に編成されています。各パッケージにはTestSuiteクラスがあり(または持つことができます)、それぞれが複数のTestCaseを実行します。各TestCaseは、フォームの複数のテストメソッドを持つことができますpublic void test*()
実際には、それらが属するTestCaseクラスのインスタンスになります。各テストメソッド(TestCaseインスタンス)には、名前と合否基準があります。
私の管理に必要なのは、それぞれが独自の合格/不合格基準を報告する個別のTestStep項目の概念です。テストステップの失敗は、後続のテストステップの実行を妨げてはなりません。
以前は、私の立場のテスト開発者は、TestCaseクラスをテスト対象の製品のパーツに対応するパッケージに編成し、各テスト用のTestCaseクラスを作成し、各テストメソッドをテストの個別の「ステップ」にしました。 JUnit出力に独自の合否基準を設定します。各TestCaseはスタンドアロンの「テスト」ですが、TestCase内の個々のメソッドまたはテスト「ステップ」は、特定の順序で実行する必要があります。
TestCaseメソッドはTestCaseのステップであり、テスト設計者はテストステップごとに個別の合否基準を取得しました。これでテストステップが乱雑になり、テストは(もちろん)失敗します。
例えば:
Class testStateChanges extends TestCase
public void testCreateObjectPlacesTheObjectInStateA()
public void testTransitionToStateBAndValidateStateB()
public void testTransitionToStateCAndValidateStateC()
public void testTryToDeleteObjectinStateCAndValidateObjectStillExists()
public void testTransitionToStateAAndValidateStateA()
public void testDeleteObjectInStateAAndObjectDoesNotExist()
public void cleanupIfAnythingWentWrong()
各テストメソッドは、独自の個別の合否基準をアサートおよびレポートします。順序付けのためにこれを「1つの大きなテストメソッド」にまとめると、JUnitサマリーレポートの各「ステップ」の合格/不合格基準の粒度が失われます。...そしてそれは私のマネージャーを混乱させます。彼らは現在、別の選択肢を求めています。
上記で例示され、私の管理者が必要とするように、スクランブルされたテストメソッドの順序を持つJUnitが各順次テストステップの個別の合格/不合格基準をどのようにサポートするかを誰かが説明できますか?
ドキュメントに関係なく、私はこれをJUnitフレームワークの深刻な退行とみなし、多くのテスト開発者の生活を困難にしています。