REST API中的单元测试(Java + Play框架)

时间:2018-06-22 15:40:14

标签: java unit-testing junit playframework

我有一个带有Java和play框架的REST api,我正在尝试对我的控制器和服务方法进行单元测试,但是我找不到执行该操作的方法。

控制器方法示例:

@Transactional(readOnly = true)
public Result findSomething(Optional<Integer> code) {
    List<Something> listSomething = SomethingService.find(code);
    return ok(Json.toJson(listSomething));
}

服务方法示例:

 public static List<Something> find(Optional<Integer> code) { 
    //DB stuff
    return JPA.em().createQuery(query).getResultList();
    }

当我尝试执行https://www.playframework.com/documentation/2.6.x/JavaTest中所解释的单元测试时,或者在另一个网络示例中,它都可以返回此异常:

  

java.lang.RuntimeException:没有EntityManager绑定到此线程。尝试将此调用包装在JPAApi.withTransaction中,或确保在此线程上设置了HTTP上下文

有人知道怎么做吗?

谢谢

0 个答案:

没有答案