The invention relates to a method and system for generating interface test report based on Java. The methods include: S1, for interface definition class annotation @TestInterface, for single test case definition method annotation @TestMethod, @TestInterface and @TestMethod, including several parameters reflecting test report information; S2, adding @TestInterface and @TestMethod to test case, obtaining the currently executed test case @TestMethod and its location before executing test case. Test class @TestInterface, parse @TestInterface and @TestMethod to get its parameters reflecting test report information and store them in the cache; S3, execute test cases, store test results in the cache; S4, generate test reports according to the information in the cache. The system includes annotation adding module, annotation application module, test case execution module and test report generation module. The invention separates test report information from test cases into annotations to separate test report logic from test script logic.
【技术实现步骤摘要】
一种基于Java的接口测试报告生成方法及系统
本专利技术涉及软件接口测试领域,尤其涉及一种基于Java的接口测试报告生成方法及系统。
技术介绍
在IT的范畴内,接口的概念主要是子系统间交互并相互作用的部分。软件接口从形式上来看各种应用程序的API,硬件的驱动程序,数据库系统的访问接口,httprest接口。虽然接口的形式各有不同,但是从测试角度来说,需要测试的内容大致是相同的。接口测试属于功能测试,也可以看做是需要了解部分代码的灰盒测试。测试流程是:1.根据接口文档编写测试用例(用例编写方法完全可以按照黑盒测试的用例编写规则来编写,如:边界值、正交表等等设计方法);2.执行测试,查看接口返回的接口数据是否正确,主要检查返回的接口是否和接口文档中定义的一样。同时,接口测试相对容易实现自动化持续集成,且相对UI自动化也比较稳定,可以减少人工回归测试人力成本与时间,缩短测试周期,具有很高的收益付出比。接口测试报告对自动化持续集成具有重要意义,测试报告是对测试过程和结果的直观反馈,测试报告体现了接口测试覆盖率、接口通过率等信息,对体现接口的鲁棒性和测试用例持续更新具有指导意义。接口测试报告常见指标包括接口覆盖率、接口成功率、接口覆盖深度、接口测试用例详情等,目前常见的生成测试报告的方案包括以下两种:方案一,通过在测试框架中集成代码覆盖率工具,通过生成的代码覆盖率计算接口覆盖率。代码覆盖率是为了统计被测程序的逻辑分支代码的执行情况,即被执行代码逻辑相对所有代码的比例。通过在junit4中集成jacoco工具获取代码覆盖率报告,再根据代码覆盖率计算接口覆盖率。例如有A ...
【技术保护点】
1.一种基于Java的接口测试报告生成方法,其特征在于,包括:S1,针对接口定义类注解@TestInterface,针对单个测试用例定义方法注解@TestMethod,@TestInterface和@TestMethod包括反映测试报告信息的若干参数;S2,将@TestInterface和@TestMethod添加到测试用例,在执行测试用例之前获取当前执行的测试用例@TestMethod以及其所处测试类的@TestInterface,解析@TestInterface和@TestMethod获取其反映测试报告信息的参数存入缓存;S3,执行测试用例,将测试结果存入缓存;S4,根据缓存中的信息生成测试报告。
【技术特征摘要】
1.一种基于Java的接口测试报告生成方法,其特征在于,包括:S1,针对接口定义类注解@TestInterface,针对单个测试用例定义方法注解@TestMethod,@TestInterface和@TestMethod包括反映测试报告信息的若干参数;S2,将@TestInterface和@TestMethod添加到测试用例,在执行测试用例之前获取当前执行的测试用例@TestMethod以及其所处测试类的@TestInterface,解析@TestInterface和@TestMethod获取其反映测试报告信息的参数存入缓存;S3,执行测试用例,将测试结果存入缓存;S4,根据缓存中的信息生成测试报告。2.根据权利要求1所述的一种基于Java的接口测试报告生成方法,其特征在于,所述S2包括:将@TestInterface和@TestMethod添加到测试用例;利用Junit4的@Rule注解功能,定义MyRule实现MethodRule接口;定义MyRule的apply()方法,apply()方法包含参数Description,Description包含当前测试用例和测试类的信息,apply()方法执行从Description中获取当前执行的测试用例@TestMethod注解以及其所处测试类的@TestInterface。在测试用例类中声明MyRule,这样在每个测试用例执行之前,Junit4会自动执行MyRule的apply()方法。3.根据权利要求1所述的一种基于Java的接口测试报告生成方法,其特征在于,所述S3包括,增加一个Java基类BaseTest,BaseTest封装断言方法,在断言方法中将测试结果存入缓存;利用Junit4的@Rule注解...
【专利技术属性】
技术研发人员:夏文娟,
申请(专利权)人:挖财网络技术有限公司,
类型:发明
国别省市:浙江,33
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。