我们通过测试计划的管理接口来实现用例的执行结果上报,将之前新增并纳入测试计划的用例标注为执行通过。以下是用例,
@Order(9) @Test @DisplayName("09测试计划-执行通过") public void executeTestCaseSuccess() throws Exception { TestPlanTestCaseWithBLOBs request=new TestPlanTestCaseWithBLOBs(); request.setId(testCase.getId()); request.setStatus("Pass"); String result= doPost("/test/plan/case/edit",JSON.toJSONString(request)); assertThat(result).contains("true"); }
这样,先前的用例就执行完成了。
来看一下完整的测试用例
有读者可能注意到了@Order的注解。这是用来保证Junit按照指定的顺序来执行测试用例。如以下代码,
@TestMethodOrder(MethodOrderer.OrderAnnotation.class) @Slf4j public class Project2TestCaseLongJourneyTest extends TestApp {}
这个用例类中添加了@TestMethodOrder注解用于指定测试用例的按顺序执行,并且使用了OrderAnnotation的方式。通过在测试方法上依次加入@Order(1) ~ @Order(9),就能指定这些用例的执行顺序了,从而实现了通过若干个用例来组织形成一个测试场景的目的,并且保障了用例之间数据相互依赖的情况下,整个场景可以按照既定顺序完成执行。
最后,来简单看一下上述场景对MeterSphere后台的代码覆盖率(部分)
可以看到,对controller/service/DAO层均有覆盖。
在本次旅程中,我们实现了服务端的集成测试,主要用到的技术是,
关于更多MeterSphere的使用,可以参考https://metersphere.io/docs/user_manual/test_track/
本文分享自微信公众号 - 软件测试那些事(antony-not-available),作者:风月同天测试人
原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。
原始发表时间:2020-12-06
本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。
我来说两句