コンストラクターでいくつかのパラメーターを受け取るいくつかのパネルを含むページを取得しました。それらの1つは、メニュー内のさまざまなボタンのリストを取得するメニューです。
コンポーネントとしてテストしようとしましたが、nullポインタ例外が発生します。ダミーページを使用して、ダミーページにパネルを作成すると機能します。このアプローチでは、テストに多くの新しいコードが導入され、エラーが発生する可能性が高くなるため、完全に満足しているわけではありません。
コンストラクターで引数を取るパネルをテストするより良い方法はありますか?
確かに:nullポインタエラーを与えるコード:
public void testVisitPanel(){
VisitPanel v = new VisitPanel("visitPanel");
tester.startComponent(v);
tester.assertContains("DATE");
}
パネル
public VisitPanel(String id) {
super(id);
add( new Label("visitDate", "DATE"));
add( new Label("visitStage", "VISIT SIGNED"));
}
そしてhtml
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html
xmlns="http://www.w3.org/1999/xhtml"
xmlns:wicket="http://wicket.sourceforge.net/"
xml:lang="en"
lang="en">
<wicket:head>
</wicket:head>
<body>
<wicket:panel>
<span wicket:id="visitDate">VISIT DATE</span>
<span wicket:id="visitStage">STAGE</span>
</wicket:panel>
</body>
</html>