【问题标题】:playframework 2.2 functional testplayframework 2.2 功能测试
【发布时间】:2013-09-22 10:00:32
【问题描述】:

我将 playframework(Java 版本)更新到 2.2 版。调用 Web 服务的方式发生了一些重大变化。在 2.2 之前的版本中,它们是这样调用的:

@Test
public void testInServer() {
running(testServer(3333), new Runnable() {
  public void run() {
     assertThat(
       WS.url("http://localhost:3333").get().get().getStatus()
     ).isEqualTo(OK);
  }
});
}

随着新版本的变化,访问结果的 get() 方法已被弃用。我认为新的函数调用表明超时。这是获取访问权限的正确方法吗?还有其他方法可以编写功能测试吗?超时应该多长?

感谢您的回答。

【问题讨论】:

    标签: java unit-testing playframework playframework-2.2


    【解决方案1】:

    嗯,我基本上在 play 2.2.1 上使用它的方式几乎相同

    @Test
    public void testServerOK() {
      running(testServer(3333), new Runnable() {
          public void run() {
             //Context.current.set(ctx);
             WSRequestHolder wsreqHolder = WS.url("http://localhost:3333");
             F.Promise<WS.Response> promiseOfResult = wsreqHolder.get();
             assertThat(
               promiseOfResult.get().getStatus()
             ).isEqualTo(OK);
          }
       });
    }
    

    请记住,wsreqHolder.get(); 返回 Promise

    【讨论】:

    • 顺便说一句,F.Promise.get(); 已弃用。请改用.get(long, TimeUnit).get(long)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多