测试报告一键搞定?秦苍黑科技震撼出炉!

加班狗总是幻想给老板的报告,可以机器来写,一键完成。在秦苍科技,这样的黑科技已经不是科幻电影情节,变成了现实。

秦苍科技产品研发部高级测试工程师于国庆在QCon2017全球软件开发大会(北京站)上,分享了他和童博林、邵惠耗时半年的开发成果:《基于Docker的全自动化性能测试平台》。

测试报告一键搞定?秦苍黑科技震撼出炉!

秦苍科技产品研发部高级测试工程师于国庆参加QCon2017全球软件开发大会

测试报告一键搞定?秦苍黑科技震撼出炉!

秦苍科技产品研发部高级测试工程师于国庆在大会上《基于Docker的全自动化性能测试平台》

市面上的自动化性能测试工具林林总总,但没有一款可以完美满足已经拥有150万历史客户的秦苍科技的性能测试需要。MsTest/LR 昂贵并且配置复杂。Jmeter在实现性能测试的需求时需要安装较大量的插件,且其自动化水平也不高。

于是,公司测试团队自主研发了全自动化性能测试平台XPY,实现了部署、测试和报告生成的一键解决方案。XPY是X-Men和Spy的合称。在此之前,测试团队研发过一个名为Spy的自动化测试框架,当时的性能测试是基于Spy,使用MsTest进行的。X-Men象征着强大和维护,这与性能测试的要求和目的相符,所以为全自动化性能测试平台取名XPY。

XPY的设计准则包括一键解决方案、轻耦合、快重构、基于开源技术。传统的性能测试步骤一般是部署环境,编写代码,设计测试,执行测试并得到结果,编辑测试报告。而XPY平台上,一键便可以完成从环境部署到报告生成的所有过程。XPY平台选用了Docker与微服务技术,并结合了诸如LaTeX,Jmeter,Velocity等大量的开源技术,实现了一键实验设计到报告生成的解决方案。

平台的整体工作流程如下:

首先,测试人员通过在前端输入实验设计和配置等信息,点击提交按钮,一键触发性能测试。

接着,Controller接收前端发送的REST请求,解析输入的实验设计和配置信息,通过自身的配置管理系统将配置统一分发到各个模块。

然后,Controller通过自身的工作流调度系统,发送REST请求给Cases和Monitor模块开始性能测试和监控。

当性能测试结束后,Controller发送REST请求给Plot模块,将Cases和Monitor生成的实验监控数据绘制成图。

绘图结束之后,Controller发送REST请求给Texgen模块,调用模板引擎生成tex文件。

最后,Controller发送REST请求给Xelatex模块,调用LaTeX系统生成并输出PDF实验报告。

平台详细设计如下图所示:

测试报告一键搞定?秦苍黑科技震撼出炉!

XPY降低了性能测试前期准备的时间成本,简化了性能测试的流程,避免了性能测试过程中的重复工作。XPY具有量级轻,耦合度低,重构速度快,可用性,可维护性和可移植性高等特点,大部分模块可以单独使用,未来可以运用到更多的场景中。这标志着秦苍科技取得的又一次技术革新。

目前XPY已经通过测试并在公司的部分项目中使用,未来将继续对其进行优化与扩展。

上海秦苍信息科技有限公司(Omni Prime)以“你的梦想,我来买单”为宗旨,是国内领先的Fintech(金融科技)公司,专注为中国年轻人群提供消费分期服务。旗下现有“买单侠”和“星计划”系列产品。“买单侠”面向中国年轻蓝领用户,提供移动端消费分期服务。“星计划”为医美商户和年轻用户提供消费金融场景下的一站式解决方案。于2016年2月底完成C轮融资,历史总融资额达到8697万美金。