CN117149664B - 一种基于bpmn的自动化测试方法及其系统平台 - Google Patents

一种基于bpmn的自动化测试方法及其系统平台 Download PDF

Info

Publication number
CN117149664B
CN117149664B CN202311421876.9A CN202311421876A CN117149664B CN 117149664 B CN117149664 B CN 117149664B CN 202311421876 A CN202311421876 A CN 202311421876A CN 117149664 B CN117149664 B CN 117149664B
Authority
CN
China
Prior art keywords
data
processing
implementation
test
time point
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.)
Active
Application number
CN202311421876.9A
Other languages
English (en)
Other versions
CN117149664A (zh
Inventor
王海龙
顾玉峰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Dashu Xinke Technology Co ltd
Original Assignee
Shenzhen Dashu Xinke Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shenzhen Dashu Xinke Technology Co ltd filed Critical Shenzhen Dashu Xinke Technology Co ltd
Priority to CN202311421876.9A priority Critical patent/CN117149664B/zh
Publication of CN117149664A publication Critical patent/CN117149664A/zh
Application granted granted Critical
Publication of CN117149664B publication Critical patent/CN117149664B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3684Test management for test design, e.g. generating new test cases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test 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)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开了一种基于BPMN的自动化测试方法及其系统平台,涉及自动化测试技术领域,包括获取历史测试数据,对历史测试数据进行对象区分处理;基于对象区分处理的结果获取第一处理对象以及第二处理对象;基于第一处理对象的处理数据以及第二处理对象的处理数据绘制测试BPMN图;对被测试数据进行预处理,基于预处理结果匹配对应的测试BPMN图,使用对应的BPMN图对被测试数据进行自动化测试;本发明用于解决现有技术中因缺少自动化测试在获取业务流程后针对业务流程建模方面的改进方法,从而导致在出现运行故障时会影响自动化测试的测试效率的问题。

Description

