2016-05-16 61 views
2

将代码覆盖率作为一个概念并且通常驱使我们的代码拥有70%以上的行覆盖率后,管理层现在对REST API覆盖范围感兴趣。如何从Java单元测试中捕获或执行REST API覆盖?

我们目前正在使用RAML确定我们的JAX-RS的REST资源,并使用代码生成来构建JAX-RS车型和接口实验。显然,RAML可以定义哪些方法应该可用的资源集合,指示哪些MIME类型可以被接受和生成,哪些状态代码是对任何给定调用的可接受的响应。

是否有,我可以用它来追踪一组单元测试,并确保所有可用资源都被行使,已生成的所有状态代码等任何工具或测试框架?

不能确定它是否是更好地熬下来的数量和跟踪与阈值/随着时间的推移;或者覆盖不完整时是否记录单元测试失败。很高兴现在考虑这两种解决方案!

回答

0

我不知道具体的工具,它会做到这一点的。如果没有可用的,我建议只测量生成的代码的代码覆盖率。通过寻找低于平均覆盖率的资源实现类(即使在经过良好测试的生成类中存在未覆盖的代码),可能很容易找到未经测试的资源。

我怀疑你可以通过这种方法为每个资源实现“状态代码覆盖率”,因为任何合理的API实现都会以一种通用的方式在一个地方实现一些错误状态,但是也可能你并不需要如果你覆盖了所有生成的代码。