2
有人在這裏使用GWT SyncProxy的經驗嗎?
我嘗試測試異步rpc,但onFailure和onSuccess下的代碼未經測試。不幸的是,沒有錯誤日誌,但也許有人可以幫助我。這個例子是從這個頁面:http://code.google.com/p/gwt-syncproxy/測試異步rpc
編輯:
我想測試結果失敗。所以我加了'assertNull(result);'。奇怪的是,控制檯首先給出'異步好',然後'異步壞'。所以該功能運行兩次?!而Junit的結果是綠色的。
public class Greeet extends TestCase {
@Test
public void testGreetingServiceAsync() throws Exception {
GreetingServiceAsync rpcServiceAsync = (GreetingServiceAsync) SyncProxy.newProxyInstance(
GreetingServiceAsync.class,
"http://127.0.0.1:8888/greettest/", "greet");
rpcServiceAsync.greetServer("SyncProxy", new AsyncCallback<String>() {
public void onFailure(Throwable caught) {
System.out.println("Async bad ");
}
public void onSuccess(String result) {
System.out.println("Async good ");
assertNull(result);
}
});
Thread.sleep(100); // configure a sleep time similar to the time spend by the request
}
}
謝謝。但是我已經更新了我的問題,因爲我還有一個奇怪的問題。 – user1701135
是否有任何理由做異步測試?如果你是單元測試你的服務,它應該足以使用異步方法。 –
異步代理實現不會在成功調用期間拋出失敗,因此您必須維護一個標誌以查看測試是否失敗。我更新了我的例子。 –