CN109144869A - 自动化测试方法、装置、计算机设备及存储介质 - Google Patents

自动化测试方法、装置、计算机设备及存储介质 Download PDF

Info

Publication number
CN109144869A
CN109144869A CN201810935577.XA CN201810935577A CN109144869A CN 109144869 A CN109144869 A CN 109144869A CN 201810935577 A CN201810935577 A CN 201810935577A CN 109144869 A CN109144869 A CN 109144869A
Authority
CN
China
Prior art keywords
test
subtemplate
test case
functional module
template
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
Application number
CN201810935577.XA
Other languages
English (en)
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.)
Ping An Technology Shenzhen Co Ltd
Original Assignee
Ping An Technology Shenzhen 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 Ping An Technology Shenzhen Co Ltd filed Critical Ping An Technology Shenzhen Co Ltd
Priority to CN201810935577.XA priority Critical patent/CN109144869A/zh
Publication of CN109144869A publication Critical patent/CN109144869A/zh
Pending legal-status Critical Current

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
    • 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

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和图2,图1为本发明实施例提供的自动化测试方法的应用场景示意图。图2为本发明实施例提供的自动化测试方法的示意性流程图。该自动化测试方法在终端10中执行,在执行过程中与服务器20进行交互,共同完成自动化测试。
图2是本发明实施例提供的自动化测试方法的流程示意图。如图所示,该方法包括以下步骤S110-150。
S110、读取用户根据测试需求配置的自动化测试模板;其中,所述自动化测试模板包括父模板和子模板,所述父模板包括有多个功能模块的信息及每个功能模块所对应的子模板的信息,所述子模板包括有多个测试用例的信息。
在一实施例中,自动化测试模板具体为Excel表格,所述自动化测试模板中包括用于执行测试用例的所有测试前置条件以及数据等。例如,用于表征项目中各功能模块测试的父模板表格以及用于表征对应功能模块的测试用的例的子模板表格。如图表1和表2所示。
功能模块 子模板 执行选项 执行结果
集团 JT001 成功
子公司A JT002 未成功
子公司B JT003 未成功
表1
JT001
表2
其中,父模板表格中包括功能模块、子模板、是否执行以及执行结果等,子模板表格中包括用例描述、数据准备、请求地址、执行选项、执行结果以及期望结果等。自动化测试模板简单易用,不懂编码的用户也可以进行维护,提高了程序可读性。且由于业务逻辑与测试脚本分离,测试脚本与测试数据分离,使得需求变动后易于维护,用户可根据需求对测试用例进行增、删、改、查,直接在测试用例脚本中修改即可,维护成本低,对于测试数据准备也一样可以直接修改即可,提高了可重用性。
S120、根据所述父模板确定待执行的功能模块及相应的子模板。
在一实施例中,在进行自动化测试时,用户根据测试需求选择父模板中各功能模块进行测试。例如,功能模块包括集团、子公司A以及子公司B,用户仅需要测试集团的功能,即在父模板表格中的执行选项中对应集团选择“是”,其余均选择“否”,即可仅选择集团进行测试。
在一实施例中,如图3所示,所述步骤S120包括以下步骤:S121-S123。
S121、根据所述执行选项的内容判断所述父模板中每个所述功能模块是否为用户所选择的功能模块。
在一实施例中,通过检测自动化测试模板中父模板各功能模块对应的执行选项来确定是用户所选择的功能模块,用户在配置自动化测试模板时根据测试需求预先配置好所要测试的功能模块。
S122、若所述功能模块为用户所选择的功能模块,将该功能模块作为待执行的功能模块。
在一实施例中,在子模板中功能模块对应的执行选项的内容为是,那么该功能模块为用户所要进行测试的模块。
S123、根据所述待执行的功能模块所对应的子模板的编号确定相应的子模板。
在一实施例中,子模板编号是表征子模板的名称,确定该功能模块为待执行的功能模块后,那么通过在父模板中该功能模块对应的子模板编号确定待执行的子模板。
在一实施例中,所述步骤S121之后,还包括以下步骤:若所述功能模块非用户所选择的功能模块,生成未执行所述功能模块的记录并写入到日志文件中。
在一实施例中,在子模板中功能模块对应的执行选项内容为否,那么该功能模块不是用户所选择的功能模块,在确定该功能模块不是用户所选择的功能模块后,不执行该功能模块,且将不执行该功能模块生成记录写入到日志文件中,以让查看日志文件的用户可以清楚的了解到哪些功能模块有执行哪些功能模块没有执行。
S130、根据所确定的子模板确定待执行的测试用例。
在一实施例中,每个功能模块对应有子模板,根据预设功能模块对应的子模板表格进行测试。例如,预设功能模块为集团,集团中对应子模板为JT001,那么集团被选中后则根据JT001子模板表格执行测试用例。子模板表格中包括有多组测试用例,例如,JT001_7C01、JT002_7C02以及JT003_7C03等。用户可根据用例描述任意选择需要执行的测试用例进行测试,例如,用户仅需要测试集团能否正常登录,测试用例为JT001_7C01的用例描述为“登录集团的账号”,那么用户则在该测试用例对应的执行选项中选择是,其余均选择“否”,即可仅执行JT001_7C01测试用例以测试集团能否正常登录。
在一实施例中,如图4所示,所述步骤S130包括以下步骤:S131-S132。
S131、根据所述执行选项的内容判断所述子模板中的测试用例是否为用户所选择的测试用例。
在一实施例中,通过检测自动化测试模板中子模板各测试用例对应的执行选项来确定是用户所选择的测试用例,用户在配置自动化测试模板时根据测试需求预先配置好所要测试的测试用例。
S132、若所述测试用例为用户所选择的测试用例,将该测试用例作为待执行的测试用例。
在一实施例中,在子模板中测试用例对应的执行选项的内容为是,那么该测试用例为用户所要进行测试的用例。在确定该测试用例为待执行的测试用例后,准备测试用例需要的数据准备,测试用例根据数据准备进行测试,例如,在子模板中测试用例JT001_7C01对应的数据准备JT001_7B01,读取JT001_7B01脚本为执行测试用例提供测试数据。
在一实施例中,所述步骤S132之后,还包括以下步骤:若所述测试用例非用户所选择的测试用例,生成未执行所述测试用例的记录并写入到日志文件中。
在一实施例中,若子模板中测试用例对应的执行选项内容为否,那么该测试用例不是用户所选择的测试用例,在确定该测试用例不是用户所选择的测试用例后,不执行该测试用例,且将不执行该测试用例生成记录写入到日志文件中,以让查看日志文件的用户可以清楚的了解到哪些测试用例有执行哪些测试用例没有执行。
S140、执行所述待执行的测试用例。
在一实施例中,如图5所示,所述步骤S140包括以下步骤:S141~S142。
S141、根据所述子模板中所述待执行的测试用例所对应的请求地址来调用测试用例脚本。
在一实施例中,所述请求地址是用于调用测试用例脚本的地址,在子模板中每个测试用例均对应有请求地址,根据请求地址来调用测试用例脚本。
S142、执行所述测试用例脚本。
在一实施例中,在得到测试用例脚本后根据该测试用例脚本进行测试。
在一实施例中,如图6所示,所述步骤S140之后,还包括步骤:S143~S144。
S143、更新所述子模板的执行结果。
在一实施例中,执行结果用于判断测试用例是否执行成功,在执行测试用例时,被测试对象有可能成功执行也有可能未成功执行,因此需要先判断执行结果是否成功。通过接收所述测试用例中被测试对象返回的执行结果来判断所述测试用例是否执行成功。例如,在执行JT001_7C01测试用例时,测试对象为集团,若能够登录到集团则为执行成功,若不能够登录到集团则为未执行成功。最后将得到的执行结果更新到子模板中。
S144、若所述测试用例的执行结果为未执行成功,从所述子模板中获取该测试用例的请求地址,生成包含所述请求地址和所述执行结果的记录并写入到日志文件中。
在一实施例中,若执行结果为未成功,那么接收测试对象返回的未成功执行的原因记录写入到日志文件中,且将子模板中该测试用例对应的请求地址一同写入到日志文件中,以便用户调用测试用例脚本查找错因。例如,在执行JT001_7C01测试用例时,测试对象集团未登录成功,因为集团的页面无法打开导致无法输入账号和密码,将未执行成功的原因形成记录写入到日志文件中,以便查看日志文件的用户能够简洁清晰地了解到未成功执行的原因。
S150、接收所述测试用例中被测试对象返回的测试结果并生成测试报告。
在一实施例中,测试报告是用于记录执行测试用例的过程,其中统计了包括所执行的功能模块,所执行的测试用例,测试用例的执行结果以及测试用例的测试结果等所有的测试信息,用户可通过测试报告详细地了解到整个测试的过程。例如,在执行JT001_7C01测试用例时,测试对象集团登录成功,那么返回的测试结果为成功登录的账号和密码以及该账号的其他信息,根据返回的测试结果生成测试报告。
在一实施例中,子模板中还包括有期望结果,期望结果是执行测试用例后所得预期实现的结果。根据子模板中测试用例对应的期望结果与测试结果进行对比,若测试结果与期望结果相同,测试结果符合期望结果;若测试结果与期望结果不同,那么测试结果为不符合期望结果。将不符合期望结果的测试结果和该测试用例的请求地址形成记录写入到日志文件中,以便用户查看日志文件和调用测试用例脚本查找错因。例如,在执行JT001_7C01测试用例时,根据测试数据准备JT001_7B01来进行测试,测试数据提供的账号名为1234,预期结果为登入到账号名为1234的账号中。若测试对象集团返回的测试结果为登入到了账号名为1234的账号中,表明测试结果与期望结果相同,测试结果符合期望结果;若测试对象集团返回的测试结果为登入到了帐号名为abcd的账号中,表明测试结果与期望结果不同,测试结果不符合期望结果,将测试结果为登入到账号名为abcd的账号形成记录写入到日志文件中,以便用户分析错误的原因。
本发明实施例所展示了一种自动化测试方法,通过读取用户根据测试需求配置的自动化测试模板;其中,所述自动化测试模板包括父模板和子模板,根据所述父模板确定待执行的功能模块及相应的子模板;根据所确定的子模板确定待执行的测试用例;执行所述待执行的测试用例;接收所述测试用例中被测试对象返回的测试结果并生成测试报告,可以在需求变动后易于维护,程序可读性强、重用性高,节省开发成本和维护成本。
图7是本发明实施例提供的一种自动化测试装置200的示意性框图。如图7所示,对应于以上自动化测试方法,本发明还提供一种自动化测试装置200。该自动化测试装置200包括用于执行上述自动化测试方法的单元,该装置可以被配置于台式电脑、平板电脑、手提电脑、等终端中。具体地,请参阅图7,该自动化测试装置200包括读取单元210、第一确定单元220、第二确定单元230、执行单元240以及生成单元250。
读取单元210,用于读取用户根据测试需求配置的自动化测试模板;其中,所述自动化测试模板包括父模板和子模板,所述父模板包括有多个功能模块的信息及每个功能模块所对应的子模板的信息,所述子模板包括有多个测试用例的信息。
在一实施例中,自动化测试模板具体为Excel表格,所述自动化测试模板中包括用于执行测试用例的所有测试前置条件以及数据等。例如,用于表征项目中各功能模块测试的父模板表格以及用于表征对应功能模块的测试用的例的子模板表格。如图表1和表2所示。
功能模块 子模板 执行选项 执行结果
集团 JT001 成功
子公司A JT002 未成功
子公司B JT003 未成功
表1
JT001
表2
其中,父模板表格中包括功能模块、子模板、是否执行以及执行结果等,子模板表格中包括用例描述、数据准备、请求地址、执行选项、执行结果以及期望结果等。自动化测试模板简单易用,不懂编码的用户也可以进行维护,提高了程序可读性。且由于业务逻辑与测试脚本分离,测试脚本与测试数据分离,使得需求变动后易于维护,用户可根据需求对测试用例进行增、删、改、查,直接在测试用例脚本中修改即可,维护成本低,对于测试数据准备也一样可以直接修改即可,提高了可重用性。
第一确定单元220,用于根据所述父模板确定待执行的功能模块及相应的子模板。
在一实施例中,在进行自动化测试时,用户根据测试需求选择父模板中各功能模块进行测试。例如,功能模块包括集团、子公司A以及子公司B,用户仅需要测试集团的功能,即在父模板表格中的执行选项中对应集团选择“是”,其余均选择“否”,即可仅选择集团进行测试。
在一实施例中,如图8所示,所述第一确定单元220包括以下子单元:第一判断单元221、第一确定子单元222、以及第二确定子单元223。
第一判断单元221,用于根据所述执行选项的内容判断所述父模板中每个所述功能模块是否为用户所选择的功能模块。
在一实施例中,通过检测自动化测试模板中父模板各功能模块对应的执行选项来确定是用户所选择的功能模块,用户在配置自动化测试模板时根据测试需求预先配置好所要测试的功能模块。
第一确定子单元222,用于若所述功能模块为用户所选择的功能模块,将该功能模块作为待执行的功能模块。
在一实施例中,在子模板中功能模块对应的执行选项的内容为是,那么该功能模块为用户所要进行测试的模块。
第二确定子单元223,用于根据所述待执行的功能模块所对应的子模板的编号确定相应的子模板。
在一实施例中,子模板编号是表征子模板的名称,确定该功能模块为待执行的功能模块后,那么通过在父模板中该功能模块对应的子模板编号确定待执行的子模板。
在一实施例中,所述自动化测试装置还包括:第一写入单元224。
第一写入单元224,用于若所述功能模块非用户所选择的功能模块,生成未执行所述功能模块的记录并写入到日志文件中。
在一实施例中,在子模板中功能模块对应的执行选项内容为否,那么该功能模块不是用户所选择的功能模块,在确定该功能模块不是用户所选择的功能模块后,不执行该功能模块,且将不执行该功能模块生成记录写入到日志文件中,以让查看日志文件的用户可以清楚的了解到哪些功能模块有执行哪些功能模块没有执行。
第二确定单元230,用于根据所确定的子模板确定待执行的测试用例。
在一实施例中,每个功能模块对应有子模板,根据预设功能模块对应的子模板表格进行测试。例如,预设功能模块为集团,集团中对应子模板为JT001,那么集团被选中后则根据JT001子模板表格执行测试用例。子模板表格中包括有多组测试用例,例如,JT001_7C01、JT002_7C02以及JT003_7C03等。用户可根据用例描述任意选择需要执行的测试用例进行测试,例如,用户仅需要测试集团能否正常登录,测试用例为JT001_7C01的用例描述为“登录集团的账号”,那么用户则在该测试用例对应的执行选项中选择是,其余均选择“否”,即可仅执行JT001_7C01测试用例以测试集团能否正常登录。
在一实施例中,如图9所示,所述第二确定单元230包括以下子单元:第二判断单元231和第三确定子单元232。
第二判断单元231,用于根据所述执行选项的内容判断所述子模板中的测试用例是否为用户所选择的测试用例。
在一实施例中,通过检测自动化测试模板中子模板各测试用例对应的执行选项来确定是用户所选择的测试用例,用户在配置自动化测试模板时根据测试需求预先配置好所要测试的测试用例。
第三确定子单元232,用于若所述测试用例为用户所选择的测试用例,将该测试用例作为待执行的测试用例。
在一实施例中,在子模板中测试用例对应的执行选项的内容为是,那么该测试用例为用户所要进行测试的用例。在确定该测试用例为待执行的测试用例后,准备测试用例需要的数据准备,测试用例根据数据准备进行测试,例如,在子模板中测试用例JT001_7C01对应的数据准备JT001_7B01,读取JT001_7B01脚本为执行测试用例提供测试数据。
在一实施例中,所述自动化测试装置还包括:第二写入单元233。
第二写入单元233,用于若所述测试用例非用户所选择的测试用例,生成未执行所述测试用例的记录并写入到日志文件中。
在一实施例中,在子模板中测试用例对应的执行选项内容为否,那么该测试用例不是用户所选择的测试用例,在确定该测试用例不是用户所述选择的测试用例后,不执行该测试用例,且将不执行该测试用例生成记录写入到日志文件中,以让查看日志文件的用户可以清楚的了解到哪些测试用例有执行哪些测试用例没有执行。
执行单元240,用于执行所述待执行的测试用例。
在一实施例中,如图10所示,所述执行单元240包括以下子单元:调用单元241和脚本单元242。
调用单元241,用于根据所述子模板中所述待执行的测试用例所对应的请求地址来调用测试用例脚本。
在一实施例中,所述请求地址是用于调用测试用例脚本的地址,在子模板中每个测试用例均对应有请求地址,根据请求地址来调用测试用例脚本。
脚本单元242,用于执行所述测试用例脚本。
在一实施例中,在得到测试用例脚本后根据该测试用例脚本进行测试。
在一实施例中,如图11所示,所述自动化测试装置还包括:更新单元243和第三写入单元244。
更新单元243,用于更新所述子模板的执行结果。
在一实施例中,执行结果用于判断测试用例是否执行成功,在执行测试用例时,被测试对象有可能成功执行也有可能未成功执行,因此需要先判断执行结果是否成功。通过接收所述测试用例中被测试对象返回的执行结果来判断所述测试用例是否执行成功。例如,在执行JT001_7C01测试用例时,测试对象为集团,若能够登录到集团则为执行成功,若不能够登录到集团则为未执行成功。最后将得到的执行结果更新到子模板中。
第三写入单元244,用于若所述测试用例的执行结果为未执行成功,从所述子模板中获取该测试用例的请求地址,生成包含所述请求地址和所述执行结果的记录并写入到日志文件中。
在一实施例中,若执行结果为未成功,那么接收测试对象返回的未成功执行的原因记录写入到日志文件中,且将子模板中该测试用例对应的请求地址一同写入到日志文件中,以便用户调用测试用例脚本查找错因。例如,在执行JT001_7C01测试用例时,测试对象集团未登录成功,因为集团的页面无法打开导致无法输入账号和密码,将未执行成功的原因形成记录写入到日志文件中,以便查看日志文件的用户能够简洁清晰地了解到未成功执行的原因。
生成单元250,用于接收所述测试用例中被测试对象返回的测试结果并生成测试报告。
在一实施例中,测试报告是用于记录执行测试用例的过程,其中统计了包括所执行的功能模块,所执行的测试用例,测试用例的执行结果以及测试用例的测试结果等所有的测试信息,用户可通过测试报告详细地了解到整个测试的过程。例如,在执行JT001_7C01测试用例时,测试对象集团登录成功,那么返回的测试结果为成功登录的账号和密码以及该账号的其他信息,根据返回的测试结果生成测试报告。
在一实施例中,子模板中还包括有期望结果,期望结果是执行测试用例后所得预期实现的结果。根据子模板中测试用例对应的期望结果与测试结果进行对比,若测试结果与期望结果相同,测试结果符合期望结果;若测试结果与期望结果不同,那么测试结果为不符合期望结果。将不符合期望结果的测试结果和该测试用例的请求地址形成记录写入到日志文件中,以便用户查看日志文件和调用测试用例脚本查找错因。例如,在执行JT001_7C01测试用例时,根据测试数据准备JT001_7B01来进行测试,测试数据提供的账号名为1234,预期结果为登入到账号名为1234的账号中。若测试对象集团返回的测试结果为登入到了账号名为1234的账号中,表明测试结果与期望结果相同,测试结果符合期望结果;若测试对象集团返回的测试结果为登入到了帐号名为abcd的账号中,表明测试结果与期望结果不同,测试结果不符合期望结果,将测试结果为登入到账号名为abcd的账号形成记录写入到日志文件中,以便用户分析错误的原因。
本发明实施例所展示了一种自动化测试方法,通过读取用户根据测试需求配置的自动化测试模板;其中,所述自动化测试模板包括父模板和子模板,根据所述父模板确定待执行的功能模块及相应的子模板;根据所确定的子模板确定待执行的测试用例;执行所述待执行的测试用例;接收所述测试用例中被测试对象返回的测试结果并生成测试报告,可以在需求变动后易于维护,程序可读性强、重用性高,节省开发成本和维护成本。
上述自动化测试装置可以实现为一种计算机程序的形式,该计算机程序可以在如图12所示的计算机设备上运行。
请参阅图12,图12是本申请实施例提供的一种计算机设备的示意性框图。该计算机设备500可以是终端,其中,终端可以是智能手机、平板电脑、笔记本电脑、台式电脑、个人数字助理和穿戴式设备等具有通信功能的电子设备。
参阅图12,该计算机设备500包括通过系统总线501连接的处理器502、存储器和网络接口505,其中,存储器可以包括非易失性存储介质503和内存储器504。
该非易失性存储介质503可存储操作系统5031和计算机程序5032。该计算机程序5032包括程序指令,该程序指令被执行时,可使得处理器502执行一种自动化测试方法。
该处理器502用于提供计算和控制能力,以支撑整个计算机设备500的运行。
该内存储器504为非易失性存储介质503中的计算机程序5032的运行提供环境,该计算机程序5032被处理器502执行时,可使得处理器502执行一种自动化测试方法。
该网络接口505用于与其它设备进行网络通信。本领域技术人员可以理解,图12中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备500的限定,具体的计算机设备500可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
其中,所述处理器502用于运行存储在存储器中的计算机程序5032,以实现如下步骤:读取用户根据测试需求配置的自动化测试模板;其中,所述自动化测试模板包括父模板和子模板,所述父模板包括有多个功能模块的信息及每个功能模块所对应的子模板的信息,所述子模板包括有多个测试用例的信息;根据所述父模板确定待执行的功能模块及相应的子模板;根据所确定的子模板确定待执行的测试用例;执行所述待执行的测试用例;接收所述测试用例中被测试对象返回的测试结果并生成测试报告。
在一实施例中,处理器502在实现所述执行所述根据所述父模板确定待执行的功能模块及相应的子模板步骤时,具体实现如下步骤:根据所述执行选项的内容判断所述父模板中每个所述功能模块是否为用户所选择的功能模块;若所述功能模块为用户所选择的功能模块,将该功能模块作为待执行的功能模块;根据所述待执行的功能模块所对应的子模板的编号确定相应的子模板。
在一实施例中,处理器502在实现所述根据所述执行选项的内容判断所述父模板中每个所述功能模块是否为用户所选择的功能模块步骤之后,具体实现如下步骤:若所述功能模块非用户所选择的功能模块,生成未执行所述功能模块的记录并写入到日志文件中。
在一实施例中,处理器502在实现所述根据所确定的子模板确定待执行的测试用例步骤时,具体实现如下步骤:根据所述执行选项的内容判断所述子模板中的测试用例是否为用户所选择的测试用例;若所述测试用例为用户所选择的测试用例,将该测试用例作为待执行的测试用例。
在一实施例中,处理器502在实现所述根据所述执行选项的内容判断所述子模板中所述测试用例是否为用户所选择的测试用例步骤之后,具体实现如下步骤:若所述测试用例非用户所选择的测试用例,生成未执行所述测试用例的记录并写入到日志文件中。
在一实施例中,处理器502在实现所述执行所述待执行的测试用例步骤时,具体实现如下步骤:根据所述子模板中所述待执行的测试用例所对应的请求地址来调用测试用例脚本;执行所述测试用例脚本。
在一实施例中,处理器502在实现所述执行所述待执行的测试用例步骤之后,具体实现如下步骤:更新所述子模板的执行结果;若所述测试用例的执行结果为执行成功,生成包含所述执行结果的记录并写入到日志文件中;若所述测试用例的执行结果为未执行成功,从所述子模板中获取该测试用例的请求地址,生成包含所述请求地址和所述执行结果的记录并写入到日志文件中。
应当理解,在本申请实施例中,处理器502可以是中央处理单元(CentralProcessing Unit,CPU),该处理器502还可以是其他通用处理器、数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。其中,通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
本领域普通技术人员可以理解的是实现上述实施例的方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成。该计算机程序包括程序指令,计算机程序可存储于一存储介质中,该存储介质为计算机可读存储介质。该程序指令被该计算机系统中的至少一个处理器执行,以实现上述方法的实施例的流程步骤。
因此,本发明还提供一种存储介质。该存储介质可以为计算机可读存储介质。该存储介质存储有计算机程序,其中计算机程序包括程序指令。该程序指令被处理器执行时使处理器执行如下步骤:读取用户根据测试需求配置的自动化测试模板;其中,所述自动化测试模板包括父模板和子模板,所述父模板包括有多个功能模块的信息及每个功能模块所对应的子模板的信息,所述子模板包括有多个测试用例的信息;根据所述父模板确定待执行的功能模块及相应的子模板;根据所确定的子模板确定待执行的测试用例;执行所述待执行的测试用例;接收所述测试用例中被测试对象返回的测试结果并生成测试报告。
在一实施例中,所述处理器在执行所述程序指令而实现所述根据所述父模板确定待执行的功能模块及相应的子模板步骤时,具体实现如下步骤:根据所述执行选项的内容判断所述父模板中每个所述功能模块是否为用户所选择的功能模块;若所述功能模块为用户所选择的功能模块,将该功能模块作为待执行的功能模块;根据所述待执行的功能模块所对应的子模板的编号确定相应的子模板。
在一实施例中,所述处理器在执行所述程序指令而实现所述根据所述执行选项的内容判断所述父模板中每个所述功能模块是否为用户所选择的功能模块步骤之后,还实现如下步骤:若所述功能模块非用户所选择的功能模块,生成未执行所述功能模块的记录并写入到日志文件中。
在一实施例中,所述处理器在执行所述程序指令而实现所述根据所确定的子模板确定待执行的测试用例步骤时,还实现如下步骤:根据所述执行选项的内容判断所述子模板中的测试用例是否为用户所选择的测试用例;若所述测试用例为用户所选择的测试用例,将该测试用例作为待执行的测试用例。
在一实施例中,所述处理器在执行所述程序指令而实现所述根据所述执行选项的内容判断所述子模板中所述测试用例是否为用户所选择的测试用例步骤之后,还实现如下步骤:若所述测试用例非用户所选择的测试用例,生成未执行所述测试用例的记录并写入到日志文件中。
在一实施例中,所述处理器在执行所述程序指令而实现所述执行所述待执行的测试用例步骤时,还实现如下步骤:根据所述子模板中所述待执行的测试用例所对应的请求地址来调用测试用例脚本;执行所述测试用例脚本。
在一实施例中,所述处理器在执行所述程序指令而实现所述执行所述待执行的测试用例步骤之后,还实现如下步骤:更新所述子模板的执行结果;若所述测试用例的执行结果为执行成功,生成包含所述执行结果的记录并写入到日志文件中;若所述测试用例的执行结果为未执行成功,从所述子模板中获取该测试用例的请求地址,生成包含所述请求地址和所述执行结果的记录并写入到日志文件中。
所述存储介质可以是U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、磁碟或者光盘等各种可以存储程序代码的计算机可读存储介质。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的。例如,各个单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。
本发明实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。本发明实施例装置中的单元可以根据实际需要进行合并、划分和删减。另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。
该集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,终端,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

