是否可以为我使用 Volley 进行网络请求的 android 应用程序编写单元测试。例如。我想为登录功能编写一个单元测试,在该功能中我发布一个带有用户凭据的 volley 请求,并在响应中检查有效的用户对象。有没有人做过类似的事情?请提供示例或参考。
这是我的登录方法:
public void login() {
try {
JSONObject jsonRequest = new JSONObject();
String emailString = email.getText().toString();
jsonRequest.put("email", emailString);
String passwordString = password.getText().toString();
jsonRequest.put("password", passwordString);
NetworkUtil.postLogin(new Listener<User>() {
@Override
public void onResponse(User response) {
setUser(response);
onUserSuccess();
}
}, new ErrorListener("postLogin") {
@Override
public void onErrorResponse(VolleyError error) {
super.onErrorResponse(error);
onUserError(error);
}
}, jsonRequest);
} catch (Exception e) {
}
我的 postLogin 方法类似于添加一个凌空请求:
public static void postLogin(Listener<User> listener, ErrorListener errorListener,
JSONObject jsonRequest) {
VolleySingleton
.getInstance()
.getRequestQueue()
.add(new GsonRequest<User>(getUrl("login"), "user_profile", User.class, jsonRequest, Method.POST,
listener, errorListener));
}