一种基于BPMN的自动化测试方法及其系统平台
技术领域
本发明涉及自动化测试技术领域,具体为一种基于BPMN的自动化测试方法及其系统平台。
背景技术
自动化测试是把以人为驱动的测试行为转化为机器执行的一种过程。简单讲,自动化测试就是通过编写代码,运行程序,完成需要手工需要做的软件测试任务。一般的测试对象是计算机软件,包括但不限于Windows应用,web应用,server服务等。
现有的用于自动化测试的改进,通常是提高自动化测试的泛用性,使自动化测试能够在更多领域进行使用,比如在发明公开号为CN101662394A的中国专利中,公开了自动化测试系统和自动化测试方法,该方案就是通过对业务系统的操作流程进行读取,能够对不同的业务系统进行自动化测试,其他的用于自动化测试的改进,通常是用于减少自动化测试的开发成本以及提高自动化测试的灵活度,而现有的改进方法中缺少自动化测试在获取业务流程后针对业务流程建模方面的改进方法,这会导致在读取业务系统中的业务流程后,无法准确依照业务流程进行自动化运行,在出现运行故障时会影响自动化测试的测试效率,鉴于此,有必要对现有的自动化测试进行改进。
发明内容
本发明旨在至少在一定程度上解决现有技术中的技术问题之一,通过对自动化测试进行改进,用于解决现有技术中因缺少自动化测试在获取业务流程后针对业务流程建模方面的改进方法,从而导致在读取业务系统中的业务流程后,无法准确依照业务流程进行自动化运行,在出现运行故障时会影响自动化测试的测试效率的问题。
为实现上述目的,第一方面,本发明提供一种基于BPMN的自动化测试方法,包括:
获取历史测试数据,对历史测试数据进行对象区分处理;
基于对象区分处理的结果获取第一处理对象以及第二处理对象;
基于第一处理对象的处理数据以及第二处理对象的处理数据绘制测试BPMN图;
所述处理数据包括输入数据、输出数据以及存储数据;
当接收到新的被测试数据时,对被测试数据进行预处理,并基于预处理结果匹配对应的测试BPMN图,使用对应的BPMN图对被测试数据进行自动化测试。
进一步地,获取历史测试数据,对历史测试数据进行对象区分处理包括:
获取历史测试数据,记为历史测试数据1至历史测试数据N;
对历史测试数据1至历史测试数据N使用对象区分处理;
将使用对象区分处理后的历史测试数据1至历史测试数据N记为单对象数据1至单对象数据N1、双对象数据1至双对象数据N2以及多对象数据1至多对象数据N3。
进一步地,对象区分处理包括:
对于历史测试数据1至历史测试数据N中的任意一个历史测试数据,获取历史测试数据的数据实施对象的数量,所述数据实施对象为在历史测试数据中进行数据发送、数据接收或数据判断的对象;
当数据实施对象的数量等于第一对象数量时,将历史测试数据记为单对象数据;
当数据实施对象的数量等于第二对象数量时,将历史测试数据记为双对象数据;
当数据实施对象的数量大于第二对象数量时,将历史测试数据记为多对象数据。
进一步地,基于对象区分处理的结果获取第一处理对象以及第二处理对象包括:
对单对象数据依次使用单处理方法;
对双对象数据依次使用双处理方法;
对多对象数据依次使用多处理方法;
基于单处理方法、双处理方法以及多处理方法的结果得到历史测试数据1至历史测试数据N中每一个历史测试数据的第一处理对象以及第二处理对象。
进一步地,单处理方法包括:
当单对象数据1进行处理时,获取单对象数据中的数据实施对象,记为单实施对象,获取单实施对象在单对象数据中进行数据发送的时间点,记为单发送时间点1至单发送时间点M1;
获取单实施对象在单处理数据中进行数据接收的时间点,记为单接收时间点1至单接收时间点M2;
获取单实施对象在单处理数据中进行数据判断的时间点,记为单判断时间点1至单判断时间点M3;
当对单对象数据2至单对象数据N1进行处理时,获取单对象数据中的单实施对象在单发送时间点1至单发送时间点M1进行的数据操作,当单实施对象在单发送时间点1至单发送时间点M1进行的数据操作为数据发送的数量大于等于标准发送数量时,将单发送时间点1至单发送时间点M1记为单对象数据的标准发送时间点;
获取单对象数据中的单实施对象在单接收时间点1至单接收时间点M2进行的数据操作,当单实施对象在单接收时间点1至单接收时间点M2进行的数据操作为数据接收的数量大于等于标准接收数量时,将单接收时间点1至单接收时间点M2记为单对象数据的标准接收时间点;
获取单对象数据中的单实施对象在单判断时间点1至单判断时间点M3进行的数据操作,当单实施对象在单判断时间点1至单判断时间点M3进行的数据操作为数据判断的数量大于等于标准判断数量时,将单判断时间点1至单判断时间点M3记为单对象数据的标准判断时间点;
对于单对象数据1至单对象数据N1中的任意一个单对象数据,将单对象数据运行时的标准发送时间点、标准接收时间点以及标准判断时间点记为单对象数据的第一处理对象,将单对象数据运行时发送的数据、接收的数据以及判断的数据记为单对象数据的第二处理对象。
进一步地,双处理方法包括:
对于双对象数据1至双对象数据N2中的任意一个双对象数据,当双对象数据中的数据实施对象存在相互的数据发送、数据接收或数据判断时,将数据实施对象分别记为双对象数据的第一处理对象以及双对象数据的第二处理对象;
当双对象数据中的数据实时对象不存在相互的数据发送、数据接收或数据判断时,对数据实施对象分别使用单处理方法,将所有数据实施对象的第一处理对象合并为双对象数据的第一处理对象,将所有数据实施对象的第二处理对象合并为双对象数据的第二处理对象。
进一步地,多处理方法包括:
对于多对象数据1至多对象数据N3中的任意一个多对象数据,将多对象数据中的数据实施对象记为多实施对象1至多实施对象H;
对于多实施对象1至多实施对象H中的任意一个多实施对象,获取多实施对象在多对象数据中进行数据发送、数据接收以及数据判断的次数,分别记为多发送次数、多接收次数以及多判断次数,将多发送次数、多接收次数以及多判断次数中数值最大的次数对应的数据操作记为多实施对象的象征操作,数据操作包括数据发送、数据接收以及数据判断;
将象征操作为数据发送的多实施对象记为发送实施对象,将象征操作为数据接收的多实施对象记为接收实施对象,将象征操作为数据判断的多实施对象记为判断实施对象;
将进行数据传输的发送实施对象以及接收实施对象记为多对象数据的第一处理对象,将与第一处理对象进行数据判断的判断实施对象记为多对象数据第二处理对象。
进一步地,基于第一处理对象的处理数据以及第二处理对象的处理数据绘制测试BPMN图包括:
当历史测试数据为单对象数据时,使用单对象绘制方法制作测试BPMN图;
单对象绘制方法包括:
在单对象数据运行后建立单对象时间轴,单对象时间轴用于表示单对象数据的运行时间,在单对象时间轴下方建立第一单处理区域以及第二单处理区域;
基于单对象时间轴标记单对象数据在运行时的第一处理对象并将单对象数据的运行流程放置在第一单处理区域内;
在每个第一处理对象对应的第二单处理区域中放置第一处理对象对应的第二处理对象;
当历史测试数据为双对象数据时,使用双对象绘制方法制作测试BPMN图;
双对象绘制方法包括:
建立第一双处理区域以及第二双处理区域,当双对象数据的第一处理对象以及第二处理对象均为数据实施对象时,在第一双处理区域中放置第一处理对象的运行流程,在第二双处理区域中放置第二处理对象的运行流程,并标记第一处理对象与第二处理对象之间的数据操作;
当双对象数据的第一处理对象以及第二处理对象不均为数据实施对象时,使用单对象绘制策略进行绘制;
当历史测试数据为多对象数据时,使用多对象绘制方法制作测试BPMN图;
多对象绘制方法包括:
建立第一多处理区域以及第二多处理区域,将第一处理对象的运行流程放置在第一多处理区域中,并在第一多处理区域中标记第一处理对象之间的数据操作;
将第二处理对象放置在第二多处理区域中,并在第二多处理区域中标记第一处理对象与第二处理对象之间的数据操作。
进一步地,当接收到新的被测试数据时,对被测试数据进行预处理,并基于预处理结果匹配对应的测试BPMN图,使用对应的BPMN图对被测试数据进行自动化测试包括:
当接收到新的被测试数据时,对被测试数据使用对象区分处理进行预处理;
获取被测试数据的数据类型,基于预处理的结果在单对象数据1至单对象数据N1、双对象数据1至双对象数据N2或多对象数据1至多对象数据N3中匹配与被测试数据的数据类型相同的历史测试数据,记为参考测试数据;
基于参考测试数据对应的测试BPMN图对被测试数据进行自动化测试。
第二方面,本发明还提供一种基于BPMN的自动化测试方法的系统平台,包括对象区分模块、处理对象生成模块、测试BPMN图绘制模块以及测试模块;
对象区分模块用于获取历史测试数据,对历史测试数据进行对象区分处理;
处理对象生成模块用于基于对象区分处理的结果获取第一处理对象以及第二处理对象;
测试BPMN图绘制模块用于基于第一处理对象的处理数据以及第二处理对象的处理数据绘制测试BPMN图;
所述处理数据包括输入数据、输出数据以及存储数据;
测试模块用于当接收到新的被测试数据时,对被测试数据进行预处理,并基于预处理结果匹配对应的测试BPMN图,使用对应的BPMN图对被测试数据进行自动化测试。
本发明的有益效果:本发明通过获取历史测试数据,对历史测试数据进行对象区分处理;基于对象区分处理的结果获取第一处理对象以及第二处理对象,这样的好处在于,通过对历史测试数据进行对象区分处理后得到第一处理对象以及第二处理对象,可以准确获取历史测试数据在进行测试时的测试对象,有利于后续在建立测试BPMN图时对测试对象的数据操作进行准确捕捉,从而使建立的测试BPMN图更加符合自动化测试的运作流程;
本发明还通过基于第一处理对象的处理数据以及第二处理对象的处理数据绘制测试BPMN图;当接收到新的被测试数据时,对被测试数据进行预处理,并基于预处理结果匹配对应的测试BPMN图,使用对应的BPMN图对被测试数据进行自动化测试,这样的好处在于,通过基于历史测试数据绘制测试BPMN图,可以在获取到新的被测试数据时,直接匹配测试BPMN图对被测试数据进行自动化测试,能够提高自动化测试的测试效率。
本申请的其他特征和优点将在随后的说明书阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请了解。本申请的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
附图说明
图1为本发明的系统的原理框图;
图2为本发明的方法的步骤流程图;
图3为本发明的单对象绘制策略的测试BPMN图的示意图;
图4为本发明的双对象绘制策略的测试BPMN图的示意图;
图5为本发明的多对象绘制策略的测试BPMN图的示意图;
图6为本发明的测试流程图对应的测试BPMN图的示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例1
第一方面,本发明提供一种基于BPMN的自动化测试系统平台,包括对象区分模块、处理对象生成模块、测试BPMN图绘制模块以及测试模块;
对象区分模块用于获取历史测试数据,对历史测试数据进行对象区分处理;
对象区分模块配置有对象区分策略,对象区分策略包括:
在具体实施过程中,通过对历史测试数据进行对象区分,可以对具有不同数量的实施对象的历史测试数据使用不同的分析方法,这会有利于在获取到新的自动化测试材料时提高进行自动化测试的测试效率;
获取历史测试数据,记为历史测试数据1至历史测试数据N;
对历史测试数据1至历史测试数据N使用对象区分处理;
将使用对象区分处理后的历史测试数据1至历史测试数据N记为单对象数据1至单对象数据N1、双对象数据1至双对象数据N2以及多对象数据1至多对象数据N3;
对象区分处理包括:
对于历史测试数据1至历史测试数据N中的任意一个历史测试数据,获取历史测试数据的数据实施对象的数量,所述数据实施对象为在历史测试数据中进行数据发送、数据接收或数据判断的对象;
当数据实施对象的数量等于第一对象数量时,将历史测试数据记为单对象数据;
当数据实施对象的数量等于第二对象数量时,将历史测试数据记为双对象数据;
当数据实施对象的数量大于第二对象数量时,将历史测试数据记为多对象数据;
在具体实施过程中,将第一对象数量设置为1,将第二对象数量设置为2,在本发明中,单对象数据中拥有一个数据实施对象,双对象数据用于两个数据实施对象,多对象数据用于两个以上的数据实施对象,通过进行区分处理,可以分别根据单数据对象、双数据对象以及多数据对象的不同性质进行有效的分析,从而提高得到的测试BPMN图的有效性;
处理对象生成模块用于基于对象区分处理的结果获取第一处理对象以及第二处理对象;
处理对象生成模块配置有单处理策略、双处理策略以及多处理策略;
单处理策略包括:
当单对象数据1进行处理时,获取单对象数据中的数据实施对象,记为单实施对象,获取单实施对象在单对象数据中进行数据发送的时间点,记为单发送时间点1至单发送时间点M1;
获取单实施对象在单处理数据中进行数据接收的时间点,记为单接收时间点1至单接收时间点M2;
获取单实施对象在单处理数据中进行数据判断的时间点,记为单判断时间点1至单判断时间点M3;
在具体实施过程中,为了对单实施对象中的数据实施对象的数据操作进行有效分析,分别获取数据实施对象进行数据发送、数据接收以及数据判断的时间点可以对单处理数据中较为重要的时间点进行标记;
单处理策略还包括:
当对单对象数据2至单对象数据N1进行处理时,获取单对象数据中的单实施对象在单发送时间点1至单发送时间点M1进行的数据操作,当单实施对象在单发送时间点1至单发送时间点M1进行的数据操作为数据发送的数量大于等于标准发送数量时,将单发送时间点1至单发送时间点M1记为单对象数据的标准发送时间点;
在具体实施过程中,通过使用单对象数据1中的单发送时间1至单发送时间N1、单接收时间点1至单接收时间点M2以及单判断时间点1至单判断时间点M3分别对单对象数据2至单对象数据M1进行分析,可以使所有数据操作的时间位置固定,从而减少因获取数据操作的新的时间位置而降低整体运行的速率,其中,标准发送数量为M1的60%,标准接收数量为M2的50%,标准判断数量为M3的40%;
获取单对象数据中的单实施对象在单接收时间点1至单接收时间点M2进行的数据操作,当单实施对象在单接收时间点1至单接收时间点M2进行的数据操作为数据接收的数量大于等于标准接收数量时,将单接收时间点1至单接收时间点M2记为单对象数据的标准接收时间点;
获取单对象数据中的单实施对象在单判断时间点1至单判断时间点M3进行的数据操作,当单实施对象在单判断时间点1至单判断时间点M3进行的数据操作为数据判断的数量大于等于标准判断数量时,将单判断时间点1至单判断时间点M3记为单对象数据的标准判断时间点;
对于单对象数据1至单对象数据N1中的任意一个单对象数据,将单对象数据运行时的标准发送时间点、标准接收时间点以及标准判断时间点记为单对象数据的第一处理对象,将单对象数据运行时发送的数据、接收的数据以及判断的数据记为单对象数据的第二处理对象;
双处理策略包括:
对于双对象数据1至双对象数据N2中的任意一个双对象数据,当双对象数据中的数据实施对象存在相互的数据发送、数据接收或数据判断时,将数据实施对象分别记为双对象数据的第一处理对象以及双对象数据的第二处理对象;
在具体实施过程中,获取第一处理对象以及第二处理对象的目的是将历史测试数据中划分为两个能够互相交互的个体从而构建测试BPMN图,因此当存在能够相互进行数据操作的数据实施对象时,可以直接记为第一处理对象以及第二处理对象;
当双对象数据中的数据实时对象不存在相互的数据发送、数据接收或数据判断时,对数据实施对象分别使用单处理方法,将所有数据实施对象的第一处理对象合并为双对象数据的第一处理对象,将所有数据实施对象的第二处理对象合并为双对象数据的第二处理对象;
多处理策略包括:
对于多对象数据1至多对象数据N3中的任意一个多对象数据,将多对象数据中的数据实施对象记为多实施对象1至多实施对象H;
对于多实施对象1至多实施对象H中的任意一个多实施对象,获取多实施对象在多对象数据中进行数据发送、数据接收以及数据判断的次数,分别记为多发送次数、多接收次数以及多判断次数,将多发送次数、多接收次数以及多判断次数中数值最大的次数对应的数据操作记为多实施对象的象征操作,数据操作包括数据发送、数据接收以及数据判断;
将象征操作为数据发送的多实施对象记为发送实施对象,将象征操作为数据接收的多实施对象记为接收实施对象,将象征操作为数据判断的多实施对象记为判断实施对象;
将进行数据传输的发送实施对象以及接收实施对象记为多对象数据的第一处理对象,将与第一处理对象进行数据判断的判断实施对象记为多对象数据第二处理对象;
在处理对象生成模块中基于单处理策略、双处理策略以及多处理策略的结果得到历史测试数据1至历史测试数据N中每一个历史测试数据的第一处理对象以及第二处理对象;
测试BPMN图绘制模块用于基于第一处理对象的处理数据以及第二处理对象的处理数据绘制测试BPMN图;
所述处理数据包括输入数据、输出数据以及存储数据;
测试BPMN图绘制模块配置有单对象绘制策略、双对象绘制策略以及多对象绘制策略;
请参阅图3所示,其中,T1为单对象数据的运行开始,T2为数据接收,T3为数据发送,T4为数据判断,T5为单对象数的运行结束,T6为数据接收、数据发送或数据判断对应的数据,T7为单对象数据开始运行的时间,T8为单对象数据进行数据发送、数据接收或数据判断对应的时间,T9为第一单处理区域,T10为第二单处理区域,单对象绘制策略包括:
在单对象数据运行后建立单对象时间轴,单对象时间轴用于表示单对象数据的运行时间,在单对象时间轴下方建立第一单处理区域以及第二单处理区域;
基于单对象时间轴标记单对象数据在运行时的第一处理对象并将单对象数据的运行流程放置在第一单处理区域内;
在每个第一处理对象对应的第二单处理区域中放置第一处理对象对应的第二处理对象;
在具体实施过程中,在单对象数据中的第一处理对象对应的第二处理对象为在标准发送时间点时单对象数据发送的数据、在标准接收时间点时单对象数据接收的数据以及在标准判断时间点时单对象数据判断的数据;
请参阅图4所示,其中,U1和U2为数据实施对象开始运行,U7和U8为数据实施对象结束运行,U3为数据发送,U4为与U3对应的数据接收,U5为数据判断,U6为与U5对应的判断结果,U9为第一双处理区域,U10为第二双处理区域,双对象绘制策略包括:
建立第一双处理区域以及第二双处理区域,当双对象数据的第一处理对象以及第二处理对象均为数据实施对象时,在第一双处理区域中放置第一处理对象的运行流程,在第二双处理区域中放置第二处理对象的运行流程,并标记第一处理对象与第二处理对象之间的数据操作;
当双对象数据的第一处理对象以及第二处理对象不均为数据实施对象时,使用单对象绘制策略进行绘制;
请参阅图5所示,其中,A1、A2以及A3为数据实施对象开始运行,A8、A9以及A10为数据实施对象结束运行,A4为数据发送,A5为与A4对应的数据接收,A6为数据判断,A7为与A6对应的判断结果,A11为第一多处理区域,A12为第二多处理区域,多对象绘制策略包括:
建立第一多处理区域以及第二多处理区域,将第一处理对象的运行流程放置在第一多处理区域中,并在第一多处理区域中标记第一处理对象之间的数据操作;
将第二处理对象放置在第二多处理区域中,并在第二多处理区域中标记第一处理对象与第二处理对象之间的数据操作;
测试模块用于当接收到新的被测试数据时,对被测试数据进行预处理,并基于预处理结果匹配对应的测试BPMN图,使用对应的BPMN图对被测试数据进行自动化测试;
测试模块配置有自动化测试策略,自动化测试策略包括:
当接收到新的被测试数据时,对被测试数据使用对象区分处理进行预处理;
获取被测试数据的数据类型,基于预处理的结果在单对象数据1至单对象数据N1、双对象数据1至双对象数据N2或多对象数据1至多对象数据N3中匹配与被测试数据的数据类型相同的历史测试数据,记为参考测试数据;
基于参考测试数据对应的测试BPMN图对被测试数据进行自动化测试。
实施例2
第二方面,本实施例与实施例1的不同之处在于,针对对象区分处理,在对象区分处理时,当历史测试数据的数据实施对象为0时,无法进行进一步的划分,因此本实施例针对在对象区分处理中当历史测试数据的数据实施对象为0时进行进一步说明:
当历史测试数据的数据实施对象为0时,请参阅图6所示,其中,B1为测试流程图的开始,B3为测试流程图的结束,B2为测试流程图的判断符号,B4为第一主处理区域,B5为第二主处理区域,获取历史测试数据的测试流程图,基于历史测试数据的测试流程图将能够最短完成测试的流程线路记为测试流程图的主线路,将除主线路以外的测试流程图记为测试流程图的辅线路;
在建立测试BPMN图时,将测试图的主线路放置在第一主处理区域内,将测试图的辅线路放置在第二辅处理区域内,并根据测试流程图中的关系进行连线。
实施例3
第三方面,请参阅图2所示,本发明还提供一种基于BPMN的自动化测试方法,包括:
步骤S1,获取历史测试数据,对历史测试数据进行对象区分处理;
步骤S2,基于对象区分处理的结果获取第一处理对象以及第二处理对象;
步骤S3,基于第一处理对象的处理数据以及第二处理对象的处理数据绘制测试BPMN图;
所述处理数据包括输入数据、输出数据以及存储数据;
步骤S4,当接收到新的被测试数据时,对被测试数据进行预处理,并基于预处理结果匹配对应的测试BPMN图,使用对应的BPMN图对被测试数据进行自动化测试。
所述步骤S1包括如下子步骤:
步骤S101,获取历史测试数据,记为历史测试数据1至历史测试数据N;
步骤S102,对历史测试数据1至历史测试数据N使用对象区分处理;
将使用对象区分处理后的历史测试数据1至历史测试数据N记为单对象数据1至单对象数据N1、双对象数据1至双对象数据N2以及多对象数据1至多对象数据N3。
所述对象区分处理包括:
对于历史测试数据1至历史测试数据N中的任意一个历史测试数据,获取历史测试数据的数据实施对象的数量,所述数据实施对象为在历史测试数据中进行数据发送、数据接收或数据判断的对象;
当数据实施对象的数量等于第一对象数量时,将历史测试数据记为单对象数据;
当数据实施对象的数量等于第二对象数量时,将历史测试数据记为双对象数据;
当数据实施对象的数量大于第二对象数量时,将历史测试数据记为多对象数据。
所述步骤S2包括如下子步骤:
步骤S201,对单对象数据依次使用单处理方法;
步骤S202,对双对象数据依次使用双处理方法;
步骤S203,对多对象数据依次使用多处理方法;
步骤S204,基于单处理方法、双处理方法以及多处理方法的结果得到历史测试数据1至历史测试数据N中每一个历史测试数据的第一处理对象以及第二处理对象。
所述单处理方法包括:
当单对象数据1进行处理时,获取单对象数据中的数据实施对象,记为单实施对象,获取单实施对象在单对象数据中进行数据发送的时间点,记为单发送时间点1至单发送时间点M1;
获取单实施对象在单处理数据中进行数据接收的时间点,记为单接收时间点1至单接收时间点M2;
获取单实施对象在单处理数据中进行数据判断的时间点,记为单判断时间点1至单判断时间点M3。
所述单处理方法还包括:
当对单对象数据2至单对象数据N1进行处理时,获取单对象数据中的单实施对象在单发送时间点1至单发送时间点M1进行的数据操作,当单实施对象在单发送时间点1至单发送时间点M1进行的数据操作为数据发送的数量大于等于标准发送数量时,将单发送时间点1至单发送时间点M1记为单对象数据的标准发送时间点;
获取单对象数据中的单实施对象在单接收时间点1至单接收时间点M2进行的数据操作,当单实施对象在单接收时间点1至单接收时间点M2进行的数据操作为数据接收的数量大于等于标准接收数量时,将单接收时间点1至单接收时间点M2记为单对象数据的标准接收时间点;
获取单对象数据中的单实施对象在单判断时间点1至单判断时间点M3进行的数据操作,当单实施对象在单判断时间点1至单判断时间点M3进行的数据操作为数据判断的数量大于等于标准判断数量时,将单判断时间点1至单判断时间点M3记为单对象数据的标准判断时间点;
对于单对象数据1至单对象数据N1中的任意一个单对象数据,将单对象数据运行时的标准发送时间点、标准接收时间点以及标准判断时间点记为单对象数据的第一处理对象,将单对象数据运行时发送的数据、接收的数据以及判断的数据记为单对象数据的第二处理对象。
所述双处理方法包括:
对于双对象数据1至双对象数据N2中的任意一个双对象数据,当双对象数据中的数据实施对象存在相互的数据发送、数据接收或数据判断时,将数据实施对象分别记为双对象数据的第一处理对象以及双对象数据的第二处理对象;
当双对象数据中的数据实时对象不存在相互的数据发送、数据接收或数据判断时,对数据实施对象分别使用单处理方法,将所有数据实施对象的第一处理对象合并为双对象数据的第一处理对象,将所有数据实施对象的第二处理对象合并为双对象数据的第二处理对象。
所述多处理方法包括:
对于多对象数据1至多对象数据N3中的任意一个多对象数据,将多对象数据中的数据实施对象记为多实施对象1至多实施对象H;
对于多实施对象1至多实施对象H中的任意一个多实施对象,获取多实施对象在多对象数据中进行数据发送、数据接收以及数据判断的次数,分别记为多发送次数、多接收次数以及多判断次数,将多发送次数、多接收次数以及多判断次数中数值最大的次数对应的数据操作记为多实施对象的象征操作,数据操作包括数据发送、数据接收以及数据判断;
将象征操作为数据发送的多实施对象记为发送实施对象,将象征操作为数据接收的多实施对象记为接收实施对象,将象征操作为数据判断的多实施对象记为判断实施对象;
将进行数据传输的发送实施对象以及接收实施对象记为多对象数据的第一处理对象,将与第一处理对象进行数据判断的判断实施对象记为多对象数据第二处理对象。
所述步骤S3包括如下子步骤:
步骤S301,当历史测试数据为单对象数据时,使用单对象绘制方法制作测试BPMN图;
单对象绘制方法包括:
在单对象数据运行后建立单对象时间轴,单对象时间轴用于表示单对象数据的运行时间,在单对象时间轴下方建立第一单处理区域以及第二单处理区域;
基于单对象时间轴标记单对象数据在运行时的第一处理对象并将单对象数据的运行流程放置在第一单处理区域内;
在每个第一处理对象对应的第二单处理区域中放置第一处理对象对应的第二处理对象。
所述步骤S3还包括:
步骤S302,当历史测试数据为双对象数据时,使用双对象绘制方法制作测试BPMN图;
双对象绘制方法包括:
建立第一双处理区域以及第二双处理区域,当双对象数据的第一处理对象以及第二处理对象均为数据实施对象时,在第一双处理区域中放置第一处理对象的运行流程,在第二双处理区域中放置第二处理对象的运行流程,并标记第一处理对象与第二处理对象之间的数据操作;
当双对象数据的第一处理对象以及第二处理对象不均为数据实施对象时,使用单对象绘制策略进行绘制。
所述步骤S3还包括:
步骤S303,当历史测试数据为多对象数据时,使用多对象绘制方法制作测试BPMN图;
多对象绘制方法包括:
建立第一多处理区域以及第二多处理区域,将第一处理对象的运行流程放置在第一多处理区域中,并在第一多处理区域中标记第一处理对象之间的数据操作;
将第二处理对象放置在第二多处理区域中,并在第二多处理区域中标记第一处理对象与第二处理对象之间的数据操作。
步骤S4包括如下子步骤:
步骤S401,当接收到新的被测试数据时,对被测试数据使用对象区分处理进行预处理;
步骤S402,获取被测试数据的数据类型,基于预处理的结果在单对象数据1至单对象数据N1、双对象数据1至双对象数据N2或多对象数据1至多对象数据N3中匹配与被测试数据的数据类型相同的历史测试数据,记为参考测试数据;
步骤S403,基于参考测试数据对应的测试BPMN图对被测试数据进行自动化测试。
工作原理:
首先获取历史测试数据,对历史测试数据进行对象区分处理;基于对象区分处理的结果获取第一处理对象以及第二处理对象,然后基于第一处理对象的处理数据以及第二处理对象的处理数据绘制测试BPMN图,最后当接收到新的被测试数据时,对被测试数据进行预处理,并基于预处理结果匹配对应的测试BPMN图,使用对应的BPMN图对被测试数据进行自动化测试。
在本申请的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质上实施的计算机程序产品的形式。其中,存储介质可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(Static Random AccessMemory,简称SRAM),电可擦除可编程只读存储器(Electrically Erasable ProgrammableRead-Only Memory,简称EEPROM),可擦除可编程只读存储器(Erasable ProgrammableRead Only Memory,简称EPROM),可编程只读存储器(Programmable Red-Only Memory,简称PROM),只读存储器(Read-OnlyMemory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
在本申请所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其他的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其他的形式。

Claims (8)

1.一种基于BPMN的自动化测试方法,其特征在于,包括:
获取历史测试数据,对历史测试数据进行对象区分处理;获取历史测试数据,记为历史测试数据1至历史测试数据N;
对历史测试数据1至历史测试数据N使用对象区分处理;
将使用对象区分处理后的历史测试数据1至历史测试数据N记为单对象数据1至单对象数据N1、双对象数据1至双对象数据N2以及多对象数据1至多对象数据N3;
基于对象区分处理的结果获取第一处理对象以及第二处理对象;对单对象数据依次使用单处理方法;单处理方法包括:
当单对象数据1进行处理时,获取单对象数据中的数据实施对象,记为单实施对象,获取单实施对象在单对象数据中进行数据发送的时间点,记为单发送时间点1至单发送时间点M1;
获取单实施对象在单处理数据中进行数据接收的时间点,记为单接收时间点1至单接收时间点M2;
获取单实施对象在单处理数据中进行数据判断的时间点,记为单判断时间点1至单判断时间点M3;
当对单对象数据2至单对象数据N1进行处理时,获取单对象数据中的单实施对象在单发送时间点1至单发送时间点M1进行的数据操作,当单实施对象在单发送时间点1至单发送时间点M1进行的数据操作为数据发送的数量大于等于标准发送数量时,将单发送时间点1至单发送时间点M1记为单对象数据的标准发送时间点;
获取单对象数据中的单实施对象在单接收时间点1至单接收时间点M2进行的数据操作,当单实施对象在单接收时间点1至单接收时间点M2进行的数据操作为数据接收的数量大于等于标准接收数量时,将单接收时间点1至单接收时间点M2记为单对象数据的标准接收时间点;
获取单对象数据中的单实施对象在单判断时间点1至单判断时间点M3进行的数据操作,当单实施对象在单判断时间点1至单判断时间点M3进行的数据操作为数据判断的数量大于等于标准判断数量时,将单判断时间点1至单判断时间点M3记为单对象数据的标准判断时间点;
对于单对象数据1至单对象数据N1中的任意一个单对象数据,将单对象数据运行时的标准发送时间点、标准接收时间点以及标准判断时间点记为单对象数据的第一处理对象,将单对象数据运行时发送的数据、接收的数据以及判断的数据记为单对象数据的第二处理对象;
基于第一处理对象的处理数据以及第二处理对象的处理数据绘制测试BPMN图;
所述处理数据包括输入数据、输出数据以及存储数据;
当接收到新的被测试数据时,对被测试数据进行预处理,并基于预处理结果匹配对应的测试BPMN图,使用对应的BPMN图对被测试数据进行自动化测试。
2.根据权利要求1所述的一种基于BPMN的自动化测试方法,其特征在于,对象区分处理包括:
对于历史测试数据1至历史测试数据N中的任意一个历史测试数据,获取历史测试数据的数据实施对象的数量,所述数据实施对象为在历史测试数据中进行数据发送、数据接收或数据判断的对象;
当数据实施对象的数量等于第一对象数量时,将历史测试数据记为单对象数据;
当数据实施对象的数量等于第二对象数量时,将历史测试数据记为双对象数据;
当数据实施对象的数量大于第二对象数量时,将历史测试数据记为多对象数据。
3.根据权利要求2所述的一种基于BPMN的自动化测试方法,其特征在于,基于对象区分处理的结果获取第一处理对象以及第二处理对象包括:
对双对象数据依次使用双处理方法;
对多对象数据依次使用多处理方法;
基于单处理方法、双处理方法以及多处理方法的结果得到历史测试数据1至历史测试数据N中每一个历史测试数据的第一处理对象以及第二处理对象。
4.根据权利要求3所述的一种基于BPMN的自动化测试方法,其特征在于,双处理方法包括:
对于双对象数据1至双对象数据N2中的任意一个双对象数据,当双对象数据中的数据实施对象存在相互的数据发送、数据接收或数据判断时,将数据实施对象分别记为双对象数据的第一处理对象以及双对象数据的第二处理对象;
当双对象数据中的数据实时对象不存在相互的数据发送、数据接收或数据判断时,对数据实施对象分别使用单处理方法,将所有数据实施对象的第一处理对象合并为双对象数据的第一处理对象,将所有数据实施对象的第二处理对象合并为双对象数据的第二处理对象。
5.根据权利要求4所述的一种基于BPMN的自动化测试方法,其特征在于,多处理方法包括:
对于多对象数据1至多对象数据N3中的任意一个多对象数据,将多对象数据中的数据实施对象记为多实施对象1至多实施对象H;
对于多实施对象1至多实施对象H中的任意一个多实施对象,获取多实施对象在多对象数据中进行数据发送、数据接收以及数据判断的次数,分别记为多发送次数、多接收次数以及多判断次数,将多发送次数、多接收次数以及多判断次数中数值最大的次数对应的数据操作记为多实施对象的象征操作,数据操作包括数据发送、数据接收以及数据判断;
将象征操作为数据发送的多实施对象记为发送实施对象,将象征操作为数据接收的多实施对象记为接收实施对象,将象征操作为数据判断的多实施对象记为判断实施对象;
将进行数据传输的发送实施对象以及接收实施对象记为多对象数据的第一处理对象,将与第一处理对象进行数据判断的判断实施对象记为多对象数据第二处理对象。
6.根据权利要求5所述的一种基于BPMN的自动化测试方法,其特征在于,基于第一处理对象的处理数据以及第二处理对象的处理数据绘制测试BPMN图包括:
当历史测试数据为单对象数据时,使用单对象绘制方法制作测试BPMN图;
单对象绘制方法包括:
在单对象数据运行后建立单对象时间轴,单对象时间轴用于表示单对象数据的运行时间,在单对象时间轴下方建立第一单处理区域以及第二单处理区域;
基于单对象时间轴标记单对象数据在运行时的第一处理对象并将单对象数据的运行流程放置在第一单处理区域内;
在每个第一处理对象对应的第二单处理区域中放置第一处理对象对应的第二处理对象;
当历史测试数据为双对象数据时,使用双对象绘制方法制作测试BPMN图;
双对象绘制方法包括:
建立第一双处理区域以及第二双处理区域,当双对象数据的第一处理对象以及第二处理对象均为数据实施对象时,在第一双处理区域中放置第一处理对象的运行流程,在第二双处理区域中放置第二处理对象的运行流程,并标记第一处理对象与第二处理对象之间的数据操作;
当双对象数据的第一处理对象以及第二处理对象不均为数据实施对象时,使用单对象绘制策略进行绘制;
当历史测试数据为多对象数据时,使用多对象绘制方法制作测试BPMN图;
多对象绘制方法包括:
建立第一多处理区域以及第二多处理区域,将第一处理对象的运行流程放置在第一多处理区域中,并在第一多处理区域中标记第一处理对象之间的数据操作;
将第二处理对象放置在第二多处理区域中,并在第二多处理区域中标记第一处理对象与第二处理对象之间的数据操作。
7.根据权利要求6所述的一种基于BPMN的自动化测试方法,其特征在于,当接收到新的被测试数据时,对被测试数据进行预处理,并基于预处理结果匹配对应的测试BPMN图,使用对应的BPMN图对被测试数据进行自动化测试包括:
当接收到新的被测试数据时,对被测试数据使用对象区分处理进行预处理;
获取被测试数据的数据类型,基于预处理的结果在单对象数据1至单对象数据N1、双对象数据1至双对象数据N2或多对象数据1至多对象数据N3中匹配与被测试数据的数据类型相同的历史测试数据,记为参考测试数据;
基于参考测试数据对应的测试BPMN图对被测试数据进行自动化测试。
8.适用于权利要求1-7任一项所述的一种基于BPMN的自动化测试方法的系统平台,其特征在于,包括对象区分模块、处理对象生成模块、测试BPMN图绘制模块以及测试模块;
对象区分模块用于获取历史测试数据,对历史测试数据进行对象区分处理;
处理对象生成模块用于基于对象区分处理的结果获取第一处理对象以及第二处理对象;
测试BPMN图绘制模块用于基于第一处理对象的处理数据以及第二处理对象的处理数据绘制测试BPMN图;
所述处理数据包括输入数据、输出数据以及存储数据;
测试模块用于当接收到新的被测试数据时,对被测试数据进行预处理,并基于预处理结果匹配对应的测试BPMN图,使用对应的BPMN图对被测试数据进行自动化测试。
CN202311421876.9A 2023-10-31 2023-10-31 一种基于bpmn的自动化测试方法及其系统平台 Active CN117149664B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311421876.9A CN117149664B (zh) 2023-10-31 2023-10-31 一种基于bpmn的自动化测试方法及其系统平台

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311421876.9A CN117149664B (zh) 2023-10-31 2023-10-31 一种基于bpmn的自动化测试方法及其系统平台

Publications (2)

Publication Number Publication Date
CN117149664A CN117149664A (zh) 2023-12-01
CN117149664B true CN117149664B (zh) 2024-03-15

Family

ID=88908553

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311421876.9A Active CN117149664B (zh) 2023-10-31 2023-10-31 一种基于bpmn的自动化测试方法及其系统平台

Country Status (1)

Country Link
CN (1) CN117149664B (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113391996A (zh) * 2021-05-27 2021-09-14 东南大学 一种基于工作流程的软件接口组合执行测试方法
CN113900669A (zh) * 2021-10-12 2022-01-07 东禾软件(江苏)有限责任公司 基于bpmn的边缘设备目标检测流程自动化系统及方法
CN114201372A (zh) * 2021-12-15 2022-03-18 建信金融科技有限责任公司 异常告警的方法、装置、设备、介质和产品
CN114218100A (zh) * 2021-12-14 2022-03-22 中国建设银行股份有限公司 业务模型测试方法、装置、系统、设备、介质和程序产品
CN115269439A (zh) * 2022-08-29 2022-11-01 中国建设银行股份有限公司 数据处理系统的测试方法、装置、设备和可读存储介质
CN115952081A (zh) * 2022-12-05 2023-04-11 平安银行股份有限公司 一种软件测试方法、装置、存储介质及设备

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10733562B2 (en) * 2016-06-03 2020-08-04 Arkadiusz Binder Method, device, system of model-driven engineering of efficient industrial automation process and business process modeling with BPMN using native computation of XML schemas and objects
CN111766253A (zh) * 2019-03-15 2020-10-13 鸿富锦精密电子(成都)有限公司 锡膏印刷品质检测方法、数据处理装置及计算机存储介质
US20230267035A1 (en) * 2022-02-24 2023-08-24 The Bank Of New York Mellon System and methods for application failover automation

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113391996A (zh) * 2021-05-27 2021-09-14 东南大学 一种基于工作流程的软件接口组合执行测试方法
CN113900669A (zh) * 2021-10-12 2022-01-07 东禾软件(江苏)有限责任公司 基于bpmn的边缘设备目标检测流程自动化系统及方法
CN114218100A (zh) * 2021-12-14 2022-03-22 中国建设银行股份有限公司 业务模型测试方法、装置、系统、设备、介质和程序产品
CN114201372A (zh) * 2021-12-15 2022-03-18 建信金融科技有限责任公司 异常告警的方法、装置、设备、介质和产品
CN115269439A (zh) * 2022-08-29 2022-11-01 中国建设银行股份有限公司 数据处理系统的测试方法、装置、设备和可读存储介质
CN115952081A (zh) * 2022-12-05 2023-04-11 平安银行股份有限公司 一种软件测试方法、装置、存储介质及设备

Also Published As

Publication number Publication date
CN117149664A (zh) 2023-12-01

Similar Documents

Publication Publication Date Title
US20080155335A1 (en) Graphical analysis to detect process object anomalies
CN111522728A (zh) 自动化测试用例的生成方法、电子设备及可读存储介质
CN111414402A (zh) 一种日志威胁分析规则生成方法及装置
CN111583000B (zh) 围标串标行为识别方法、装置、计算机设备及存储介质
CN108763051B (zh) 电子装置、交易软件运行风险预警方法及存储介质
CN113360394A (zh) 代码测试覆盖率统计方法及装置
CN115657890A (zh) 一种pra机器人可定制方法
CN117149664B (zh) 一种基于bpmn的自动化测试方法及其系统平台
CN113220597A (zh) 测试方法、测试装置、电子设备及存储介质
CN115629940A (zh) 一种微服务全链路追踪方法、装置、系统及介质
CN113282504A (zh) 一种增量代码覆盖率检测方法及业务开发方法、装置
CN114328257A (zh) 自动化测试用例执行方法、系统及电子设备
CN113935295A (zh) 一种估值表汇总方法、装置、设备及介质
CN113806231A (zh) 一种代码覆盖率分析方法、装置、设备和介质
CN112132544A (zh) 业务系统的巡检方法及装置
CN113094095B (zh) 一种敏捷开发进度确定方法及装置
CN112035364B (zh) 功能测试结果评估方法及装置
CN114911699A (zh) 一种数据处理方法
CN116860242A (zh) 基于业务架构的数据埋点识别方法及装置
CN114971890A (zh) 基于渠道的多规则自动化派单方法、装置、设备及介质
CN114510399A (zh) 基于区块链的耗时监控方法、装置、设备及介质
CN116703505A (zh) 一种订单信息的判断方法及装置
CN117539762A (zh) 一种测试用例推荐方法、装置、设备和存储介质
CN116090979A (zh) 配置管理申请单的生成方法和装置
CN115941726A (zh) 一种工业设备监控方法、系统、电子设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant