クライアント側のGWTコードをGWTTestCaseなしでテストできますか?私はどこかで聞いたことがあります(Google IO 2009の会議の1つだと思います)、DOMを使ってJavascriptではなく、JVMで偽のDOMでコードをテストしています。それは素晴らしいだろう。このことのポイントは、スピード(大きさのオーダー)を得ることであろう。誰にどのようにこれを行うにはどのようなアイデアがありますか?スタックオーバーフローに関する私の最初の質問は、私はこの権利をやっていることを願っています。おかげさまで Eugen。 GWTTestCaseとDOMを使用しないGWTテスト
1
A
答えて
3
あなたはRay RyanによってGoogle I/O sessionをチェックアウトする必要があります。
基本的に、モデル/ビュー/プレゼンターパターンを使用して、すべてのDOMアクセスコードを「表示」部分に抽象化することができます。これを行うことで、モックビューを作成し、ブラウザやDOMを必要とせずにjvm経由で実行する標準のjunitテストを使用してモデル/プレゼンターをテストすることができます。
2
あなたが探しているものではありませんが、 Model-View-Presenterパターンを使用する必要があります。 DOMを必要とするすべてのコードは、Viewクラスに入る必要があり、可能な限りダムでなければなりません。複雑なロジックがPresenterクラスに入ります。 GWTTestCaseを使用せずにプレゼンタークラスをテストすることができます。
例えば、ビューのような方法があるかもしれません:
void setResponseText(String text);
、その後のようなものを見ることができますあなたのプレゼンターのテストケース:
void testSayHi() {
expect(mockView.setResponseText("hi there"));
replayMocks();
presenter.sayHi();
verifyMocks();
}
関連する問題
まだ存在します**ビューの一部**コード実装がテストされる必要があります。たとえば、ユーザーが値を入力すると、後でその値がプレゼンターに表示されます。同じ値がプレゼンターにプッシュ/プルされます。 –