0

リンクページFooPageを作成したので、誰かがこのリンクをクリックすると、一部のテキスト"test test"がユーザーに表示されます。

次の基本ページを作成しました。

FooPage.java

public class FooPage extends WebPage {
public FooPage() {
    add(new Label("label", "test test"));
        }   }

FooPage.html

<div wicket:id="label"></div>

MyPnel.javaで、作成したページを次のように追加します。

MyPanel.java

   public class MyPanel extends Panel{
add(new  BookmarkablePageLink<Void>("foobar", FooPage.class));
}

MyPanel.html:

<a wicket:id="foobar" href="FooPage"></a>

作成したコンポーネントをjunitで次のようにテストすると、次のようになります。

 @Test
 public void startPage() {
  wicketTester.assertComponent("foobar", FooPage.class);
}

次のエラーが発生します。

junit.framework.AssertionFailedError:コンポーネント'BookmarkablePageLink'はtype:FooPageではありません

これを解決するための問題またはホットなものは何ですか?

4

2 に答える 2

2

やってはいけない

wicketTester.assertComponent("foobar", BookmarkablePageLink.class);

代わりに(ID「foobar」のコンポーネントはタイプであるためBookmarkablePageLink)?

于 2012-11-21T15:21:55.470 に答える
2

Ianがすでに述べassertComponentたように、コンポーネントのタイプがクラスのサブタイプであることを確認します。ユースケースには、

wicketTester.assertBookmarkablePageLink("foobar", FooPage.class, new PageParameters());
于 2012-11-21T16:33:50.650 に答える