我已經寫了GWTTestCase這樣以後不叫:GWT RPC回調調用GWTTestCase
public void testClickButton() {
SampleView view = new SampleView();
RootPanel.get().add(view);
view.textBox.setText("Saeed Zarinfam");
assertEquals("", view.label.getText());
// ButtonElement.as(view.button.getElement()).click();
view.button.getElement().<ButtonElement>cast().click();
assertEquals("Bean \"OCTO\" has been created", view.label.getText());
}
當我運行這個測試將它連接到我的servlet(我加在我的servlet一些日誌),但RPC回調並不在我的SampleView
打電話,說的JUnit:
expected: <Bean "OCTO" has been created>, actual: <>
這是我在按鈕單擊處理程序回調:
@UiHandler("button")
void onClick(ClickEvent e) {
labelTest.setText("click button");
AsyncCallback<FooBean> callback = new AsyncCallback<FooBean>() {
public void onFailure(Throwable caught) {
// Show the RPC error message to the user
labelTest.setText("call fail");
label.setText("Failure : " + caught.getMessage());
}
public void onSuccess(FooBean result) {
labelTest.setText("call success");
label.setText("Bean \"" + result.getName() + "\" has been created");
}
};
// Make the call. Control flow will continue immediately and later
// 'callback' will be invoked when the RPC completes.
service.createBean("OCTO", callback);
}
爲什麼在這種情況下GWT rpc回調不會調用?
牛逼漢克·托馬斯,我有一個問題,我已經測試GWT測試-utils有關的LIB我的情況,它與GWT RPC不錯,但我的GWT工作UI是複雜的,它不能解析我的* .ui.xml文件,然後我選擇GWTTestCase,我選擇正確的方式? –
我發現gwt-test-utils的方式太冒險了。對於端到端測試,我想我寧願使用Selenium(或類似的方法),並且僅使用GWTTestCase /主要用於單元測試(小部件或其他基於JSNI的東西)。但實際上,我在測試應用程序方面相當不利(在測試libs/API方面效果更好)。 –