Claims (10)

1.一种自动化测试方法,其特征在于,包括:
读取用户根据测试需求配置的自动化测试模板;其中,所述自动化测试模板包括父模板和子模板,所述父模板包括有多个功能模块的信息及每个功能模块所对应的子模板的信息,所述子模板包括有多个测试用例的信息;
根据所述父模板确定待执行的功能模块及相应的子模板;
根据所确定的子模板确定待执行的测试用例;
执行所述待执行的测试用例;
接收所述测试用例中被测试对象返回的测试结果并生成测试报告。
2.根据权利要求1所述的自动化测试方法,其特征在于,所述父模板包括与所述功能模块相对应的执行选项,所述根据所述父模板确定待执行的功能模块及相应的子模板,包括:
根据所述执行选项的内容判断所述父模板中每个所述功能模块是否为用户所选择的功能模块;
若所述功能模块为用户所选择的功能模块,将该功能模块作为待执行的功能模块;
根据所述待执行的功能模块所对应的子模板的编号确定相应的子模板。
3.根据权利要求2所述的自动化测试方法,其特征在于,所述根据所述执行选项的内容判断所述父模板中每个所述功能模块是否为用户所选择的功能模块之后,还包括:
若所述功能模块非用户所选择的功能模块,生成未执行所述功能模块的记录并写入到日志文件中。
4.根据权利要求1所述的自动化测试方法,其特征在于,所述子模板包括与每个所述测试用例相对应的执行选项,所述根据所确定的子模板确定待执行的测试用例,包括:
根据所述执行选项的内容判断所述子模板中的测试用例是否为用户所选择的测试用例;
若所述测试用例为用户所选择的测试用例,将该测试用例作为待执行的测试用例。
5.根据权利要求4所述的自动化测试方法,其特征在于,所述根据所述执行选项的内容判断所述子模板中所述测试用例是否为用户所选择的测试用例之后,还包括:
若所述测试用例非用户所选择的测试用例,生成未执行所述测试用例的记录并写入到日志文件中。
6.根据权利要求1所述的自动化测试方法,其特征在于,所述子模板还包括用于调用测试用例脚本的请求地址,所述执行所述待执行的测试用例,包括:
根据所述子模板中所述待执行的测试用例所对应的请求地址来调用测试用例脚本;
执行所述测试用例脚本。
7.根据权利要求6所述的自动化测试方法,其特征在于,所述子模板还包括执行结果,所述执行所述待执行的测试用例之后,还包括:
更新所述子模板的执行结果;
若所述测试用例的执行结果为执行成功,生成包含所述执行结果的记录并写入到日志文件中;
若所述测试用例的执行结果为未执行成功,从所述子模板中获取该测试用例的请求地址,生成包含所述请求地址和所述执行结果的记录并写入到日志文件中。
8.一种自动化测试装置,其特征在于,包括:
读取单元,用于读取用户根据测试需求配置的自动化测试模板;其中,所述自动化测试模板包括父模板和子模板,所述父模板包括有多个功能模块的信息及每个功能模块所对应的子模板的信息,所述子模板包括有多个测试用例的信息;
第一确定单元,用于根据所述父模板确定待执行的功能模块及相应的子模板;
第二确定单元,用于根据所确定的子模板确定待执行的测试用例;
执行单元,用于执行所述待执行的测试用例;
生成单元,用于接收所述测试用例中被测试对象返回的测试结果并生成测试报告。
9.一种计算机设备,其特征在于,所述计算机设备包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现如权利要求1-7中任一项所述的方法。
10.一种存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时可实现如权利要求1-7中任一项所述的方法。
CN201810935577.XA 2018-08-16 2018-08-16 自动化测试方法、装置、计算机设备及存储介质 Pending CN109144869A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810935577.XA CN109144869A (zh) 2018-08-16 2018-08-16 自动化测试方法、装置、计算机设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810935577.XA CN109144869A (zh) 2018-08-16 2018-08-16 自动化测试方法、装置、计算机设备及存储介质

Publications (1)

Publication Number Publication Date
CN109144869A true CN109144869A (zh) 2019-01-04

Family

ID=64789773

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810935577.XA Pending CN109144869A (zh) 2018-08-16 2018-08-16 自动化测试方法、装置、计算机设备及存储介质

Country Status (1)

Country Link
CN (1) CN109144869A (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109918290A (zh) * 2019-01-17 2019-06-21 平安科技(深圳)有限公司 目标设备的自动筛选方法、装置、计算机设备及存储介质
CN110096434A (zh) * 2019-03-28 2019-08-06 咪咕文化科技有限公司 一种接口测试方法及装置
CN110287115A (zh) * 2019-06-26 2019-09-27 北京金山云网络技术有限公司 测试报告的生成方法、装置和服务器
CN112286806A (zh) * 2020-10-28 2021-01-29 成都佰维存储科技有限公司 自动化测试方法、装置、存储介质及电子设备
CN113448793A (zh) * 2020-03-25 2021-09-28 大唐移动通信设备有限公司 一种兼容多操作系统的系统监控方法及装置

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140282433A1 (en) * 2013-03-15 2014-09-18 International Business Machines Corporation Testing functional correctness and idempotence of software automation scripts
CN106227658A (zh) * 2016-07-15 2016-12-14 珠海市魅族科技有限公司 一种测试用例的管理方法、系统及装置
CN106598869A (zh) * 2016-12-26 2017-04-26 北京京东金融科技控股有限公司 实现软件自动测试的方法、装置及电子设备
CN106874207A (zh) * 2017-02-27 2017-06-20 税友软件集团股份有限公司 一种web页面的自动化测试方法及装置
CN107092558A (zh) * 2017-04-12 2017-08-25 东华大学 一种命令行界面命令集合自动化测试系统和方法
CN107729243A (zh) * 2017-10-12 2018-02-23 上海携程金融信息服务有限公司 应用编程接口自动化测试方法、系统、设备及存储介质
CN107729234A (zh) * 2017-09-29 2018-02-23 郑州云海信息技术有限公司 测试用例的调度执行方法、装置、设备及计算机存储介质

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140282433A1 (en) * 2013-03-15 2014-09-18 International Business Machines Corporation Testing functional correctness and idempotence of software automation scripts
CN106227658A (zh) * 2016-07-15 2016-12-14 珠海市魅族科技有限公司 一种测试用例的管理方法、系统及装置
CN106598869A (zh) * 2016-12-26 2017-04-26 北京京东金融科技控股有限公司 实现软件自动测试的方法、装置及电子设备
CN106874207A (zh) * 2017-02-27 2017-06-20 税友软件集团股份有限公司 一种web页面的自动化测试方法及装置
CN107092558A (zh) * 2017-04-12 2017-08-25 东华大学 一种命令行界面命令集合自动化测试系统和方法
CN107729234A (zh) * 2017-09-29 2018-02-23 郑州云海信息技术有限公司 测试用例的调度执行方法、装置、设备及计算机存储介质
CN107729243A (zh) * 2017-10-12 2018-02-23 上海携程金融信息服务有限公司 应用编程接口自动化测试方法、系统、设备及存储介质

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109918290A (zh) * 2019-01-17 2019-06-21 平安科技(深圳)有限公司 目标设备的自动筛选方法、装置、计算机设备及存储介质
CN109918290B (zh) * 2019-01-17 2022-03-15 平安科技(深圳)有限公司 目标设备的自动筛选方法、装置、计算机设备及存储介质
CN110096434A (zh) * 2019-03-28 2019-08-06 咪咕文化科技有限公司 一种接口测试方法及装置
CN110287115A (zh) * 2019-06-26 2019-09-27 北京金山云网络技术有限公司 测试报告的生成方法、装置和服务器
CN113448793A (zh) * 2020-03-25 2021-09-28 大唐移动通信设备有限公司 一种兼容多操作系统的系统监控方法及装置
CN113448793B (zh) * 2020-03-25 2023-05-30 大唐移动通信设备有限公司 一种兼容多操作系统的系统监控方法及装置
CN112286806A (zh) * 2020-10-28 2021-01-29 成都佰维存储科技有限公司 自动化测试方法、装置、存储介质及电子设备
CN112286806B (zh) * 2020-10-28 2023-10-03 成都佰维存储科技有限公司 自动化测试方法、装置、存储介质及电子设备

Similar Documents

Publication Publication Date Title
CN109144869A (zh) 自动化测试方法、装置、计算机设备及存储介质
CN107894952A (zh) 接口测试用例的生成方法、装置、设备及可读存储介质
CN110083526A (zh) 应用程序测试方法、装置、计算机装置及存储介质
CN109885474A (zh) 测试用例编辑方法及装置、终端和计算机可读存储介质
CN108470004A (zh) 测试脚本生成方法、测试方法、装置、设备及存储介质
CN110187992B (zh) 故障分析方法及装置
CN112905459A (zh) 服务接口测试方法、装置、电子设备及存储介质
CN111475402B (zh) 程序功能的测试方法及相关装置
CN103810105A (zh) 应用程序版本检测方法和装置
CN108804399A (zh) 表单的校验方法及装置
CN110362469A (zh) 基于模块化测试用例控制方法、装置、终端与存储介质
CN105630683A (zh) 一种云测试体系架构
CN117370203B (zh) 自动化测试方法、系统、电子设备及存储介质
CN106201857A (zh) 测试用例的选取方法及装置
CN109388420A (zh) 应用升级测试方法、装置、计算机设备及存储介质
CN115292165A (zh) 测试方法及装置、电子设备及存储介质
CN109783381B (zh) 一种测试数据生成方法、装置及系统
US9501390B1 (en) Enhancing automated mobile application testing
CN111158987A (zh) 微服务架构的健康检查方法及装置
CN114253920A (zh) 一种交易重新排序方法、装置、设备及可读存储介质
CN114237754A (zh) 一种数据加载方法、装置、电子设备以及存储介质
CN112433935A (zh) 测试方法、装置、电子设备及存储介质
CN116719736A (zh) 一种用于测试软件界面的测试用例生成方法及装置
CN110191013A (zh) 电子装置、多资方接口的Mock测试方法及存储介质
CN112631842B (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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20190104