CN110825628A - 一种基于流程图生成测试脚本的方法及装置 - Google Patents
一种基于流程图生成测试脚本的方法及装置 Download PDFInfo
- Publication number
- CN110825628A CN110825628A CN201911047831.3A CN201911047831A CN110825628A CN 110825628 A CN110825628 A CN 110825628A CN 201911047831 A CN201911047831 A CN 201911047831A CN 110825628 A CN110825628 A CN 110825628A
- Authority
- CN
- China
- Prior art keywords
- sub
- flow chart
- main flow
- test script
- merged
- 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.)
- Pending
Links
Images
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/3684—Test management for test design, e.g. generating new test cases
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)
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种基于流程图生成测试脚本的方法、装置、电子设备以及计算机可短存储介质。该方法包括:根据针对子流程图的选取指令,确定选取的至少一个子流程图;从流程图库中确定内嵌所述子流程图的主流程图;确定选取的至少两个待合并的主流程图;根据所述子流程图,合并所述待合并的主流程图生成目标主流程图;根据所述待合并的主流程图的测试脚本,生成与所述目标主流程图对应的目标测试脚本。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种基于流程图生成测试脚本的方法、装置、电子设备以及计算机可读存储介质。
背景技术
目前,传统的自动化测试技术,一般是通过自动化测试工具编写测试脚本,但这种编写自动化测试脚本的方式,开发时间较长,并且一旦需求发生变更,如页面或业务流程发生变化,需要测试人员重新根据需求,编写测试脚本,可能会出现同一业务场景有多套相关的测试脚本,并且其他测试人员通过查看测试脚本也较难了解整个业务逻辑,降低了的测试效率。
发明内容
本说明书实施例提供一种基于流程图生成测试脚本的方法、装置、电子设备以及计算机可读存储介质,解决了现有技术中自动化测试过程中测试效率低的问题。
本说明书实施例采用下述技术方案:
一种基于流程图生成测试脚本的方法,包括:
根据针对子流程图的选取指令,确定选取的至少一个子流程图;
从流程图库中确定内嵌所述子流程图的主流程图;
确定选取的至少两个待合并的主流程图;
根据所述子流程图,合并所述待合并的主流程图生成目标主流程图;
根据所述待合并的主流程图的测试脚本,生成与所述目标主流程图对应的目标测试脚本。
一种基于流程图生成测试脚本的装置,包括:
确定子流程图模块,用于根据针对子流程图的选取指令,确定选取的至少一个子流程图;
第一确定主流程图模块,用于从流程图库中确定内嵌所述子流程图的主流程图;
第二确定主流程图模块,用于确定选取的至少两个待合并的主流程图;
合并模块,用于根据所述子流程图,合并所述待合并的主流程图生成目标主流程图;
测试脚本生成模块,用于根据所述待合并的主流程图的测试脚本,生成与所述目标主流程图对应的目标测试脚本。
本说明书实施例采用的上述至少一个技术方案能够达到以下有益效果:
通过根据针对子流程图的选取指令,确定选取的至少一个子流程,从流程图库中确定内嵌所述子流程图的主流程图,确定选取的至少两个待合并的主流程图,根据子流程图合并待合并的主流程图生成目标主流程图,根据待合并的主流程图的测试脚本,生成与目标主流程图对应的目标测试脚本,可以实现基于流程图自动生成测试脚本,而不需要测试人员针对业务场景编写测试脚本,通过合并流程图的方式还可以降低测试人员维护测试脚本和流程图的成本,方便测试人员通过查看流程图了解整个业务逻辑,提高了测试效率。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本说明书实施例提供的基于流程图生成测试脚本的方法流程示意图;
图2为本说明书实施例提供的确定选取的子流程图的方法流程示意图;
图3为本说明书实施例提供的车险商业险出单主流程图;
图4为本说明书实施例提供的车险交强险出单主流程图;
图5为本说明书实施例提供的车险商业交强险合并流程图;
图6为本说明书实施例提供的生成目标测试脚本的方法流程示意图;
图7为本说明书实施例提供的生成第一测试脚本的方法流程示意图;
图8为本说明书实施例提供的添加标识后的车险商业交强险合并流程图;
图9为本说明书实施例提供的基于流程图生成测试脚本的装置结构示意图;
图10为本说明书实施例提供的生成目标测试脚本的装置结构示意图;
图11为本说明书实施例提供的生成第一测试脚本的装置结构示意图;
图12为本说明书实施例提供的电子设备的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
以下结合附图,详细说明本申请各实施例提供的技术方案。
现有技术中,一般是通过自动化测试工具编写测试脚本,但这种编写自动化测试脚本的方式,开发时间较长,并且一旦需求发生变更,如页面或业务流程发生变化,需要测试人员重新根据需求,编写测试脚本,可能会出现同一业务场景有多套相关的测试脚本的问题,并且其他测试人员通过查看测试脚本也较难了解整个业务逻辑,降低了的测试效率。
为解决上述技术问题,本说明书实施例提供了一种基于流程图生成测试脚本的方法,用于提高自动化测试过程的测试效率。该方法的流程示意图如图1 所示,包括下述步骤:
步骤S11:根据针对子流程图的选取指令,确定选取的至少一个子流程图。
这里的子流程图可以是主流程图中的部分流程图。
这里的选取指令,具体可以是用户通过可视化界面对子流程图的选取指令,这里的可视化界面可以包含响应对子流程图的选取操作的控件。在实际应用中,所述可视化界面也可以包含对子流程图的检索、查询以及编辑等操作控件,以便用户检索、查询以及编辑子流程图。
这里的子流程图可以通过所述可视化界面展示给用户,以供用户对子流程图进行选取。在实际应用中,为了便于对子流程图的选取,可以将子流程图的名称或标识展示给用户,这里的名称或标识可以用于表征子流程图。
在实际应用中,子流程图可以存储于流程图库中,其中,所述流程图库可以是可读存储介质,对此本申请不做限制。
在本说明书实施例中,确定选取的至少一个子流程图,可以通过下述步骤确定,流程示意图见图2:
步骤S121:若所述选取指令针对单个子流程图,则确定所述选取指令选取的单个子流程图。
步骤S122:若所述选取指令针对多个子流程图,则判断所述多个子流程图是否是连续的。
这里的连续,可以是多个子流程图在主流程图中的流程执行顺序是连续的,即,多个子流程图在主流程图中所在的节点位置是连续的,且中间不包含其它的流程节点。流程图中的每个框图可以称为流程图的节点。
为了便于理解所述连续,这里提供一张包含子流程图的主流程图以作举例说明,示意图见图3,其中,“基本信息录入子流程图”与“车辆信息录入子流程图”在“车险商业险出单主流程图”中的流程执行顺序是连续的,即,先执行基本信息录入子流程,再执行车辆信息录入子流程;而“基本信息录入子流程图”与“关系人信息录入子流程图”,由于两者中间有“车辆信息录入子流程图”则是不连续的。
这里的判断可以是根据子流程图在主流程图中的流程执行顺序,即,节点位置,判断多个子流程图是否是连续的。若是连续的则可以执行步骤S123,若是不连续的则可以执行步骤S124。
步骤S123:若是连续的,则确定所述选取指令选取的多个子流程图。
这里的连续的判断结果,可以是通过步骤S122确定的。
步骤S124:若不是连续的,则发出所述多个子流程图不连续的通知。
这里的不连续的判断结果,可以是通过步骤S122确定的。
这里的发出,可以是通过所述可视化界面,发出通知给用户,以告知用户选取的多个子流程图不是连续的,对于如何发出通知,本申请不做限制。这里的通知,可以是文字形式,例如:“您选择的多个子流程图不是连续的”,或者是标记形式,例如:通过高亮或者标红等形式标记子流程图,对此本申请不做限制。
通过判断用户选择的多个子流程图是否是连续的,可以方便后续根据子流程图合并主流程图,不会导致合并后的主流程图中流程执行过程出现错乱,并且利于测试人员根据流程图查看业务流程,同时还给予用户选取多个子流程图不连续的通知,实现较好的人机交互。
步骤S12:从流程图库中确定内嵌所述子流程图的主流程图。
这里的流程图库可以是上述存放子流程图的流程图库,为了便于管理,这里可以将主流程图和子流程图存储于所述流程图库中。
在实际应用中,所述流程图库中还可以存储子流程图和主流程图之间的包含关系,其中,所述包含关系可以是所述主流程图中包含哪些子流程图。当然所述包含关系也可以存储于其它数据库或者可读存储介质中,对此本申请不做限制。
在实际应用中,所述流程图库中,还可以存储主流程图和子流程图所属业务系统的名称、主流程图和子流程图的名称、主流程图和子流程图的版本号、是否是子流程图以及该主流程图和子流程图的存储路径等信息,以方便对流程图进行管理维护。
这里的确定内嵌所述子流程图的主流程图,可以是根据所述包含关系,从流程图库中获取内嵌了通过步骤S11确定的至少一个子流程图的主流程图,即,若选取的是单个子流程图,则获取内嵌所述单个子流程图的主流程图,若选取的是多个子流程图,则获取内嵌所述多个子流程图的主流程图。
在实际应用中,为了便于后续用户选择待合并的主流程图,这里可以根据所述包含关系,获取通过步骤S11选取的至少一个子流程图的主流程图的名称,并将所述主流程图的名称通过所述可视化界面展示给用户,以供用户进行选取。
步骤S13:确定选取的至少两个待合并的主流程图。
这里的至少两个待合并的主流程图,可以是用户根据实际需求,从通过步骤S12获取的主流程图中选取的待合并的主流程图。
在实际应用中,为了便于用户选取主流程图,这里可以是用户通过可视化界面发起对主流程图的名称的选取指令,这里的可视化界面可以包含响应对主流程图的名称的选取操作的控件。在实际应用中,所述可视化界面也可以包含对主流程图的检索、查询以及编辑等操作控件,以便用户检索、查询以及编辑主流程图。
步骤S14:根据所述子流程图,合并所述待合并的主流程图生成目标主流程图。
这里的待合并的主流程图可以是通过步骤S13确定的待合并的主流程图。这里的子流程图可以是通过步骤S11确定的子流程图。
在本说明书实施例中,合并所述待合并的主流图生成目标流程图,具体包括:
以一个待合并的主流程图为基础流程图,根据所述子流程图,将其它待合并的主流程图中除所述子流程图外的其它节点拼接到所述基础主流程图中,生成所述目标主流程图。
为了便于对上述合并过程的理解,这里以合并“车险商业险出单主流程图”和“车险交强险出单主流程图”为例,做解释说明,其中“车险交强险出单主流程图”的流程示意图如图4所示,具体合并过程如下:
以“车险商业险出单主流程图”为基础流程图,将“车险交强险出单主流程图”中,除“基本信息录入子流程图、车辆信息录入子流程图、关系人信息录入子流程图”其它节点,即,“基本信息录入子流程图、车辆信息录入子流程图、关系人信息录入子流程图”的前后节点,拼接至“车险商业险出单主流程图”中,生成合并后的目标主流程图,合并后的目标主流程图的示意图,可以如图5所示,这里可以命名合并后的目标主流程图为“车险商业交强险合并流程图”。其中,“基本信息录入子流程图、车辆信息录入子流程图、关系人信息录入子流程图”可以是通过步骤S11选取的子流程图。
需要注意的是,上述合并过程只是在实际应用中的一种具体实施方式,并不代表本说明书全部实施方式。对于以哪张主流程图作为基础流程图以及如何将其它节点拼接到基础流程图中,本申请不做限制。
步骤S15:根据所述待合并的主流程图的测试脚本,生成与所述目标主流程图对应的目标测试脚本。
这里的测试脚本以及目标测试脚本,可以是基于Python、Java等编程语言生成的程序代码,对于使用何种编程语言,本申请不做限制。
在实际应用中,为了便于根据流程图生成测试脚本,主流程图以及子流程图可以是基于一定格式规范绘制并存储的,具体来说,可以是基于业务流程建模符号(BusinessProcess Modeling Notation,BPMN)标准绘制流程图,并采用可扩展标记语言(XML,eXtensible Markup Language)文件格式存储流程图。
在实际应用中,在生成测试脚本前可以预先编写测试脚本模板,那么在根据流程图生成测试脚本时,可以是根据流程图中的元素,调用测试脚本模板,将流程图中的元素填充到测试脚本模板中生成测试脚本。为了便于理解,这里以基于Selenium webdriver自动化测试框架下的网页自动化测试脚本为例,做举例说明。
其中,测试脚本模板可以是如下表1:
表1:测试脚本模板
XML格式的登陆流程图可以是如下形式:
<laneSet id="">
<name="登录"password="a11111"userName="32938937">
</laneSet>
那么生成与之对应的测试脚本,可以是:
sendKeys(findElement(password),a11111);
sendKeys(findElement(userName),32938937);
click(findElement(By.name="登录"));
需要注意的是,上述生成测试脚本的过程,是本说明书实施例中提供的在实际应用中的一种实施方式,并不代表本说明书全部实施方式,对于采用何种规范绘制流程图以采用何种编程语言生成测试脚本,本申请不做限制。
在实际应用中,生成的测试脚本与待合并的主流程图之间存在对应关系,生成的目标测试脚本与合并后的主流程图之间也存在对应关系。
在本说明书一个或多个实施例中,根据待合并的主流程的测试脚本,生成与所述目标主流程图对应的目标测试脚本,可以具体包括以下步骤,流程示意图见图6:
步骤S151:生成所述待合并的主流程图的第一测试脚本。
本申请实施例中,生成待合并的主流程图的第一测试脚本,可以具体通过下述步骤生成,流程示意图见图7:
步骤S1511:生成所述待合并的主流程图中内嵌的子流程图的第二测试脚本。
以生成“车险商业险出单主流程图”的第二测试脚本为例,具体生成过程如下:
分别生成“基本信息录入子流程图、车辆信息录入子流程图、保险责任信息录入子流程图、关系人信息录入子流程图以及核保通过子流程图”的第二测试脚本,其中,所述第二测试脚本的代码具体生成过程,可以是如上述实施例中的过程相同,对此本申请不做限制。
步骤S1512:生成所述待合并的主流程图中的除所述内嵌的子流程图以外的其它节点的第三测试脚本。
以生成“车险商业险出单主流程图”的第三测试脚本为例,具体生成过程如下:
生成除“基本信息录入子流程图、车辆信息录入子流程图、保险责任信息录入子流程图、关系人信息录入子流程图以及核保通过子流程图”的其他节点的第三测试脚本,即,生成“开始、进入投保录入菜单、保费厘定、生成保费信息、保存并提交核保、生成投保单号、结束”等节点的第三测试脚本,其中,所述第三测试脚本的代码具体生成过程,可以是如上述实施例中的过程相同,对此本申请不做限制。
步骤S1513:拼接所述第二测试脚本和第三测试脚本,生成所述第一测试脚本。
这里的拼接,可以是将通过步骤S1511和S1512生成的第二测试脚本和第三测试脚本拼接到一起。在实际应用中,可以是根据主流程图中子流程图所在节点的位置,将第三测试脚本拼接到第二测试脚本中,对于如何拼接测试脚本,本申请不做限制。
拼接后的测试脚本可以是第一测试脚本。
步骤S152:打包所述第一测试脚本生成目标测试脚本。
这里的打包可以是将通过步骤S151生成的多个第一测试脚本,放在同一文件目录下,再采用压缩等方式生成一个文件包。
在实际应用中,当需要执行测试脚本时,可以解压文件包,依次执行文件包里的第一测试脚本,以对业务功能进行测试。
在实际应用中,生成的目标测试脚本还可以存储于测试脚本库中,以便于随时获取并执行测试脚本进行自动化测试,其中,所述测试脚本库可以是可读存储介质,对此本申请不做限制。
通过根据针对子流程图的选取指令,确定选取的至少一个子流程,从流程图库中确定内嵌所述子流程图的主流程图,确定选择的至少两个待合并的主流程图,根据子流程图合并待合并的主流程图生成目标主流程图,根据待合并的主流程图的测试脚本,生成与目标主流程图对应的目标测试脚本,可以实现基于流程图自动生成测试脚本,尤其是在部分功能发生变更时,相较于通过测试人员直接开发自动化测试脚本的方式,可以通过直接修改流程图,由修改后的流程图自动生成测试脚本,提高了测试效率,并且通过合并流程图的方式还可以降低测试人员维护测试脚本和流程图的成本,方便测试人员通过查看流程图了解整个业务逻辑。
在本说明书一个或多个实施例中,为了便于用户在修改合并后的主流程图时,合并前的主流程图中的内容可以同步更新,在根据所述子流程图,合并所述待合并的主流程图生成目标主流程图之后,还可以包括:
对所述目标主流程图中除所述子流程图以外的其它节点,添加上所述待合并的主流程图的标识,其中,所述待合并的主流程图的标识用于表征合并前的主流程图。
在实际应用中,合并前的主流程图中除用户选取的子流程图外还可以包含其它子流程图,并且主流程图中的子流程图可以是独立的流程图文件,那么在修改子流程图中的内容时,可以不通过对合并后的主流程图进行修改,所以这里在添加标识时,为了节省计算资源,还可以对合并后的主流程图中除选取的子流程图以外的其它子流程图不添加标识。
其中,所述标识可以是采用符号或者文本等形式,可以在合并后的流程图中识别出合并前的主流程图,即,所述待合并的主流程图。以给“车险商业交强险合并流程图”添加标识为例,添加后的流程图可以是如图8所示。其中,将除“基本信息录入子流程图、车辆信息录入子流程图、保险责任信息录入子流程图”的其他节点,添加上合并前的主流程图的名称并以双引号区分。
通过对所述目标主流程图中除所述子流程图以外的其它节点,添加上所述待合并的主流程图的标识,可以实现用户在修改合并后的主流程图时,合并前的主流程图中的内容可以同步更新,确保合并前主流程图与合并后的主流程图一致,从而降低了流程图的维护成本,更便于测试人员管理。
以上为本说明书实施例所提供的基于流程图生成测试脚本的方法,基于相同的发明构思,本说明书实施例还提供了相应的基于流程图生成测试脚本的装置。如图9所示,该装置具体包括:
确定子流程图模块21,用于根据针对子流程图的选取指令,确定选取的至少一个子流程图;
第一确定主流程图模块22,用于从流程图库中确定内嵌所述子流程图的主流程图;
第二确定主流程图模块23,用于确定选择的至少两个待合并的主流程图;
合并模块24,用于根据所述子流程图,合并所述待合并的主流程图生成目标主流程图;
测试脚本生成模块25,用于根据所述待合并的主流程图的测试脚本,生成与所述目标主流程图对应的目标测试脚本。
上述装置实施例的具体工作流程可以包括:确定子流程图模块21,根据针对子流程图的选取指令,确定选取的至少一个子流程图;第一确定主流程图模块21,从流程图库中确定内嵌所述子流程图的主流程图;第二确定主流程图模块22,确定选择的至少两个待合并的主流程图;合并模块23,根据所述子流程图,合并所述待合并的主流程图生成目标主流程图;测试脚本生成模块23,根据所述待合并的主流程图的测试脚本,生成与所述目标主流程图对应的目标测试脚本。
在一种实施方式中,所述确定子流程图模块21,具体包括:若所述选取指令针对单个子流程图,则确定所述选取指令选取的单个子流程图;若所述选取指令针对多个子流程图,则判断所述多个子流程图是否是连续的;若是连续的,则确定所述选取指令选取的多个子流程图;若不是连续的,则展示所述多个子流程图不连续的通知。
在一种实施方式中,所述合并模块24,具体包括:以一个待合并的主流程图为基础流程图,根据所述子流程图,将其它待合并的主流程图中除所述子流程图外的其它节点拼接到所述基础主流程图中,生成所述目标主流程图。
在一种实施方式中,所述装置,还可以包括,添加标识模块,具体用于对所述目标主流程图中除所述子流程图以外的其它节点,添加上所述待合并的主流程图的标识,其中,所述待合并的主流程图的标识用于表征合并前的主流程图。
在一种实施方式中,所述测试脚本生成模块25,装置示意图见图10,具体包括:
第一测试脚本生成模块251,用于生成所述待合并的主流程图的第一测试脚本;
目标测试脚本生成模块252,用于打包所述第一测试脚本生成目标测试脚本。
在一种实施方式中,所述第一测试脚本生成模块251,装置示意图见图11,具体包括:
第二测试脚本生成模块2511,用于生成所述待合并的主流程图中内嵌的子流程图的第二测试脚本;
第三测试脚本生成模块2512,用于生成所述待合并的主流程图中的除所述内嵌的子流程图以外的其它节点的第三测试脚本;
拼接模块2513,用于拼接所述第二测试脚本和第三测试脚本,生成所述第一测试脚本。
本说明书实施例,通过确定子流程图模块,根据针对子流程图的选取指令,确定选取的至少一个子流程,第一确定主流程模块,从流程图库中确定内嵌所述子流程图的主流程图,第二确定主流程图模块,确定选择的至少两个待合并的主流程图,合并模块,根据子流程图合并待合并的主流程图生成目标主流程图,测试脚本生成模块,根据待合并的主流程图的测试脚本,生成与目标主流程图对应的目标测试脚本,可以实现基于流程图自动生成测试脚本,尤其是在部分功能发生变更时,相较于通过测试人员直接开发自动化测试脚本的方式,可以通过直接修改流程图,由修改后的流程图自动生成测试脚本,提高了测试效率,并且通过合并流程图的方式还可以降低测试人员维护测试脚本和流程图的成本,方便测试人员通过查看流程图了解整个业务逻辑。
本说明书实施例还提出了一种电子设备,示意图请参考图12,在硬件层面,该电子设备包括处理器,可选地还包括内部总线、网络接口、存储器。其中,存储器可能包含内存,例如高速随机存取存储器(Random-Access Memory, RAM),也可能还包括非易失性存储器(non-volatile memory),例如至少1个磁盘存储器等。当然,该电子设备还可能包括其他业务所需要的硬件。
处理器、网络接口和存储器可以通过内部总线相互连接,该内部总线可以是ISA(Industry Standard Architecture,工业标准体系结构)总线、PCI(PeripheralComponent Interconnect,外设部件互连标准)总线或EISA(Extended Industry StandardArchitecture,扩展工业标准结构)总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图12中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
存储器,用于存放程序。具体地,程序可以包括程序代码,所述程序代码包括计算机操作指令。存储器可以包括内存和非易失性存储器,并向处理器提供指令和数据。
处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,在逻辑层面上形成应用基于流程图生成测试脚本装置。处理器,执行存储器所存放的程序,并至少用于执行以下操作:
根据针对子流程图的选取指令,确定选取的至少一个子流程图;
从流程图库中确定内嵌所述子流程图的主流程图;
确定选取的至少两个待合并的主流程图;
根据所述子流程图,合并所述待合并的主流程图生成目标主流程图;
根据所述待合并的主流程图的测试脚本,生成与所述目标主流程图对应的目标测试脚本。
上述如本申请图1所示实施例揭示的基于流程图生成测试脚本装置执行的方法可以应用于处理器中,或者由处理器实现。处理器可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器,包括中央处理器(CentralProcessing Unit,CPU)、网络处理器(Fetwork Processor,FP)等;还可以是数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific IntegratedCircuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本说明书实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本说明书实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。
该电子设备还可执行图1中基于流程图生成测试脚本装置执行的方法,并实现基于流程图生成测试脚本装置在图1所示实施例的功能,本说明书实施例在此不再赘述。
本说明书实施例还提出了一种计算机可读存储介质,该计算机可读存储介质存储一个或多个程序,该一个或多个程序包括指令,该指令当被包括多个应用程序的电子设备执行时,能够使该电子设备执行图1所示实施例中基于流程图生成测试脚本装置执行的方法,并至少用于执行:
根据针对子流程图的选取指令,确定选取的至少一个子流程图;
从流程图库中确定内嵌所述子流程图的主流程图;
确定选取的至少两个待合并的主流程图;
根据所述子流程图,合并所述待合并的主流程图生成目标主流程图;
根据所述待合并的主流程图的测试脚本,生成与所述目标主流程图对应的目标测试脚本。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、 CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本说明书实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和 /或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器 (RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存 (PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器 (CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (10)
1.一种基于流程图生成测试脚本的方法,其特征在于,包括:
根据针对子流程图的选取指令,确定选取的至少一个子流程图;
从流程图库中确定内嵌所述子流程图的主流程图;
确定选取的至少两个待合并的主流程图;
根据所述子流程图,合并所述待合并的主流程图生成目标主流程图;
根据所述待合并的主流程图的测试脚本,生成与所述目标主流程图对应的目标测试脚本。
2.如权利要求1所述的方法,其特征在于,根据针对子流程图的选取指令,确定选取的至少一个子流程图,具体包括:
若所述选取指令针对单个子流程图,则确定所述选取指令选取的单个子流程图;
若所述选取指令针对多个子流程图,则判断所述多个子流程图是否是连续的;
若是连续的,则确定所述选取指令选取的多个子流程图;
若不是连续的,则发出所述多个子流程图不连续的通知。
3.如权利要求1所述的方法,其特征在于,根据所述子流程图,合并所述待合并的主流程图生成目标主流程图,具体包括:
以一个待合并的主流程图为基础流程图,根据所述子流程图,将其它待合并的主流程图中除所述子流程图外的其它节点拼接到所述基础主流程图中,生成所述目标主流程图。
4.如权利要求3所述的方法,其特征在于,在根据所述子流程图,合并所述待合并的主流程图生成目标主流程图之后,还包括:
对所述目标主流程图中除所述子流程图以外的其它节点,添加上所述待合并的主流程图的标识,其中,所述待合并的主流程图的标识用于表征合并前的主流程图。
5.如权利要求1所述的方法,其特征在于,根据所述待合并的主流程图的测试脚本,生成与所述目标主流程图对应的目标测试脚本,具体包括:
生成所述待合并的主流程图的第一测试脚本;
打包所述第一测试脚本生成目标测试脚本。
6.如权利要求5所述的方法,其特征在于,生成所述待合并的主流程图的第一测试脚本,具体包括:
生成所述待合并的主流程图中内嵌的子流程图的第二测试脚本;
生成所述待合并的主流程图中的除所述内嵌的子流程图以外的其它节点的第三测试脚本;
拼接所述第二测试脚本和第三测试脚本,生成所述第一测试脚本。
7.一种基于流程图生成测试脚本的装置,其特征在于,包括:
确定子流程图模块,用于根据针对子流程图的选取指令,确定选取的至少一个子流程图;
第一确定主流程图模块,用于从流程图库中确定内嵌所述子流程图的主流程图;
第二确定主流程图模块,用于确定选取的至少两个待合并的主流程图;
合并模块,用于根据所述子流程图,合并所述待合并的主流程图生成目标主流程图;
测试脚本生成模块,用于根据所述待合并的主流程图的测试脚本,生成与所述目标主流程图对应的目标测试脚本。
8.如权利要求7所述的装置,其特征在于,所述合并模块,具体用于以一个待合并的主流程图为基础流程图,根据所述子流程图,将其它待合并的主流程图中除所述子流程图外的其它子流程图拼接到所述基础主流程图中,生成所述目标主流程图。
9.一种电子设备,其特征在于,包括:存储器、处理器及存储在所在存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1至6中任一项所述的基于流程图生成测试脚本的方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至6中任一项所述的基于流程图生成测试脚本的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911047831.3A CN110825628A (zh) | 2019-10-30 | 2019-10-30 | 一种基于流程图生成测试脚本的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911047831.3A CN110825628A (zh) | 2019-10-30 | 2019-10-30 | 一种基于流程图生成测试脚本的方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110825628A true CN110825628A (zh) | 2020-02-21 |
Family
ID=69551498
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911047831.3A Pending CN110825628A (zh) | 2019-10-30 | 2019-10-30 | 一种基于流程图生成测试脚本的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110825628A (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170060842A1 (en) * | 2015-08-28 | 2017-03-02 | Accenture Global Services Limited | Automated term extraction |
CN109413686A (zh) * | 2018-10-19 | 2019-03-01 | 京信通信系统(中国)有限公司 | 基站自动化测试系统、方法和装置 |
CN109710528A (zh) * | 2018-12-25 | 2019-05-03 | 中国人民财产保险股份有限公司 | 一种测试脚本生成方法、装置、设备和介质 |
CN109918296A (zh) * | 2019-02-14 | 2019-06-21 | 百度在线网络技术(北京)有限公司 | 软件自动化测试方法及装置 |
CN110262965A (zh) * | 2019-05-22 | 2019-09-20 | 深圳壹账通智能科技有限公司 | 一种应用程序的测试方法及设备 |
-
2019
- 2019-10-30 CN CN201911047831.3A patent/CN110825628A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170060842A1 (en) * | 2015-08-28 | 2017-03-02 | Accenture Global Services Limited | Automated term extraction |
CN109413686A (zh) * | 2018-10-19 | 2019-03-01 | 京信通信系统(中国)有限公司 | 基站自动化测试系统、方法和装置 |
CN109710528A (zh) * | 2018-12-25 | 2019-05-03 | 中国人民财产保险股份有限公司 | 一种测试脚本生成方法、装置、设备和介质 |
CN109918296A (zh) * | 2019-02-14 | 2019-06-21 | 百度在线网络技术(北京)有限公司 | 软件自动化测试方法及装置 |
CN110262965A (zh) * | 2019-05-22 | 2019-09-20 | 深圳壹账通智能科技有限公司 | 一种应用程序的测试方法及设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108415832B (zh) | 接口自动化测试方法、装置、设备及存储介质 | |
CN107644286B (zh) | 工作流处理方法及装置 | |
US8245186B2 (en) | Techniques for offering and applying code modifications | |
CN109614324B (zh) | 一种测试用例生成方法和装置 | |
US20160124914A1 (en) | Page Processing for Mobile App | |
CN109800154B (zh) | 测试数据的加载方法、装置、计算机设备及存储介质 | |
CN108614702B (zh) | 字节码优化方法及装置 | |
CN106933887B (zh) | 一种数据可视化方法及装置 | |
CN112581018A (zh) | 一种流程任务管理方法、系统、装置以及存储介质 | |
CN113010169A (zh) | 用于将ui图转换成代码文件的方法和装置 | |
CN110716804A (zh) | 无用资源的自动删除方法、装置、存储介质及电子设备 | |
CN114048415A (zh) | 表单生成方法及装置、电子设备和计算机可读存储介质 | |
CN106874181B (zh) | 一种接口转换的验证方法和装置 | |
CN109542775B (zh) | 一种测试脚本的生成和执行方法及装置 | |
CN112749308A (zh) | 一种数据标注方法、装置及电子设备 | |
CN110825628A (zh) | 一种基于流程图生成测试脚本的方法及装置 | |
CN113485746B (zh) | 应用程序接口文档的生成方法及装置 | |
US20210349808A1 (en) | Source quality check service | |
CN114398283A (zh) | 用户界面的自动化测试方法、装置、电子设备及存储介质 | |
CN114691112A (zh) | 一种数据处理方法、装置及数据处理服务器 | |
CN110018844B (zh) | 决策触发方案的管理方法、装置和电子设备 | |
CN110688144B (zh) | 业务接口配置优化的方法、装置及电子设备 | |
CN107479899B (zh) | 文件处理方法和装置、存储介质及处理器 | |
CN116932399A (zh) | 报文生成方法、装置及非易失性存储介质 | |
CN117472372B (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 |