GWTTestCase会话不再有效?

时间:2014-12-17 21:41:08

标签: gwt gwttestcase

我们使用GWTTestCase进行了许多单元测试,其结构为:

1)提出登录请求。

2)在响应处理程序中,进行需要登录的第二次调用。

这一切都工作正常,但从2.5.1升级到2.7.0后,测试失败,需要登录'错误。似乎问题是会话之间不再存在会话(丢失或未连接)。特别是,我们已经验证登录呼叫是否有效,正确设置会话。

另一项测试更新了本地化选择的会话数据,但同样的模式也失败了。

简化的代码段:

userService.login("user", "password", new AsyncFail<DatumResponse<User>>() {
        @Override
        public void onSuccess(DatumResponse<User> result) {
            final int userId = 1053;
            final int userDocId = 44;
            authService.isAuthorized(userId, OPERATION_READ, userDocId,
                  new AsyncFail<AuthorizationResponse>() {
                @Override
                public void onSuccess(AuthorizationResponse result) {
                    assertFalse("Unexpected error.", result.isError());
                }
            }
        }
}

我们能够通过在测试套件中添加以下内容来解决这个问题:

SecurityContextHolder.setStrategyName(SecurityContextHolder.MODE_GLOBAL);

这可能表明它与线程有关吗?

据我所知,GWTTestCase通常不再是测试的首选方法;这是一个现有的测试体。 &#34;使用Selenium&#34;或其他建议并没有多大帮助。

0 个答案:

没有答案