CN106326116A - 产品测试的方法和装置 - Google Patents
产品测试的方法和装置 Download PDFInfo
- Publication number
- CN106326116A CN106326116A CN201610682292.0A CN201610682292A CN106326116A CN 106326116 A CN106326116 A CN 106326116A CN 201610682292 A CN201610682292 A CN 201610682292A CN 106326116 A CN106326116 A CN 106326116A
- Authority
- CN
- China
- Prior art keywords
- test
- code information
- change code
- focus
- product
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3688—Test management for test execution, e.g. scheduling of test suites
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明提供了一种产品测试的方法和装置,该方法包括:针对产品测试项目获取与其对应的至少一个热点变更代码信息测试用例;根据获取到的热点变更代码信息测试用例的标识信息,调用相应的热点变更代码信息测试用例脚本对产品测试项目进行测试,以获取测试结果;将产品测试项目的测试结果与产品测试项目的预期结果进行对比,并将对比结果进行输出和展示。本发明的技术方案实现了通过热点变更代码信息测试用例的脚本对产品测试项目的测试,提高了产品测试项目的测试质量,使得产品测试项目的代码稳定性也大大加强,并提高产品的质量;在保证高质量的产品的同时,以自动化方式对产品测试项目进行测试,减少了人工的时间成本和人力,具有较高的准确率。
Description
技术领域
本发明涉及软件工程领域,具体而言,本发明涉及一种产品测试的方法和装置。
背景技术
随着计算机的发展,软件也从普通的计算机软件,发展到银行或超市的终端系统软件,甚至到手机的嵌入式系统软件。但软件系统的质量和稳定性却不尽如人意,采用有效的软件测试发现软件中的程序漏洞是保证软件质量、提高软件可靠性的重要手段。
然而,软件中的程序漏洞往往是由于软件需求的不确定性、软件设计的缺陷或编程失误所造成的;即使通过人工或自动化手段对软件进行测试,由于软件测试存在一定的局限性,也无法通过软件测试发现软件系统中的所有的程序漏洞,所以如何有效地提高软件的质量是当前软件测试的重点。
发明内容
为克服上述技术问题或者至少部分地解决上述技术问题,特提出以下技术方案:
本发明的实施例提出了一种产品测试的方法,包括:
针对产品测试项目获取与其对应的至少一个热点变更代码信息测试用例;
根据获取到的热点变更代码信息测试用例的标识信息,调用相应的热点变更代码信息测试用例脚本对产品测试项目进行测试,以获取测试结果;
将产品测试项目的测试结果与产品测试项目的预期结果进行对比,并将对比结果进行输出和展示。
优选地,针对产品测试项目获取与其对应的至少一个热点变更代码信息测试用例,包括:
根据预定的匹配算法,获取产品测试项目所对应的至少一个热点变更代码信息测试用例;
将获取到的至少一个热点变更代码信息测试用例添加到测试用例集中。
优选地,通过执行所述测试用例集,来根据获取到的热点变更代码信息测试用例的标识信息,调用相应的热点变更代码信息测试用例脚本对所述产品测试项目进行测试,以获取测试结果。
优选地,该方法还包括:
针对热点变更代码信息创建热点变更代码信息测试用例和与相应的热点变更代码信息测试用例脚本。
其中,热点变更代码信息基于变更代码信息的预定的变更频率和/或变更代码信息与程序漏洞的预定的关联性在多个变更代码信息中进行提取。
优选地,该方法还包括:
根据预定的匹配算法,获取产品测试项目对应的至少一个预定的非热点代码信息测试用例;
根据获取到的热点变更代码信息测试用例的标识信息和非热点变更代码信息测试用例的标识信息,调用相应的热点变更代码信息测试用例脚本和非热点变更代码信息测试用例脚本对产品测试项目进行测试,以获取测试结果。
本发明的另一实施例提出了一种产品测试的装置,包括:
第一获取模块,用于针对产品测试项目获取与其对应的至少一个热点变更代码信息测试用例;
第一测试模块,用于根据获取到的热点变更代码信息测试用例的标识信息,调用相应的热点变更代码信息测试用例脚本对产品测试项目进行测试,以获取测试结果;
对比模块,用于将产品测试项目的测试结果与产品测试项目的预期结果进行对比,并将对比结果进行输出和展示。
优选地,第一提取模块包括:
获取单元,用于根据预定的匹配算法,获取产品测试项目所对应的至少一个热点变更代码信息测试用例;
添加单元,用于将获取到的至少一个热点变更代码信息测试用例添加到测试用例集中。
优选地,第一测试模块,用于通过执行所述测试用例集,来根据获取到的热点变更代码信息测试用例的标识信息,调用相应的热点变更代码信息测试用例脚本对所述产品测试项目进行测试,以获取测试结果。
优选地,该装置还包括:
创建模块,用于针对热点变更代码信息创建热点变更代码信息测试用例和与相应的热点变更代码信息测试用例脚本。
其中,热点变更代码信息基于变更代码信息的预定的变更频率和/或变更代码信息与程序漏洞的预定的关联性在多个变更代码信息中进行提取。
优选地,该装置还包括:
第二获取模块,用于根据预定的匹配算法,获取产品测试项目对应的至少一个预定的非热点代码信息测试用例;
第二测试模块,用于根据获取到的热点变更代码信息测试用例的标识信息和非热点变更代码信息测试用例的标识信息,调用相应的热点变更代码信息测试用例脚本和非热点变更代码信息测试用例脚本对产品测试项目进行测试,以获取测试结果。
本发明的技术方案获取到与产品测试项目对应的至少一个热点变更代码信息测试用例,从而实现了通过热点变更代码信息测试用例的脚本对产品测试项目的测试,提高了产品测试项目的测试质量,使得产品测试项目的代码稳定性也大大加强,并提高产品的质量;在保证高质量的产品的同时,实现了以自动化方式对产品测试项目进行测试,减少了人工的时间成本和人力,具有较高的准确率。
本发明附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为本发明的一个实施例的产品测试的方法的流程示意图;
图2为本发明的具体实施例的获取热点变更代码信息测试用例的流程示意图;
图3为本发明的具体实施例的通过非热点代码信息测试用例进行产品测试的流程示意图;
图4为本发明的另一个实施例的产品测试的装置的结构框架示意图;
图5为本发明的另一个实施例的实现第一获取模块的框架结构示意图;
图6为本发明的另一个实施例的实现通过非热点代码信息测试用例进行产品测试的产品测试的装置的框架结构示意图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”可以包括无线连接,或“耦接”可以包括无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。
需要说明的是,本发明的技术方案的执行主体为服务器。
图1为本发明的一个实施例的产品测试的方法的流程示意图。
步骤S101:针对产品测试项目获取与其对应的至少一个热点变更代码信息测试用例;步骤S102:根据获取到的热点变更代码信息测试用例的标识信息,调用相应的热点变更代码信息测试用例脚本对产品测试项目进行测试,以获取测试结果;步骤S103:将产品测试项目的测试结果与产品测试项目的预期结果进行对比,并将对比结果进行输出和展示。本发明的技术方案获取到与产品测试项目对应的至少一个热点变更代码信息测试用例,从而实现了通过热点变更代码信息测试用例的脚本对产品测试项目的测试,提高了产品测试项目的测试质量,使得产品测试项目的代码稳定性也大大加强,并提高产品的质量;在保证高质量的产品的同时,实现了以自动化方式对产品测试项目进行测试,减少了人工的时间成本和人力,具有较高的准确率。
以下针对各个步骤的具体实现做进一步的说明:
步骤S101:针对产品测试项目获取与其对应的至少一个热点变更代码信息测试用例。
具体地,步骤S101如图2所示,包括:步骤S201:根据预定的匹配算法,获取产品测试项目所对应的至少一个热点变更代码信息测试用例;步骤S202:将获取到的至少一个热点变更代码信息测试用例添加到测试用例集中。其中,步骤S201较为准确的选取出测试用例,来针对该产品测试项目进行测试。
其中,产品测试项目包括但不限于:软件产品的分支功能模块的测试任务、软件产品的分支功能模块的函数的测试任务、软件产品的分支功能模块的接口的测试任务。
具体地,该方法还包括:被测设备,如被测服务器,接收到软件产品的升级包,并自动进行升级;在升级过程中,对被测软件产品的测试环境进行还原并导入软件产品的升级包的配置文件,并对该测试环境,包括硬件环境和软件环境,进行检查;同时对测试环境的数据库进行初始化,将软件产品的升级包进行更新,以保证测试的顺利进行。在完成测试环境的设置和检查后,开始对软件产品的测试项目进行测试。
其中,硬件环境包括但不限于:服务器、网线、分配器。
软件环境包括但不限于:数据库、操作系统、被测软件产品的部属信息。
具体地,获取热点变更代码信息测试用例的方式包括:遍历测试用例路径下的配置文件夹,通过搜索指令,查找配置文件夹下存储的热点测试用例的文件,以获取其目录下的热点变更代码信息测试用例的文件。将获取到的热点变更代码信息测试用例的文件,通过预定的模式匹配算法进行提取符合该算法的,即需要的热点变更代码信息测试用例的文件,并根据加载指令,将符合该算法的热点变更代码信息测试用例的文件中的热点变更代码信息测试用例增加到测试用例集suite中。
步骤S102:根据热点变更代码信息测试用例的标识信息,调用相应的热点变更代码信息测试用例脚本对产品测试项目进行测试,以获取测试结果。
具体地,通过执行测试用例集,来根据获取到的热点变更代码信息测试用例的标识信息,调用相应的热点变更代码信息测试用例脚本对产品测试项目进行测试,以获取测试结果。
具体地,产品测试项目在测试引擎的测试单元中进行;其中,通过测试用例集的对象:测试执行器runner,调用测试执行过程运行平台TestRunner来驱动产品测试项目的测试过程;根据TestRunner的运行指令来启动用例测试。
将通过预定的模式匹配算法获取符合该算法的至少一个热点变更代码信息测试用例的文件,并根据加载指令,将符合该算法的热点变更代码信息测试用例的文件中的热点变更代码信息测试用例进行加载,通过运行suite中的热点变更信息测试用例,基于获取该热点变更信息测试用例的标识信息,如名称,调取该名称对应的脚本路径下的热点变更信息测试用例脚本,以对产品测试项目进行测试。例如,测试网关加解密产品软件,根据该产品软件的产品测试项目的需求,先运行其热点变更信息测试用例的配置文件,设定网关下发策略的配置;通过执行热点变更信息测试用例脚本对产品测试项目进行测试,如上传数据或下载数据的项目,进行测试。
具体地,该方法还包括:针对热点变更代码信息创建热点变更代码信息测试用例和与相应的热点变更代码信息测试用例脚本。
具体地,热点变更代码信息基于变更代码信息的预定的变更频率和/或变更代码信息与程序漏洞的预定的关联性在多个变更代码信息中进行提取。
具体地,变更代码信息的变更频率的确定方式包括:通过查看编译服务器生成的预定历史时间内的代码提交日志,统计在预定历史时间内的由编译客户端提交到编译服务器的代码数据库中的变更代码信息,来确定每个变更代码信息在该预定历史时间内的变更次数,从而确定每个变更代码信息的变更频率。将变更频率大于预定的变更频率的变更代码信息确定为热点变更代码信息。例如,通过查看由代码控制系统,如,Subversion,简称svn,搭建的编译服务器生成的一天内的代码提交日志,将该代码提交日志中记录的内容生成json格式文件进行记录,并对记录在json格式文件的内容或直接对代码提交日志的内容进行标记;根据标记结果,将具有相同标记的变更代码信息的记录数据进行合并,以统计该一天内的代码变更情况,根据统计结果确定热点变更代码信息。
具体地,变更代码信息与程序漏洞的关联度的确定方式包括:将变更代码信息与程序漏洞bug管理系统,如bugzilla,进行关联;通过程序漏洞bug管理系统的bug报告和bug处理意见,来确定变更代码信息会产生的bug与该变更代码信息的关联度,其中,该变更代码信息是由编译客户端提交到编译服务器的代码数据库中,即该变更代码信息产生的bug是否会严重影响该变更代码信息的执行,是否需要处理。将变更代码信息与程序漏洞的关联度大于预定的关联度的该变更代码信息确定为热点变更代码信息。
通过对热点变更代码信息的提取,创建了热点变更代码信息测试用例和测试脚本,提高了产品测试项目的测试质量,使得产品测试项目的代码稳定性也大大加强,并提高产品的质量。
需要说明的是:创建测试用例和测试用例对应的测试脚本是本领域较为成熟的技术,这里就不再赘述。
步骤S103:将产品测试项目的测试结果与产品测试项目的预期结果进行对比,并将对比结果进行输出和展示。
具体地,运行产品软件的配置文件,登录或直接进入到被测设备的产品软件中,将产品测试项目的测试结果与存储在产品软件的数据库中的预期结果进行对比,通过产品软件的帮助文件得到对比结果;将对比结果生成由TestRunner创建的html页面的测试报告,以记录对比结果,从而向前端展示对比结果,方便浏览。
其中,TestRunner通过将对比结果保存到html页面,以生成html页面的测试报告。
具体地,该方法如图3所示,还包括:步骤S301:根据预定的匹配算法,获取产品测试项目对应的至少一个预定的非热点代码信息测试用例;步骤S302:根据获取到的热点变更代码信息测试用例的标识信息和非热点变更代码信息测试用例的标识信息,调用相应的热点变更代码信息测试用例脚本和非热点变更代码信息测试用例脚本对产品测试项目进行测试,以获取测试结果。
步骤S301:根据预定的匹配算法,获取产品测试项目对应的至少一个预定的非热点代码信息测试用例。
具体地,获取非热点变更代码信息测试用例的方式包括:遍历测试用例路径下的配置文件夹,通过搜索指令,查找配置文件夹下存储的非热点测试用例的文件,以获取其目录下的非热点变更代码信息测试用例的文件。将获取到的非热点变更代码信息测试用例的文件,通过预定的模式匹配算法进行提取符合该算法的,即需要的非热点变更代码信息测试用例的文件,并根据加载指令,将符合该算法的非热点变更代码信息测试用例的文件中的热点变更代码信息测试用例增加到测试用例集suite中。在保证高质量的产品的同时,实现了以自动化方式对产品测试项目进行测试,减少了人工的时间成本和人力,具有较高的准确率。
步骤S302:根据获取到的热点变更代码信息测试用例的标识信息和非热点变更代码信息测试用例的标识信息,调用相应的热点变更代码信息测试用例脚本和非热点变更代码信息测试用例脚本对产品测试项目进行测试,以获取测试结果。
具体地,产品测试项目在测试引擎中进行;其中,通过测试用例集的对象:测试执行器runner,调用测试执行过程运行平台TestRunner来驱动产品测试项目的测试过程;根据TestRunner的运行指令来启动用例测试。
将通过预定的模式匹配算法获取符合该算法的至少一个热点变更代码信息测试用例的文件和至少一个非热点变更信息测试用例的文件,并根据加载指令,将符合该算法的至少一个热点变更代码信息测试用例的文件中的热点变更代码信息测试用例和至少一个非热点变更信息测试用例的文件中的非热点变更信息测试用例进行加载,通过运行suite中的热点变更信息测试用例和非热点变更信息测试用例,基于获取该热点变更信息测试用例和非热点变更信息测试用例的标识信息,如名称,调取该名称对应的脚本路径下的热点变更信息测试用例脚本和非热点变更信息测试用例脚本,以对产品测试项目进行测试。
图4为本发明的另一个实施例的产品测试的装置的结构框架示意图。
第一获取模块401,针对产品测试项目获取与其对应的至少一个热点变更代码信息测试用例;第一测试模块402,根据获取到的热点变更代码信息测试用例的标识信息,调用相应的热点变更代码信息测试用例脚本对产品测试项目进行测试,以获取测试结果;对比模块403,将产品测试项目的测试结果与产品测试项目的预期结果进行对比,并将对比结果进行输出和展示。
以下针对各个模块的具体实现做进一步的说明:
第一获取模块401,针对产品测试项目获取与其对应的至少一个热点变更代码信息测试用例。
具体地,第一提获模块401如图5所示,包括:获取单元501,根据预定的匹配算法,获取产品测试项目所对应的至少一个热点变更代码信息测试用例;添加单元502,将获取到的至少一个热点变更代码信息测试用例添加到测试用例集中。其中,添加单元502较为准确的选取出测试用例,来针对该产品测试项目进行测试。
其中,产品测试项目包括但不限于:软件产品的分支功能模块的测试任务、软件产品的分支功能模块的函数的测试任务、软件产品的分支功能模块的接口的测试任务。
具体地,该装置还包括:测试环境检查模块;被测设备,如被测服务器,接收到软件产品的升级包,并自动进行升级;在升级过程中,对被测软件产品的测试环境进行还原并导入软件产品的升级包的配置文件,并对该测试环境,包括硬件环境和软件环境,进行检查;同时对测试环境的数据库进行初始化,将软件产品的升级包进行更新,以保证测试的顺利进行。在完成测试环境的设置和检查后,开始对软件产品的测试项目进行测试。
其中,硬件环境包括但不限于:服务器、网线、分配器。
软件环境包括但不限于:数据库、操作系统、被测软件产品的部属信息。
具体地,第一获取模块401,获取热点变更代码信息测试用例的方式包括:遍历测试用例路径下的配置文件夹,通过搜索指令,查找配置文件夹下存储的热点测试用例的文件,以获取其目录下的热点变更代码信息测试用例的文件。将获取到的热点变更代码信息测试用例的文件,通过预定的模式匹配算法进行提取符合该算法的,即需要的热点变更代码信息测试用例的文件,并根据加载指令,添加单元502,将符合该算法的热点变更代码信息测试用例的文件中的热点变更代码信息测试用例增加到测试用例集suite中。
第一测试模块402,根据热点变更代码信息测试用例的标识信息,调用相应的热点变更代码信息测试用例脚本对产品测试项目进行测试,以获取测试结果。
具体地,第一测试模块402,通过执行测试用例集,来根据获取到的热点变更代码信息测试用例的标识信息,调用相应的热点变更代码信息测试用例脚本对产品测试项目进行测试,以获取测试结果。
具体地,产品测试项目在测试引擎中进行;其中,通过测试用例集的对象:测试执行器runner,调用测试执行过程运行平台TestRunner来驱动产品测试项目的测试过程;根据TestRunner的运行指令来启动用例测试。
将通过预定的模式匹配算法获取符合该算法的至少一个热点变更代码信息测试用例的文件,并根据加载指令,将符合该算法的热点变更代码信息测试用例的文件中的热点变更代码信息测试用例进行加载,通过运行suite中的热点变更信息测试用例,基于获取该热点变更信息测试用例的标识信息,如名称,调取该名称对应的脚本路径下的热点变更信息测试用例脚本,以对产品测试项目进行测试。例如,测试网关加解密产品软件,根据该产品软件的产品测试项目的需求,先运行其热点变更信息测试用例的配置文件,设定网关下发策略的配置;通过执行热点变更信息测试用例脚本对产品测试项目进行测试,如上传数据或下载数据的项目,进行测试。
具体地,该装置还包括:创建模块,针对热点变更代码信息创建热点变更代码信息测试用例和与相应的热点变更代码信息测试用例的脚本。
具体地,热点变更代码信息基于变更代码信息的预定的变更频率和/或变更代码信息与程序漏洞的预定的关联性在多个变更代码信息中进行提取。
具体地,变更代码信息的变更频率的确定方式包括:通过查看编译服务器生成的预定历史时间内的代码提交日志,统计在预定历史时间内的由编译客户端提交到编译服务器的代码数据库中的变更代码信息,来确定每个变更代码信息在该预定历史时间内的变更次数,从而确定每个变更代码信息的变更频率。将变更频率大于预定的变更频率的变更代码信息确定为热点变更代码信息。例如,通过查看由代码控制系统,如,Subversion,简称svn,搭建的编译服务器生成的一天内的代码提交日志,将该代码提交日志中记录的内容生成json格式文件进行记录,并对记录在json格式文件的内容或直接对代码提交日志的内容进行标记;根据标记结果,将具有相同标记的变更代码信息的记录数据进行合并,以统计该一天内的代码变更情况,根据统计结果确定热点变更代码信息。
具体地,变更代码信息与程序漏洞的关联度的确定方式包括:将变更代码信息与程序漏洞bug管理系统,如bugzilla,进行关联;通过程序漏洞bug管理系统的bug报告和bug处理意见,来确定变更代码信息会产生的bug与该变更代码信息的关联度,其中,该变更代码信息是由编译客户端提交到编译服务器的代码数据库中,即该变更代码信息产生的bug是否会严重影响该变更代码信息的执行,是否需要处理。将变更代码信息与程序漏洞的关联度大于预定的关联度的该变更代码信息确定为热点变更代码信息。
创建模块,通过对热点变更代码信息的提取,创建了热点变更代码信息测试用例和测试脚本,提高了产品测试项目的测试质量,使得产品测试项目的代码稳定性也大大加强,并提高产品的质量。
需要说明的是:创建测试用例和测试用例对应的测试脚本是本领域较为成熟的技术,这里就不再赘述。
对比模块403,将产品测试项目的测试结果与产品测试项目的预期结果进行对比,并将对比结果进行输出和展示。
具体地,运行产品软件的配置文件,登录或直接进入到被测设备的产品软件中,对比模块403将产品测试项目的测试结果与存储在产品软件的数据库中的预期结果进行对比,通过产品软件的帮助文件得到对比结果;将对比结果生成由TestRunner创建的html页面的测试报告,以记录对比结果,从而向前端展示对比结果。
其中,TestRunner通过将对比结果保存到html页面,以生成html页面的测试报告。
具体地,该装置如图6所示,还包括:第二获取模块601,根据预定的匹配算法,获取产品测试项目对应的至少一个预定的非热点代码信息测试用例;第二测试模块602,根据获取到的热点变更代码信息测试用例的标识信息和非热点变更代码信息测试用例的标识信息,调用相应的热点变更代码信息测试用例的脚本和非热点变更代码信息测试用例的脚本对产品测试项目进行测试,以获取测试结果。
具体地,第二获取模块601获取非热点变更代码信息测试用例的方式包括:遍历测试用例路径下的配置文件夹,通过搜索指令,查找配置文件夹下存储的非热点测试用例的文件,以获取其目录下的非热点变更代码信息测试用例的文件。将获取到的非热点变更代码信息测试用例的文件,通过预定的模式匹配算法进行提取符合该算法的,即需要的非热点变更代码信息测试用例的文件,并根据加载指令,将符合该算法的非热点变更代码信息测试用例的文件中的热点变更代码信息测试用例增加到测试用例集suite中。在保证高质量的产品的同时,实现了以自动化方式对产品测试项目进行测试,减少了人工的时间成本和人力,具有较高的准确率。
具体地,产品测试项目在测试引擎中进行;其中,通过测试用例集的对象:测试执行器runner,调用测试执行过程运行平台TestRunner来驱动产品测试项目的测试过程;根据TestRunner的运行指令来启动用例测试。
将通过预定的模式匹配算法获取符合该算法的至少一个热点变更代码信息测试用例的文件和至少一个非热点变更信息测试用例的文件,并根据加载指令,将符合该算法的至少一个热点变更代码信息测试用例的文件中的热点变更代码信息测试用例和至少一个非热点变更信息测试用例的文件中的非热点变更信息测试用例进行加载,通过运行suite中的热点变更信息测试用例和非热点变更信息测试用例,基于获取该热点变更信息测试用例和非热点变更信息测试用例的标识信息,如名称,第二测试模块602调取该名称对应的脚本路径下的热点变更信息测试用例脚本和非热点变更信息测试用例脚本,以对产品测试项目进行测试。
本技术领域技术人员可以理解,本发明包括涉及用于执行本申请中所述操作中的一项或多项的设备。这些设备可以为所需的目的而专门设计和制造,或者也可以包括通用计算机中的已知设备。这些设备具有存储在其内的计算机程序,这些计算机程序选择性地激活或重构。这样的计算机程序可以被存储在设备(例如,计算机)可读介质中或者存储在适于存储电子指令并分别耦联到总线的任何类型的介质中,所述计算机可读介质包括但不限于任何类型的盘(包括软盘、硬盘、光盘、CD-ROM、和磁光盘)、ROM(Read-Only Memory,只读存储器)、RAM(Random Access Memory,随即存储器)、EPROM(Erasable ProgrammableRead-Only Memory,可擦写可编程只读存储器)、EEPROM(Electrically ErasableProgrammable Read-Only Memory,电可擦可编程只读存储器)、闪存、磁性卡片或光线卡片。也就是,可读介质包括由设备(例如,计算机)以能够读的形式存储或传输信息的任何介质。
本技术领域技术人员可以理解,可以用计算机程序指令来实现这些结构图和/或框图和/或流图中的每个框以及这些结构图和/或框图和/或流图中的框的组合。本技术领域技术人员可以理解,可以将这些计算机程序指令提供给通用计算机、专业计算机或其他可编程数据处理方法的处理器来实现,从而通过计算机或其他可编程数据处理方法的处理器来执行本发明公开的结构图和/或框图和/或流图的框或多个框中指定的方案。
本技术领域技术人员可以理解,本发明中已经讨论过的各种操作、方法、流程中的步骤、措施、方案可以被交替、更改、组合或删除。进一步地,具有本发明中已经讨论过的各种操作、方法、流程中的其他步骤、措施、方案也可以被交替、更改、重排、分解、组合或删除。进一步地,现有技术中的具有与本发明中公开的各种操作、方法、流程中的步骤、措施、方案也可以被交替、更改、重排、分解、组合或删除。
以上所述仅是本发明的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (10)
1.一种产品测试的方法,其特征在于,包括:
针对产品测试项目获取与其对应的至少一个热点变更代码信息测试用例;
根据获取到的热点变更代码信息测试用例的标识信息,调用相应的热点变更代码信息测试用例脚本对所述产品测试项目进行测试,以获取测试结果;
将所述产品测试项目的测试结果与产品测试项目的预期结果进行对比,并将对比结果进行输出和展示。
2.根据权利要求1所述的方法,其特征在于,针对产品测试项目获取与其对应的至少一个热点变更代码信息测试用例,包括:
根据预定的匹配算法,获取产品测试项目所对应的至少一个热点变更代码信息测试用例;
将获取到的至少一个热点变更代码信息测试用例添加到测试用例集中。
3.根据权利要求2所述的方法,其特征在于,通过执行所述测试用例集,来根据获取到的热点变更代码信息测试用例的标识信息,调用相应的热点变更代码信息测试用例脚本对所述产品测试项目进行测试,以获取测试结果。
4.根据权利要求2或3所述的方法,其特征在于,还包括:
针对热点变更代码信息创建热点变更代码信息测试用例和与相应的热点变更代码信息测试用例脚本。
5.根据权利要求4所述的方法,其特征在于,所述热点变更代码信息基于变更代码信息的预定的变更频率和/或变更代码信息与程序漏洞的预定的关联性在多个变更代码信息中进行提取。
6.根据权利要求2或3所述的方法,其特征在于,还包括:
根据预定的匹配算法,获取产品测试项目对应的至少一个预定的非热点代码信息测试用例;
根据获取到的热点变更代码信息测试用例的标识信息和非热点变更代码信息测试用例的标识信息,调用相应的热点变更代码信息测试用例脚本和非热点变更代码信息测试用例脚本对产品测试项目进行测试,以获取测试结果。
7.一种产品测试的装置,其特征在于,包括:
第一获取模块,用于针对产品测试项目获取与其对应的至少一个热点变更代码信息测试用例;
第一测试模块,用于根据获取到的热点变更代码信息测试用例的标识信息,调用相应的热点变更代码信息测试用例脚本对所述产品测试项目进行测试,以获取测试结果;
对比模块,用于将所述产品测试项目的测试结果与产品测试项目的预期结果进行对比,并将对比结果进行输出和展示。
8.根据权利要求7所述的装置,其特征在于,所述第一提取模块包括:
获取单元,用于根据预定的匹配算法,获取产品测试项目所对应的至少一个热点变更代码信息测试用例;
添加单元,用于将获取到的至少一个热点变更代码信息测试用例添加到测试用例集中。
9.根据权利要求8所述的装置,其特征在于,所述第一测试模块,用于通过执行所述测试用例集,来根据获取到的热点变更代码信息测试用例的标识信息,调用相应的热点变更代码信息测试用例脚本对所述产品测试项目进行测试,以获取测试结果。
10.根据权利要求8或9所述的装置,其特征在于,还包括:
创建模块,用于针对热点变更代码信息创建热点变更代码信息测试用例和与相应的热点变更代码信息测试用例脚本。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610682292.0A CN106326116B (zh) | 2016-08-17 | 2016-08-17 | 产品测试的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610682292.0A CN106326116B (zh) | 2016-08-17 | 2016-08-17 | 产品测试的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106326116A true CN106326116A (zh) | 2017-01-11 |
CN106326116B CN106326116B (zh) | 2019-03-05 |
Family
ID=57743779
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610682292.0A Active CN106326116B (zh) | 2016-08-17 | 2016-08-17 | 产品测试的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106326116B (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107885660A (zh) * | 2017-10-31 | 2018-04-06 | 平安科技(深圳)有限公司 | 基金系统自动化测试管理方法、装置、设备及存储介质 |
CN108255700A (zh) * | 2017-03-27 | 2018-07-06 | 平安科技(深圳)有限公司 | 测试结果生成方法和装置 |
CN108255653A (zh) * | 2018-01-02 | 2018-07-06 | 深圳壹账通智能科技有限公司 | 一种产品的测试方法及其终端 |
CN108459953A (zh) * | 2017-02-22 | 2018-08-28 | 北京京东尚科信息技术有限公司 | 测试方法和装置 |
CN110781090A (zh) * | 2019-10-31 | 2020-02-11 | 北京东软望海科技有限公司 | 数据处理测试的控制方法、装置、计算机设备及存储介质 |
CN112612691A (zh) * | 2020-11-30 | 2021-04-06 | 北京思特奇信息技术股份有限公司 | 基于svn的自动化测试数据管控的实现方法及系统、电子设备、存储介质 |
CN115373927A (zh) * | 2022-10-25 | 2022-11-22 | 深圳市亿联无限科技有限公司 | 产品测试方法、装置、电子设备和计算机可读介质 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110055807A1 (en) * | 2009-08-31 | 2011-03-03 | Accenture Global Services Gmbh | Integration environment generator |
CN102012864A (zh) * | 2010-11-30 | 2011-04-13 | 广东星海数字家庭产业技术研究院有限公司 | 一种基于hsml的自动化测试方法 |
CN102799515A (zh) * | 2011-05-24 | 2012-11-28 | 腾讯科技(深圳)有限公司 | 应用程序测试方法及装置 |
CN102880546A (zh) * | 2012-09-03 | 2013-01-16 | 上海方正数字出版技术有限公司 | 一种基于xml数据库的软件集成测试方法及系统 |
CN103150249A (zh) * | 2011-12-07 | 2013-06-12 | 北京新媒传信科技有限公司 | 一种自动化测试的方法和系统 |
CN103246604A (zh) * | 2013-03-29 | 2013-08-14 | 北京京东尚科信息技术有限公司 | 软件测试的系统和方法以及控制装置与执行装置 |
CN104794057A (zh) * | 2015-04-29 | 2015-07-22 | 瑞斯康达科技发展股份有限公司 | 一种交叉事件自动化测试方法和装置 |
CN105354140A (zh) * | 2015-11-02 | 2016-02-24 | 上海聚力传媒技术有限公司 | 一种自动化测试的方法及系统 |
CN105608012A (zh) * | 2016-03-10 | 2016-05-25 | 武汉斗鱼网络科技有限公司 | 一种自动化测试方法及系统 |
-
2016
- 2016-08-17 CN CN201610682292.0A patent/CN106326116B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110055807A1 (en) * | 2009-08-31 | 2011-03-03 | Accenture Global Services Gmbh | Integration environment generator |
CN102012864A (zh) * | 2010-11-30 | 2011-04-13 | 广东星海数字家庭产业技术研究院有限公司 | 一种基于hsml的自动化测试方法 |
CN102799515A (zh) * | 2011-05-24 | 2012-11-28 | 腾讯科技(深圳)有限公司 | 应用程序测试方法及装置 |
CN103150249A (zh) * | 2011-12-07 | 2013-06-12 | 北京新媒传信科技有限公司 | 一种自动化测试的方法和系统 |
CN102880546A (zh) * | 2012-09-03 | 2013-01-16 | 上海方正数字出版技术有限公司 | 一种基于xml数据库的软件集成测试方法及系统 |
CN103246604A (zh) * | 2013-03-29 | 2013-08-14 | 北京京东尚科信息技术有限公司 | 软件测试的系统和方法以及控制装置与执行装置 |
CN104794057A (zh) * | 2015-04-29 | 2015-07-22 | 瑞斯康达科技发展股份有限公司 | 一种交叉事件自动化测试方法和装置 |
CN105354140A (zh) * | 2015-11-02 | 2016-02-24 | 上海聚力传媒技术有限公司 | 一种自动化测试的方法及系统 |
CN105608012A (zh) * | 2016-03-10 | 2016-05-25 | 武汉斗鱼网络科技有限公司 | 一种自动化测试方法及系统 |
Non-Patent Citations (1)
Title |
---|
宋春雨: ""Android平台自动化测试的研究与实践"", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108459953A (zh) * | 2017-02-22 | 2018-08-28 | 北京京东尚科信息技术有限公司 | 测试方法和装置 |
CN108255700A (zh) * | 2017-03-27 | 2018-07-06 | 平安科技(深圳)有限公司 | 测试结果生成方法和装置 |
WO2018177202A1 (zh) * | 2017-03-27 | 2018-10-04 | 平安科技(深圳)有限公司 | 测试结果生成方法、装置、计算机设备和存储介质 |
CN108255700B (zh) * | 2017-03-27 | 2020-03-06 | 平安科技(深圳)有限公司 | 测试结果生成方法和装置 |
WO2019085061A1 (zh) * | 2017-10-31 | 2019-05-09 | 平安科技(深圳)有限公司 | 基金系统自动化测试管理方法、装置、设备及存储介质 |
CN107885660A (zh) * | 2017-10-31 | 2018-04-06 | 平安科技(深圳)有限公司 | 基金系统自动化测试管理方法、装置、设备及存储介质 |
CN107885660B (zh) * | 2017-10-31 | 2020-04-03 | 平安科技(深圳)有限公司 | 基金系统自动化测试管理方法、装置、设备及存储介质 |
CN108255653B (zh) * | 2018-01-02 | 2021-05-04 | 深圳壹账通智能科技有限公司 | 一种产品的测试方法及其终端 |
CN108255653A (zh) * | 2018-01-02 | 2018-07-06 | 深圳壹账通智能科技有限公司 | 一种产品的测试方法及其终端 |
CN110781090A (zh) * | 2019-10-31 | 2020-02-11 | 北京东软望海科技有限公司 | 数据处理测试的控制方法、装置、计算机设备及存储介质 |
CN110781090B (zh) * | 2019-10-31 | 2023-09-12 | 望海康信(北京)科技股份公司 | 数据处理测试的控制方法、装置、计算机设备及存储介质 |
CN112612691A (zh) * | 2020-11-30 | 2021-04-06 | 北京思特奇信息技术股份有限公司 | 基于svn的自动化测试数据管控的实现方法及系统、电子设备、存储介质 |
CN115373927A (zh) * | 2022-10-25 | 2022-11-22 | 深圳市亿联无限科技有限公司 | 产品测试方法、装置、电子设备和计算机可读介质 |
Also Published As
Publication number | Publication date |
---|---|
CN106326116B (zh) | 2019-03-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106326116A (zh) | 产品测试的方法和装置 | |
CN106294171B (zh) | 产品自动部署的测试系统、方法和装置 | |
CN106844217B (zh) | 对应用的控件进行埋点的方法及装置、可读存储介质 | |
CN105095059B (zh) | 一种自动化测试的方法和装置 | |
CN107608874A (zh) | 测试方法和装置 | |
CN104572072B (zh) | 一种对基于mvc模式的程序的语言转换方法与设备 | |
CN106021119A (zh) | 配置文件的校验方法和装置 | |
CN108959059A (zh) | 一种测试方法以及测试平台 | |
CN110297760A (zh) | 测试数据的构造方法、装置、设备及计算机可读存储介质 | |
CN112433944A (zh) | 业务测试方法、装置、计算机设备和存储介质 | |
CN106776339A (zh) | 自动化测试方法及装置 | |
CN105117205B (zh) | 一种网页编辑方法和装置 | |
CN106612204B (zh) | 业务校验方法及装置 | |
Iyama et al. | Automatically generating test scripts for gui testing | |
CN109766261A (zh) | 覆盖测试方法、装置、计算机设备和存储介质 | |
CN111459800A (zh) | 一种业务系统可用性验证方法、装置、设备和介质 | |
CN110427998A (zh) | 模型训练、目标检测方法及装置、电子设备、存储介质 | |
US10949333B1 (en) | Application maturity console | |
CN107203562B (zh) | 自动化检查方法、装置和计算机可读存储介质 | |
CN109242561A (zh) | 抽奖模型构建方法、抽奖活动管理方法、装置和计算设备 | |
CN109508204B (zh) | 一种前端代码质量检测方法及装置 | |
CN108334446A (zh) | 一种网页模板的校验方法、装置及计算机可读存储介质 | |
CN114812695B (zh) | 一种产品测试方法、装置、计算机设备和存储介质 | |
CN111144429A (zh) | 对象分类方法及其系统、计算机系统及计算机可读介质 | |
CN111008140B (zh) | 一种跨平台的ui自动化测试方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20220708 Address after: Room 801, 8th floor, No. 104, floors 1-19, building 2, yard 6, Jiuxianqiao Road, Chaoyang District, Beijing 100015 Patentee after: BEIJING QIHOO TECHNOLOGY Co.,Ltd. Address before: 100088 room 112, block D, 28 new street, new street, Xicheng District, Beijing (Desheng Park) Patentee before: BEIJING QIHOO TECHNOLOGY Co.,Ltd. Patentee before: Qizhi software (Beijing) Co., Ltd |