1
我無法兩次發送wickettester表單並驗證第一次給出的錯誤消息在第二次提交時被刪除。Wickettester對兩份提交的表格相同
在下面給出的代碼中,我首先提交一個空的表單,它提供了一個錯誤信息。 然後,我想提交相同的表單,但輸入的是有效的信息,並斷言從第一個出發的錯誤消息現在已被刪除。
該測試似乎正常運行,但是當我更改測試下的Java代碼,以便它不會在提交搜索時正確刪除錯誤消息,第二次測試仍然斷言沒有錯誤消息......第二次提交的測試似乎是從第一次提交的同一位置開始的,因此第一次提交併未參與我的測試。
@Test
public void assertThatErrorMessagesAreRemoved() {
PageParameters pp = new PageParameters();
// given
WicetTester tester = new WicketTester(new MyApplication());
tester.startComponentInPage(new MyPanel("myPanel", pp));
//when
FormTester form = tester.newFormTester("panel:formcontainer:form");
form.submit();
// then
tester.assertErrorMessages("searchTerm.Required_value");
//and given
form = tester.newFormTester("panel:formcontainer:form");
form.setValue("searchTerm", "a");
//when
form.submit();
// then
tester.assertNoErrorMessage();
}
它檢票6. – staffang 2013-02-18 10:46:57
下運行我找到了解決我的問題由我自己:) 的問題是,我沒有添加FeedbackPanel關於ajax回報目標,'target.add(feedbackpanel);'。我在第二次提交後看到的錯誤未在響應中發送,WicketTester未找到它。但是由於我沒有在Ajax調用的目標上添加FeedbackPanel,所以html沒有被重新渲染,並且錯誤仍然可見。 – staffang 2013-02-18 13:30:23