我有需要测试的REST Web服务。我使用Mockito模拟DAO类和RestAssured通过URI测试REST方法。有没有办法测试REST服务而不用Tomcat单独运行它?或者如何在测试用例之前使用模拟类在Tomcat上运行应用程序?
答案 0 :(得分:3)
有一个教程向您展示如何使用maven启动嵌入式tomcat实例并使用RestAssured对您的服务运行测试:
https://jersey.github.io/documentation/latest/test-framework.html
你在一个shell中启动tomcat并在另一个shell中运行你的测试。
但是,我强烈建议使用透明度旋转嵌入式容器的平针织测试框架。在这种情况下,您根本不会使用RestAssured,而是使用泽西测试客户端。您的测试运行速度更快,操作更少。这里有详细记录:{{3}}。本教程还演示了这种方法,尽管我认为客户端没有正确构建。
在过去,我还通过直接调用实现类方法来测试REST资源。虽然这不会测试http查询参数/ body到java方法参数的正确映射,但这通常就足够了(特别是在我编写客户端代码时)。