2017-01-06 2 views
0

私はFormTesterで、ajaxフォームをテストするには? FormTesterで?

私は、このようなフォームをテストするにはどうすればよい
Form<Void>form=new Form<Void>("form"); 
add(form); 
name=new TextField<String>("name"); 
form.add(name); 
age=new TextField<Integer>("age"); 
form.add(age); 
submit=new AjaxButton("submit") { 
    @Override 
    protected void onSubmit(AjaxRequestTarget target, Form<?> form) { 
     result.setDefaultModelObject(s); 
     target.add(result); 
    } 
}; 
form.add(submit); 

のように見える、または別の方法でAjaxフォームを持っていますか?

答えて

1

ちょうどそれは、Ajaxリクエストシミュレートするの世話をする、FormTesterを使用します。私はFormTesterを使用することができ、実際に

formTester.submit(button); 
0

を、私は

wicketTester.executeAjaxEvent("form:submit", "click"); 

代わりの

formTester.submit(); 
行う必要があります。

また、FormTesterは、ポストパラメータに.setValue()で与えられた値を設定するため、ca n BaseWicketTester.serializeFormRequestにもこれを実行させるので、FormTesterは必要ありません。

wicketTester.getComponentFromLastRenderedPage("form:name").setDefaultModelObject("foo"); 
wicketTester.getComponentFromLastRenderedPage("form:age").setDefaultModelObject("7"); 
wicketTester.executeAjaxEvent("form:ajx", "click"); 
関連する問題