2

JavaSwingGUIの回帰テストを作成するための優れたツールを探しています。jemmy2を見つけて、本当に満足しています。

ただし、小さな欠点が1つあります。jemmyの例が示すように、各テストクラスを次のように記述する必要があります。org.netbeans.jemmy.Scenarioテストコードはpublic int runIt()メソッドに送られます。私は、通常の「then-when-then」構造と意味のあるアサーションを使用して、より従来型の単体テストを行うことを好みます。jemmyをjunitやtestngのようなユニットテストフレームワークと統合したいと思っています。

だから、質問:どうすればそれを行うことができますか?JellyToolsがNetBeans固有の方法でそれを行ったため、それが可能であることを私は知っています。

または、ジェミーシナリオから意味のあるエラーレポートを取得するにはどうすればよいですか?

4

3 に答える 3

3

Jemmyは、JUnit、TestNGなどのテストハーネスで使用できます。

特別なことをする必要はありません。テストメソッドから直接JemmyAPIを使用するだけです。JUnitとTestNGを使用すると、テスト済みのアプリを実行する前に@Beforeを取得することもできます。

修羅

于 2013-04-23T11:12:30.290 に答える
1

その間、私はそれがかなり簡単であることを学びました:

@Test
public void testSomething() throws Exception {
            //GIVEN
        ClassReference cr = new ClassReference("components.TableFilterDemo");
    cr.startApplication();
    frame = new JFrameOperator("TableFilterDemo");

            //WHEN
            //doing more steps

            //THEN
            //do TestNG assertions
}

大きな違いは、この方法でテストがJemmy関連の例外をスローできることです。しかし、それらは意味のあるテストメッセージなので、問題ありません。

于 2012-12-14T09:37:01.457 に答える
1

「意味のあるエラー報告」は…。

適切なテストハーネスは、どのテストが失敗したかを示すレポートを作成します。

何が悪かったのかをもっと知りたい場合は、過剰なJemmyログから取得できます。アプリケーションレベルで意味のあるトレースを取得するには、独自のログを提供する必要があります。

修羅

于 2013-04-23T11:16:52.167 に答える