[发明专利]一种软件代码自动测试方法及测试系统在审
申请号: | 201811595014.7 | 申请日: | 2018-12-25 |
公开(公告)号: | CN109408400A | 公开(公告)日: | 2019-03-01 |
发明(设计)人: | 周飞 | 申请(专利权)人: | 欧普照明股份有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 201203 上海市浦*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 日志 存储模块 软件代码 自动测试 基线 测试运行模块 测试系统 判断模块 打印 读取 输出测试结果 自动测试系统 比对结果 单个模块 接收软件 开发效率 人力成本 统一格式 运行模块 智能产品 比对 存储 测试 语言 保证 | ||
本发明提供一种软件代码自动测试系统,其特征在于,包括:测试运行模块,所述运行模块接收软件代码,运行所述软件代码,并生成运行日志;存储模块,所述存储模块存储有基线日志;判断模块,所述判断模块接收来自所述测试运行模块的所述运行日志,并读取所述存储模块中的所述基线日志,比对所述运行日志和基线日志根据比对结果输出测试结果。本发明所提供的测试系统及测试方法通过统一格式的日志,可以实现跨语言、跨功能模块,从单个模块到整个系统范围做自动测试,只需要改动代码的时候同时改动打印的日志即可,甚至有时候不需要改动打印的日志。这种自动测试方法及系统很大程度上节省了时间和人力成本,从而保证了智能产品的开发效率。
技术领域
本发明涉及一种软件代码自动测试方法及测试系统。
背景技术
随着智能照明市场的火爆,智能照明产品被要求推出市场的速度也越来越快。这种速度的要求在人力和时间资源很难短期改变的情况下,对智能照明产品的质量保证带来了很大的影响。
现有的自动化测试方法一般有两类:
1)单元自动化测试框架:利用如Junit这样的单元自动测试框架,但是每种语言都有自己适合的实现,如适用于Java编程语言的Junit、适用于C编程语言的CUnit,不能做到跨语言做自动化测试。而且这类框架只能局限在功能模块,不能做到跨功能模块做自动化测试。
2)回归自动化测试工具:利用如QTP这样的回归自动测试工具,这类工具一般需要先录制一遍用户界面操作流程,然后利用录制的脚本模拟用户界面流程的操作达到自动化测试目的。该方法强烈依赖界面元素和操作流程的稳定性,任何一个改动都需要相应的自动化测试代码进行改动,需要编写大量的自动化测试代码。
发明内容
本发明的目的是为了解决上述问题,本申请提供一种可以节省花在测试产品的人力和时间成本的软件代码自动测试方法及测试系统。
本发明为实现上述功能,所采用的技术方案是提供一种软件代码自动测试方法,其特征在于,包括以下步骤:
步骤A 软件代码提交;
步骤B 检测到所述软件代码提交,自动开始测试,运行所述软件代码,并生成运行日志;
步骤C 将所述运行日志和基线日志进行比较,如一致判断测试通过,不一致则判断测试未通过;
步骤D 反馈测试结果。
进一步的,所述运行日志和所述基线日志以相同的预设格式编写。
进一步的,所述基线日志是由基线版本软件代码运行获得的运行日志。
进一步的,所述软件代码或所述基线版本软件代码运行时,各项操作分别形成日志记录,所述运行日志和所述基线日志由日志收集模块收集所述日志记录按时序整理后生成。
进一步的,所述步骤A中所述软件代码提交到GitLab代码库,所述GitLab代码库安装有Jenkins插件,所述步骤B为所述GitLab代码库一旦检测到所述软件代码提交,自动执行Jenkins的任务,所述Jenkins任务向软件执行单元发送运行指令实现自动化测试的测试功能,并生成所述运行日志。
进一步的,所述步骤C之前还包括判断步骤,判断本次生成的所述运行日志是否为基线日志,如果判断结果为是,则保存所述运行日志为所述基线日志,如果判断结果为否,则不作操作继续进行步骤C。
本申请还提供一种软件代码自动测试系统,其特征在于,包括:
测试运行模块 所述运行模块接收软件代码,运行所述软件代码,并生成运行日志;
存储模块 所述存储模块存储有基线日志;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于欧普照明股份有限公司,未经欧普照明股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811595014.7/2.html,转载请声明来源钻瓜专利网。