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

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

Info

Publication number
CN112181835A
CN112181835A CN202011052092.XA CN202011052092A CN112181835A CN 112181835 A CN112181835 A CN 112181835A CN 202011052092 A CN202011052092 A CN 202011052092A CN 112181835 A CN112181835 A CN 112181835A
Authority
CN
China
Prior art keywords
test
preset
calculating
determining
field
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
Application number
CN202011052092.XA
Other languages
English (en)
Other versions
CN112181835B (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.)
Ping An Life Insurance Company of China Ltd
Original Assignee
Ping An Life Insurance Company of China 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 Life Insurance Company of China Ltd filed Critical Ping An Life Insurance Company of China Ltd
Priority to CN202011052092.XA priority Critical patent/CN112181835B/zh
Publication of CN112181835A publication Critical patent/CN112181835A/zh
Application granted granted Critical
Publication of CN112181835B publication Critical patent/CN112181835B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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)
  • Debugging And Monitoring (AREA)

Abstract

本申请实施例属于研发技术领域,涉及一种自动化测试方法,包括:预先录入不同的测试场景以及测试参数;根据所述测试场景和所述测试参数,确定当前测试的页面表单中所有子功能的测试用例;根据预设的测试模型,计算每个所述测试用例对所述子功能的预测概率,在所述预测概率大于等于预设阈值时,确定所述测试用例对所述子功能测试通过;计算测试通过的测试用例在所述页面表单对应所有测试用例中的占比,在所述占比大于等于预设通过率时,确定所述页面表单的目标功能测试通过。本申请还提供一种自动化测试装置、计算机设备及存储介质。此外,本申请还涉及区块链技术,测试参数可存储于区块链中。本申请实现了自动化测试,提高了测试效率。

Description

自动化测试方法、装置、计算机设备及存储介质
技术领域
本申请涉及研发技术领域,尤其涉及一种自动化测试方法、装置、计算机设备及存储介质。
背景技术
软件测试是使用人工或自动的手段来运行或测定某个软件系统的过程,其目的在于检验它是否满足规定的需求或弄清预期结果与实际结果之间的差别。为了保证功能的稳定性,在功能投入使用之前往往需对其进行反复的功能测试。
当前,在日常的软件测试中,主要通过输入测试用例,根据测试用例确定功能是否测试通过。然而,一次功能测试所需的测试用例的数量往往是成百上千的,现有测试方式主要采用人工地输入的测试环境所需要的测试场景及各种测试用例,再根据各种测试用例手动地对各项功能进行一一测试。这种方式往往需要消耗大量的人力,并耗费大量的测试时长,最终导致测试效率低下的技术问题。
发明内容
本申请实施例的目的在于提出一种自动化测试方法、装置、计算机设备及存储介质,以解决测试效率低下的技术问题。
为了解决上述技术问题,本申请实施例提供一种自动化测试方法,采用了如下所述的技术方案:
预先录入不同的测试场景以及测试参数;
根据所述测试场景和所述测试参数,确定当前测试的页面表单中所有子功能的测试用例;
根据预设的测试模型,计算每个所述测试用例对所述子功能的预测概率,在所述预测概率大于等于预设阈值时,确定所述测试用例对所述子功能测试通过;
计算测试通过的测试用例在所述页面表单对应所有测试用例中的占比,在所述占比大于等于预设通过率时,确定所述页面表单的目标功能测试通过。
进一步的,所述计算每个所述测试用例对所述子功能的预测概率的步骤具体包括:
获取所述页面表单中的表单字段,每个不同的所述表单字段对应不同的子功能;
计算每个所述表单字段对应测试用例的测试参数的测试值,输入所述测试值至所述测试模型中,计算所述测试用例对所述表单字段的预测概率。
进一步的,所述获取所述页面表单中的表单字段的步骤具体包括:
在工具中录入预设脚本,根据所述预设脚本确定页面按钮和所述页面表单的坐标;
根据所述坐标确定所述页面表单中的表单字段。
进一步的,所述计算每个所述表单字段对应测试用例的测试参数的测试值的步骤具体包括:
获取所述表单字段的字段类型,其中,所述字段类型包括数值类型;
在所述表单字段的字段类型为所述数值类型时,对所述表单字段对应测试用例的测试参数的数值进行归一化,将所述归一化后的数值作为所述测试用例的测试值。
进一步的,在所述获取所述表单字段的字段类型的步骤之后还包括:
所述字段类型还包括文本类型,在所述表单字段的字段类型为所述文本类型时,基于预设基础数据库查找所述表单字段对应测试用例的测试参数,获取所述预设基础数据库中基础数据与所述测试参数的匹配度;
获取所述测试参数预设的基础概率,计算所述匹配度和所述基础概率的比值,将所述比值作为所述测试用例的测试值。
进一步的,在所述根据预设的测试模型,计算每个所述测试用例对所述子功能的预测概率的步骤之前还包括:
采集多组不同的测试数据作为样本数据,将所述样本数据输入至测试模型中进行训练;
在训练后的测试模型对所述测试数据的预测正确率达到预设的标准正确率时,确定所述训练后的测试模型为预设的测试模型。
进一步的,在所述确定所述页面表单的目标功能测试通过的步骤之后还包括:
统计当前参与测试的测试用例的总数,以及所述参与测试的测试用例的通过率,根据所述总数和所述通过率生成所述页面表单的测试报告。
为了解决上述技术问题,本申请实施例还提供一种自动化测试装置,采用了如下所述的技术方案:
录入模块,用于预先录入不同的测试场景以及测试参数;
确认模块,用于根据所述测试场景和所述测试参数,确定当前测试的页面表单中所有子功能的测试用例;
第一计算模块,用于根据预设的测试模型,计算每个所述测试用例对所述子功能的预测概率,在所述预测概率大于等于预设阈值时,确定所述测试用例对所述子功能测试通过;
第二计算模块,用于计算测试通过的测试用例在所述页面表单对应所有测试用例中的占比,在所述占比大于等于预设通过率时,确定所述页面表单的目标功能测试通过。
为了解决上述技术问题,本申请实施例还提供一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述处理器执行所述计算机可读指令时实现上述自动化测试方法的步骤。
为了解决上述技术问题,本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机可读指令,所述计算机可读指令被处理器执行时实现上述自动化测试方法的步骤。
本申请通过预先录入不同的测试场景以及测试参数;根据所述测试场景和所述测试参数,确定当前测试的页面表单中所有子功能的测试用例;通过提前录入测试场景和测试参数,即可对测试用例进行规范化管理;在得到测试用例时,根据预设的测试模型,计算每个所述测试用例对所述子功能的预测概率,通过测试模型即可对所有的测试用例对应的预测概率进行自动计算,在所述预测概率大于等于预设阈值时,即确定所述测试用例对所述子功能测试通过;计算测试通过的测试用例在所述页面表单对应所有测试用例中的占比,即测试通过的测试用例数与页面表单对应测试用例的总数的比值,在所述占比大于等于预设通过率时,确定所述页面表单的目标功能测试通过,目标功能即为页面表单的子功能的合集;由此,实现了对测试用例的规范化管理,以及对测试用例的自动执行,使得在对功能进行高效自动化测试的同时,提高了测试准确率,节省了测试时长。
附图说明
为了更清楚地说明本申请中的方案,下面将对本申请实施例描述中所需要使用的附图作一个简单介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请可以应用于其中的示例性系统架构图;
图2是根据本申请的自动化测试方法的一个实施例的流程图;
图3是根据本申请的自动化测试装置的一个实施例的结构示意图;
图4是根据本申请的计算机设备的一个实施例的结构示意图。
附图标记:自动化测试装置400包括:录入模块401、确认模块402、第一计算模块403和第二计算模块404。
具体实施方式
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同;本文中在申请的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本申请;本申请的说明书和权利要求书及上述附图说明中的术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含。本申请的说明书和权利要求书或上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
为了使本技术领域的人员更好地理解本申请方案,下面将结合附图,对本申请实施例中的技术方案进行清楚、完整地描述。
如图1所示,系统架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。终端设备101、102、103上可以安装有各种通讯客户端应用,例如网页浏览器应用、购物类应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等。
终端设备101、102、103可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、电子书阅读器、MP3播放器(Moving PictureExpertsGroup Audio Layer III,动态影像专家压缩标准音频层面3)、MP4(MovingPictureExperts Group Audio Layer IV,动态影像专家压缩标准音频层面4)播放器、膝上型便携计算机和台式计算机等等。
服务器105可以是提供各种服务的服务器,例如对终端设备101、102、103上显示的页面提供支持的后台服务器。
需要说明的是,本申请实施例所提供的自动化测试方法一般由服务器/终端设备执行,相应地,自动化测试装置一般设置于服务器/终端设备中。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
继续参考图2,示出了根据本申请的自动化测试方法的一个实施例的流程图。所述的自动化测试方法,包括以下步骤:
步骤S201,预先录入不同的测试场景以及测试参数;
在本实施例中,测试场景的类型包括性能测试、负载测试、压力测试和稳定性测试,不同场景类型包括多种不同的测试场景,同一场景类型下也可能包括多个的测试场景。测试参数为预先采集到的不同参数,如年龄对应的具体数值,姓名的具体名称等。预先采集多个不同的测试场景以及每个测试场景对应的测试参数,将所有的测试场景和测试参数录入在工具中。
需要强调的是,为进一步保证上述测试参数的私密和安全性,上述测试参数还可以存储于一区块链的节点中。
本申请所指区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。
步骤S202,根据所述测试场景和所述测试参数,确定当前测试的页面表单中所有子功能的测试用例;
在本实施例中,测试用例为由测试场景和测试参数组成的,对一项特定的产品进行测试任务的描述。每个不同的功能可能有不同的测试场景,同一个功能下也可能包括多个不同的测试场景。在针对功能进行测试时,则获取该功能下包括的所有测试场景;根据该测试场景以及与该功能关联的所有测试参数,将该测试参数填充至对应的测试场景中;测试场景与测试参数组合而成即为测试用例,多少个测试场景则对应多少个测试用例。以用户年龄信息提交的功能为例,获取该功能对应的测试场景,如年龄为负数和年龄大于预设参数值即为两种不同的测试场景,测试参数则为该预设参数对应的具体数值,如200,组合该测试场景及该测试参数即得到对应的测试用例,年龄大于200即为一个测试用例。
步骤S203,根据预设的测试模型,计算每个所述测试用例对所述子功能的预测概率,在所述预测概率大于等于预设阈值时,确定所述测试用例对所述子功能测试通过;
在本实施例中,在前端页面上存在有页面表单,页面表单上则包括各种表单字段,例如姓名,年龄,电话号码,邮箱等字段。表单字段与子功能对应,不同的表单字段对应不同的子功能,如姓名的表单字段则对应姓名提交的子功能。
在得到测试用例时,则根据预设的测试模型对该测试用例在页面表单中子功能上的预测概率进行计算,该预测概率即为该测试用例在子功能上与预期结果的符合程度,预测概率越高即表示该测试用例在子功能上的输出结果越符合预期结果;该测试模型则为预先设定的预测模型,如逻辑回归模型。具体地,一个测试用例对应一条测试请求,基于预设的测试模型接收测试请求;在接收到测试请求时,基于该预设的测试模型解析该测试请求携带的URL地址,即可得到该测试请求对应的测试用例。通过预设的测试模型自动化输入该测试用例,并自动执行测试用例,由此即可计算得到的每个测试用例对应的预测概率,该预测概率即为当前测试用例对在对应的子功能上的预测结果。若当测试用例计算得到的预测概率大于等于预设阈值,则确定当前测试用例测试通过;若该测试概率小于预设阈值,则确定当前测试用例测试未通过。
步骤S204,计算测试通过的测试用例在所述页面表单对应所有测试用例中的占比,在所述占比大于等于预设通过率时,确定所述页面表单的目标功能测试通过。
在本实施例中,目标功能为当前页面表单所有子功能的合集,同一信息类别的子功能可以组合为一个总功能,该总功能即为当前页面表单的目标功能。如年龄则可以对应用户年龄信息提交的子功能,姓名则可以对应用户性别信息提交的子功能,组合年龄和性别分别对应的子功能,即可以得到用户基本信息提交的总功能。在计算得到每个测试用例对子功能的预测概率时,预测概率大于等于预设阈值的测试用例,则为测试通过的测试用例;计算测试通过的测试用例在当前页面表单对应的所有测试用例中的占比,在该占比大于等于预设通过率时,则确定该页面表单对应的目标功能测试通过。
本申请实现了对测试用例的规范化管理,以及对测试用例的自动执行,使得在对功能进行高效自动化测试的同时,提高了测试准确率,节省了测试时长。
在本申请的一些实施例中,上述计算每个所述测试用例对所述子功能的预测概率包括:
获取所述页面表单中的表单字段,每个不同的所述表单字段对应不同的子功能;
计算每个所述表单字段对应测试用例的测试参数的测试值,输入所述测试值至所述测试模型中,计算所述测试用例对所述表单字段的预测概率。
在本实施例中,在通过测试用例对子功能进行测试时,获取当前前端页面中页面表单下的所有表单字段。获取表单字段对应的测试用例,一个表单字段可能对应有多个测试用例。根据预设的测试模型对当前表单字段对应的所有测试用例进行依次计算,即以测试用例对应的测试值为测试模型的输入值,依次计算得到的该测试模型的输出值即为每个测试用例对当前表单字段的预测概率。
以表单字段为年龄为例,该表单字段对应的测试用例有3条,第一个是小于0的值对应的测试用例;第二个是大于150的值对应的测试用例,第三个是介于0-150之间的值对应的测试用例。将这3条测试用例分别通过预设的测试模型自动执行,执行后计算得到输出值,比如第一个测试用例得到的输出值为0.1、第二个测试用例得出的值为0.8、第三个测试用例得出的值为0.9,该输出值即为该测试用例对该表单字段的预测概率。
本实施例实现了对表单字段下不同测试用例的测试执行,使得通过测试模型能够自动执行测试用例,提高了测试效率,并使得通过测试模型的输出值能够对测试用例是否测试通过进行快速判断。
在本申请的一些实施例中,上述获取所述页面表单中的表单字段包括:
在工具中录入预设脚本,根据所述预设脚本确定页面按钮和所述页面表单的坐标;
根据所述坐标确定所述页面表单中的表单字段。
在本实施例中,预设脚本为预先设定的执行脚本,根据该预设脚本可以对当前前端页面的页面按钮和页面表单的坐标进行确定。在确定前端页面中页面按钮和页面表单的坐标时,根据页面按钮的坐标可以确定当前页面的位置,根据页面表单的坐标则可以确定当前页面中页面表单的位置,进一步地,根据该页面表单的位置则可以确定页面表单中包括的各种表单字段。
本实施例实现了通过预设脚本对页面按钮和页面表单坐标的确定,使得通过该坐标能够对页面表单中各个表单字段进行精确定位,进一步提高了对表单字段下不同测试用例的测试效率。
在本申请的一些实施例中,上述计算每个所述表单字段对应测试用例的测试参数的测试值包括:
获取所述表单字段的字段类型,其中,所述字段类型包括数值类型;
在所述表单字段的字段类型为所述数值类型时,对所述表单字段对应测试用例的测试参数的数值进行归一化,将所述归一化后的数值作为所述测试用例的测试值。
在本实施例中,表单字段包括数值类型和文本类型的字段,例如,年龄、电话号码、邮箱则属于数值类型的表单字段,因为其表单字段下的字段内容只能用数值表示,对应的测试用例中的测试参数则也应当为数值类型;姓名为文本类型的表单字段,该表单字段对应的测试用例的测试参数则亦为文本类型。测试用例中的测试参数的参数类型与该表单字段的字段类型相同,不同字段类型的表单字段对应测试用例的测试参数的参数类型不相同。
在根据测试模型计算测试用例对对应的表单字段的预测概率时,则获取当前表单字段的字段类型。在该表单字段为数值类型时,则该表单字段对应的测试用例的测试参数亦为数值类型,将该测试参数的数值进行归一化,其中,归一化是指将数值映射到0至1的范围内,使得归一化后的数值更加方便计算,得到归一化后的数值即为测试值;输入该归一化后的数值至测试模型中,计算则可得到该测试参数对应测试用例对该表单字段的预测概率。
本实施例实现了对数值类型的测试用例的测试值的获取,使得通过该测试值能够对该测试用例对应的预测概率进行准确地计算,进一步提高测试准确率。
在本申请的一些实施例中,在上述获取所述表单字段的字段类型之后还包括:
所述字段类型还包括文本类型,在所述表单字段的字段类型为所述文本类型时,基于预设基础数据库查找所述表单字段对应测试用例的测试参数,获取所述预设基础数据库中基础数据与所述测试参数的匹配度;
获取所述测试参数预设的基础概率,计算所述匹配度和所述基础概率的比值,将所述比值作为所述测试用例的测试值。
在本实施例中,在表单字段的字段类型为文本类型时,则该表单字段对应测试用例的测试参数的参数类型也同样为文本类型。基于预设基础数据库查找该表单字段对应测试用例的测试参数,确定该测试参数在该预设基础数据库中是否存在,如姓名为“张三”的测试参数,则在预设基础数据库中查找是否存在“张三”。计算该预设基础数据库中基础数据与该测试参数的匹配度,该匹配度即为测试参数与基础数据的相似度;若在该预设基础数据库中完全查找到该测试参数,即表示该预设基础数据库中存在基础数据与该测试参数完全匹配,对应的匹配度即为1;若在该预设基础数据库中的基础数据与该测试参数并不能完全匹配,计算该测试参数与基础数据的匹配度,计算得到的匹配度则为小于1的值。
在计算得到匹配度时,获取该测试参数的预设的基础概率,该基础概率为预先设定或采集得到该测试参数对应的基础概率值,如“张三”这一测试参数在所有姓名中的概率值,即为其对应的基础概率;计算该匹配度与该基础概率的比值,得到的该比值即为该测试参数对应测试用例的测试值。输入该测试值至测试模型中,计算得到的输出值则为当前测试用例对表单字段的预测概率。
本实施例实现了对文本类型的测试用例的测试值的获取,使得通过该测试值能够对该测试用例对应的预测概率进行准确地计算,进一步提高测试准确率。
在本申请的一些实施例中,在上述根据预设的测试模型,计算每个所述测试用例对所述子功能的预测概率之前还包括:
采集多组不同的测试数据作为样本数据,将所述样本数据输入至测试模型中进行训练;
在训练后的测试模型对所述测试数据的预测正确率达到预设的标准正确率时,确定所述训练后的测试模型为预设的测试模型。
在本实施例中,预设的测试模型可以为逻辑回归模型,或者二分类模型等预测模型。根据该预设的测试模型可以对输入的测试用例在功能上的概率进行预测。以逻辑回归模型为例,预先采集多组不同的测试数据作为样本数据,该测试数据则包括多组不同的测试用例,根据该样本数据对基础的逻辑回归模型进行训练。具体地,将样本数据输入至该基础的逻辑回归模型中,计算得到预测值;若该预测值在该样本数据对应的预设范围内,则表示该基础的逻辑回归模型对该样本数据预测正确,若该预测值不在该样本数据对应的预设范围内,则表示该基础的逻辑回归模型对该测试样本数据预测错误。将多组样本数据依次投入至该基础的逻辑回归模型中进行训练,直到训练后的逻辑回归模型对测试用例的预测正确率达到预设的标准正确率,则确定该逻辑回归模型训练完成,该训练后的逻辑回归模型即为预设的测试模型。
本实施例实现了对测试模型的训练,使得通过训练得到的测试模型能够更准确地对测试用例对应的预测值进行计算,进一步提高了测试的准确性。
在本申请的一些实施例中,在上述确定所述页面表单的目标功能测试通过之后还包括:
统计当前参与测试的测试用例的总数,以及所述参与测试的测试用例的通过率,根据所述总数和所述通过率生成所述页面表单的测试报告。
在本实施例中,在通过测试用例对页面表单的测试完成之后,还可以根据当前的测试情况生成测试包括,其中,该测试报告则具体包括执行的测试模型、参与当前测试的测试用例的总数、成功通过的测试用例的条数以及通过率,该通过率即为通过测试的测试用例数与参与测试的测试用例的总数的比值。根据该测试报告即可确定当前页面表单的功能测试情况。
本实施例实现了在测试之后,测试报告的生成,使得通过该测试报告能够清楚快速地了解到测试情况。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机可读指令来指令相关的硬件来完成,该计算机可读指令可存储于一计算机可读取存储介质中,该计算机可读指令在执行时,可包括如上述各方法的实施例的流程。其中,前述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)等非易失性存储介质,或随机存储记忆体(Random Access Memory,RAM)等。
应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
进一步参考图3,作为对上述图2所示方法的实现,本申请提供了一种自动化测试装置的一个实施例,该装置实施例与图2所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。
如图3所示,本实施例所述的自动化测试装置400包括:录入模块401、确认模块402、第一计算模块403和第二计算模块404。其中:
录入模块401,用于预先录入不同的测试场景以及测试参数;
在本实施例中,测试场景的类型包括性能测试、负载测试、压力测试和稳定性测试,不同场景类型包括多种不同的测试场景,同一场景类型下也可能包括多个的测试场景。测试参数为预先采集到的不同参数,如年龄对应的具体数值,姓名的具体名称等。预先采集多个不同的测试场景以及每个测试场景对应的测试参数,将所有的测试场景和测试参数录入在工具中。
需要强调的是,为进一步保证上述测试参数的私密和安全性,上述测试参数还可以存储于一区块链的节点中。
本申请所指区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。
确认模块402,用于根据所述测试场景和所述测试参数,确定当前测试的页面表单中所有子功能的测试用例;
在本实施例中,测试用例为由测试场景和测试参数组成的,对一项特定的产品进行测试任务的描述。每个不同的功能可能有不同的测试场景,同一个功能下也可能包括多个不同的测试场景。在针对功能进行测试时,则获取该功能下包括的所有测试场景;根据该测试场景以及与该功能关联的所有测试参数,将该测试参数填充至对应的测试场景中;测试场景与测试参数组合而成即为测试用例,多少个测试场景则对应多少个测试用例。以用户年龄信息提交的功能为例,获取该功能对应的测试场景,如年龄为负数和年龄大于预设参数值即为两种不同的测试场景,测试参数则为该预设参数对应的具体数值,如200,组合该测试场景及该测试参数即得到对应的测试用例,年龄大于200即为一个测试用例。
第一计算模块403,用于根据预设的测试模型,计算每个所述测试用例对所述子功能的预测概率,在所述预测概率大于等于预设阈值时,确定所述测试用例对所述子功能测试通过;
其中,所述第一计算模块403包括:
获取单元,用于获取所述页面表单中的表单字段,每个不同的所述表单字段对应不同的子功能;
计算单元,用于计算每个所述表单字段对应测试用例的测试参数的测试值,输入所述测试值至所述测试模型中,计算所述测试用例对所述表单字段的预测概率。
其中,所述获取单元包括:
第一确认子单元,用于在工具中录入预设脚本,根据所述预设脚本确定页面按钮和所述页面表单的坐标;
第二确认子单元,用于根据所述坐标确定所述页面表单中的表单字段。
其中,所述计算单元包括:
第一获取子单元,用于获取所述表单字段的字段类型,其中,所述字段类型包括数值类型;
测试子单元,用于在所述表单字段的字段类型为所述数值类型时,对所述表单字段对应测试用例的测试参数的数值进行归一化,将所述归一化后的数值作为所述测试用例的测试值。
第二获取子单元,用于所述字段类型还包括文本类型,在所述表单字段的字段类型为所述文本类型时,基于预设基础数据库查找所述表单字段对应测试用例的测试参数,获取所述预设基础数据库中基础数据与所述测试参数的匹配度;
计算子单元,用于获取所述测试参数预设的基础概率,计算所述匹配度和所述基础概率的比值,将所述比值作为所述测试用例的测试值。
在本实施例中,在前端页面上存在有页面表单,页面表单上则包括各种表单字段,例如姓名,年龄,电话号码,邮箱等字段。表单字段与子功能对应,不同的表单字段对应不同的子功能,如姓名的表单字段则对应姓名提交的子功能。
在得到测试用例时,则根据预设的测试模型对该测试用例在页面表单中子功能上的预测概率进行计算,该预测概率即为该测试用例在子功能上与预期结果的符合程度,预测概率越高即表示该测试用例在子功能上的输出结果越符合预期结果;该测试模型则为预先设定的预测模型,如逻辑回归模型。具体地,一个测试用例对应一条测试请求,基于预设的测试模型接收测试请求;在接收到测试请求时,基于该预设的测试模型解析该测试请求携带的URL地址,即可得到该测试请求对应的测试用例。通过预设的测试模型自动化输入该测试用例,并自动执行测试用例,由此即可计算得到的每个测试用例对应的预测概率,该预测概率即为当前测试用例对在对应的子功能上的预测结果。若当测试用例计算得到的预测概率大于等于预设阈值,则确定当前测试用例测试通过;若该测试概率小于预设阈值,则确定当前测试用例测试未通过。
第二计算模块404,用于计算测试通过的测试用例在所述页面表单对应所有测试用例中的占比,在所述占比大于等于预设通过率时,确定所述页面表单的目标功能测试通过。
在本实施例中,目标功能为当前页面表单所有子功能的合集,同一信息类别的子功能可以组合为一个总功能,该总功能即为当前页面表单的目标功能。如年龄则可以对应用户年龄信息提交的子功能,姓名则可以对应用户性别信息提交的子功能,组合年龄和性别分别对应的子功能,即可以得到用户基本信息提交的总功能。在计算得到每个测试用例对子功能的预测概率时,预测概率大于等于预设阈值的测试用例,则为测试通过的测试用例;计算测试通过的测试用例在当前页面表单对应的所有测试用例中的占比,在该占比大于等于预设通过率时,则确定该页面表单对应的目标功能测试通过。
其中,所述自动化测试装置还包括:
采集模块,用于采集多组不同的测试数据作为样本数据,将所述样本数据输入至测试模型中进行训练;
训练模块,用于在训练后的测试模型对所述测试数据的预测正确率达到预设的标准正确率时,确定所述训练后的测试模型为预设的测试模型。
在本实施例中,预设的测试模型可以为逻辑回归模型,或者二分类模型等预测模型。根据该预设的测试模型可以对输入的测试用例在功能上的概率进行预测。以逻辑回归模型为例,预先采集多组不同的测试数据作为样本数据,该测试数据则包括多组不同的测试用例,根据该样本数据对基础的逻辑回归模型进行训练。具体地,将样本数据输入至该基础的逻辑回归模型中,计算得到预测值;若该预测值在该样本数据对应的预设范围内,则表示该基础的逻辑回归模型对该样本数据预测正确,若该预测值不在该样本数据对应的预设范围内,则表示该基础的逻辑回归模型对该测试样本数据预测错误。将多组样本数据依次投入至该基础的逻辑回归模型中进行训练,直到训练后的逻辑回归模型对测试用例的预测正确率达到预设的标准正确率,则确定该逻辑回归模型训练完成,该训练后的逻辑回归模型即为预设的测试模型。
统计模块,用于统计当前参与测试的测试用例的总数,以及所述参与测试的测试用例的通过率,根据所述总数和所述通过率生成所述页面表单的测试报告。
在本实施例中,在通过测试用例对页面表单的测试完成之后,还可以根据当前的测试情况生成测试包括,其中,该测试报告则具体包括执行的测试模型、参与当前测试的测试用例的总数、成功通过的测试用例的条数以及通过率,该通过率即为通过测试的测试用例数与参与测试的测试用例的总数的比值。根据该测试报告即可确定当前页面表单的功能测试情况。
本申请提供的自动化测试装置,实现了对测试用例的规范化管理,以及对测试用例的自动执行,使得在对功能进行高效自动化测试的同时,提高了测试准确率,节省了测试时长。
为解决上述技术问题,本申请实施例还提供计算机设备。具体请参阅图4,图4为本实施例计算机设备基本结构框图。
所述计算机设备6包括通过系统总线相互通信连接存储器61、处理器62、网络接口63。需要指出的是,图中仅示出了具有组件61-63的计算机设备6,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。其中,本技术领域技术人员可以理解,这里的计算机设备是一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的设备,其硬件包括但不限于微处理器、专用集成电路(ApplicationSpecific Integrated Circuit,ASIC)、可编程门阵列(Field-Programmable GateArray,FPGA)、数字处理器(Digital Signal Processor,DSP)、嵌入式设备等。
所述计算机设备可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述计算机设备可以与用户通过键盘、鼠标、遥控器、触摸板或声控设备等方式进行人机交互。
所述存储器61至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,所述存储器61可以是所述计算机设备6的内部存储单元,例如该计算机设备6的硬盘或内存。在另一些实施例中,所述存储器61也可以是所述计算机设备6的外部存储设备,例如该计算机设备6上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(FlashCard)等。当然,所述存储器61还可以既包括所述计算机设备6的内部存储单元也包括其外部存储设备。本实施例中,所述存储器61通常用于存储安装于所述计算机设备6的操作系统和各类应用软件,例如自动化测试方法的计算机可读指令等。此外,所述存储器61还可以用于暂时地存储已经输出或者将要输出的各类数据。
所述处理器62在一些实施例中可以是中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器62通常用于控制所述计算机设备6的总体操作。本实施例中,所述处理器62用于运行所述存储器61中存储的计算机可读指令或者处理数据,例如运行所述自动化测试方法的计算机可读指令。
所述网络接口63可包括无线网络接口或有线网络接口,该网络接口63通常用于在所述计算机设备6与其他电子设备之间建立通信连接。
本申请提供的所述计算机设备,实现了对测试用例的规范化管理,以及对测试用例的自动执行,使得在对功能进行高效自动化测试的同时,提高了测试准确率,节省了测试时长。
本申请还提供了另一种实施方式,即提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可读指令,所述计算机可读指令可被至少一个处理器执行,以使所述至少一个处理器执行如上述的自动化测试方法的步骤。
本申请提供的所述计算机可读存储介质,实现了对测试用例的规范化管理,以及对测试用例的自动执行,使得在对功能进行高效自动化测试的同时,提高了测试准确率,节省了测试时长。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本申请各个实施例所述的方法。
显然,以上所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例,附图中给出了本申请的较佳实施例,但并不限制本申请的专利范围。本申请可以以许多不同的形式来实现,相反地,提供这些实施例的目的是使对本申请的公开内容的理解更加透彻全面。尽管参照前述实施例对本申请进行了详细的说明,对于本领域的技术人员来而言,其依然可以对前述各具体实施方式所记载的技术方案进行修改,或者对其中部分技术特征进行等效替换。凡是利用本申请说明书及附图内容所做的等效结构,直接或间接运用在其他相关的技术领域,均同理在本申请专利保护范围之内。

Claims (10)

1.一种自动化测试方法,其特征在于,包括下述步骤:
预先录入不同的测试场景以及测试参数;
根据所述测试场景和所述测试参数,确定当前测试的页面表单中所有子功能的测试用例;
根据预设的测试模型,计算每个所述测试用例对所述子功能的预测概率,在所述预测概率大于等于预设阈值时,确定所述测试用例对所述子功能测试通过;
计算测试通过的测试用例在所述页面表单对应所有测试用例中的占比,在所述占比大于等于预设通过率时,确定所述页面表单的目标功能测试通过。
2.根据权利要求1所述的自动化测试方法,其特征在于,所述计算每个所述测试用例对所述子功能的预测概率的步骤具体包括:
获取所述页面表单中的表单字段,每个不同的所述表单字段对应不同的子功能;
计算每个所述表单字段对应测试用例的测试参数的测试值,输入所述测试值至所述测试模型中,计算所述测试用例对所述表单字段的预测概率。
3.根据权利要求2所述的自动化测试方法,其特征在于,所述获取所述页面表单中的表单字段的步骤具体包括:
在工具中录入预设脚本,根据所述预设脚本确定页面按钮和所述页面表单的坐标;
根据所述坐标确定所述页面表单中的表单字段。
4.根据权利要求2所述的自动化测试方法,其特征在于,所述计算每个所述表单字段对应测试用例的测试参数的测试值的步骤具体包括:
获取所述表单字段的字段类型,其中,所述字段类型包括数值类型;
在所述表单字段的字段类型为所述数值类型时,对所述表单字段对应测试用例的测试参数的数值进行归一化,将所述归一化后的数值作为所述测试用例的测试值。
5.根据权利要求4所述的自动化测试方法,其特征在于,在所述获取所述表单字段的字段类型的步骤之后还包括:
所述字段类型还包括文本类型,在所述表单字段的字段类型为所述文本类型时,基于预设基础数据库查找所述表单字段对应测试用例的测试参数,获取所述预设基础数据库中基础数据与所述测试参数的匹配度;
获取所述测试参数预设的基础概率,计算所述匹配度和所述基础概率的比值,将所述比值作为所述测试用例的测试值。
6.根据权利要求1至5任意一项所述的自动化测试方法,其特征在于,在所述根据预设的测试模型,计算每个所述测试用例对所述子功能的预测概率的步骤之前还包括:
采集多组不同的测试数据作为样本数据,将所述样本数据输入至测试模型中进行训练;
在训练后的测试模型对所述测试数据的预测正确率达到预设的标准正确率时,确定所述训练后的测试模型为预设的测试模型。
7.根据权利要求1至5任意一项所述的自动化测试方法,其特征在于,在所述确定所述页面表单的目标功能测试通过的步骤之后还包括:
统计当前参与测试的测试用例的总数,以及所述参与测试的测试用例的通过率,根据所述总数和所述通过率生成所述页面表单的测试报告。
8.一种自动化测试装置,其特征在于,包括:
录入模块,用于预先录入不同的测试场景以及测试参数;
确认模块,用于根据所述测试场景和所述测试参数,确定当前测试的页面表单中所有子功能的测试用例;
第一计算模块,用于根据预设的测试模型,计算每个所述测试用例对所述子功能的预测概率,在所述预测概率大于等于预设阈值时,确定所述测试用例对所述子功能测试通过;
第二计算模块,用于计算测试通过的测试用例在所述页面表单对应所有测试用例中的占比,在所述占比大于等于预设通过率时,确定所述页面表单的目标功能测试通过。
9.一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述处理器执行所述计算机可读指令时实现如权利要求1至7中任一项所述的自动化测试方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机可读指令,所述计算机可读指令被处理器执行时实现如权利要求1至7中任一项所述的自动化测试方法的步骤。
CN202011052092.XA 2020-09-29 2020-09-29 自动化测试方法、装置、计算机设备及存储介质 Active CN112181835B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011052092.XA CN112181835B (zh) 2020-09-29 2020-09-29 自动化测试方法、装置、计算机设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011052092.XA CN112181835B (zh) 2020-09-29 2020-09-29 自动化测试方法、装置、计算机设备及存储介质

Publications (2)

Publication Number Publication Date
CN112181835A true CN112181835A (zh) 2021-01-05
CN112181835B CN112181835B (zh) 2024-04-26

Family

ID=73945883

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011052092.XA Active CN112181835B (zh) 2020-09-29 2020-09-29 自动化测试方法、装置、计算机设备及存储介质

Country Status (1)

Country Link
CN (1) CN112181835B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112988606A (zh) * 2021-05-11 2021-06-18 成都爱瑞无线科技有限公司 测试用例生成方法、装置、设备及存储介质
CN113535570A (zh) * 2021-07-23 2021-10-22 北京奇艺世纪科技有限公司 一种测试用例的处理方法、装置及电子设备
CN113688041A (zh) * 2021-08-24 2021-11-23 紫光展锐(重庆)科技有限公司 压力测试方法、系统、存储介质及终端
CN113722225A (zh) * 2021-08-31 2021-11-30 平安普惠企业管理有限公司 页面测试方法、装置、计算机设备和存储介质

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107045739A (zh) * 2016-02-05 2017-08-15 福特全球技术公司 基于收集的车辆数据调整诊断测试
CN107505520A (zh) * 2017-07-28 2017-12-22 南京能云电力科技有限公司 场景式智能自动测试平台及方法
CN108268373A (zh) * 2017-09-21 2018-07-10 平安科技(深圳)有限公司 自动化测试用例管理方法、装置、设备及存储介质
CN109324961A (zh) * 2018-08-14 2019-02-12 中国平安人寿保险股份有限公司 系统自动测试方法、装置、计算机设备及存储介质
CN109446099A (zh) * 2018-11-09 2019-03-08 贵州医渡云技术有限公司 自动化测试用例生成方法、装置、介质及电子设备
CN109783354A (zh) * 2018-12-14 2019-05-21 深圳壹账通智能科技有限公司 应用系统的功能测试方法、终端设备及介质
CN109800149A (zh) * 2018-12-14 2019-05-24 深圳壹账通智能科技有限公司 应用界面测试用例生成方法及服务器
CN110147320A (zh) * 2019-04-19 2019-08-20 平安普惠企业管理有限公司 接口测试方法、装置及电子设备
CN110750442A (zh) * 2019-09-06 2020-02-04 平安医疗健康管理股份有限公司 测试用例的生成方法、装置、设备及存储介质
CN111176976A (zh) * 2019-08-05 2020-05-19 腾讯科技(深圳)有限公司 测试数据的生成方法和装置、存储介质及电子装置
CN111400186A (zh) * 2020-03-19 2020-07-10 时时同云科技(成都)有限责任公司 性能测试方法及系统

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107045739A (zh) * 2016-02-05 2017-08-15 福特全球技术公司 基于收集的车辆数据调整诊断测试
CN107505520A (zh) * 2017-07-28 2017-12-22 南京能云电力科技有限公司 场景式智能自动测试平台及方法
CN108268373A (zh) * 2017-09-21 2018-07-10 平安科技(深圳)有限公司 自动化测试用例管理方法、装置、设备及存储介质
CN109324961A (zh) * 2018-08-14 2019-02-12 中国平安人寿保险股份有限公司 系统自动测试方法、装置、计算机设备及存储介质
CN109446099A (zh) * 2018-11-09 2019-03-08 贵州医渡云技术有限公司 自动化测试用例生成方法、装置、介质及电子设备
CN109783354A (zh) * 2018-12-14 2019-05-21 深圳壹账通智能科技有限公司 应用系统的功能测试方法、终端设备及介质
CN109800149A (zh) * 2018-12-14 2019-05-24 深圳壹账通智能科技有限公司 应用界面测试用例生成方法及服务器
CN110147320A (zh) * 2019-04-19 2019-08-20 平安普惠企业管理有限公司 接口测试方法、装置及电子设备
CN111176976A (zh) * 2019-08-05 2020-05-19 腾讯科技(深圳)有限公司 测试数据的生成方法和装置、存储介质及电子装置
CN110750442A (zh) * 2019-09-06 2020-02-04 平安医疗健康管理股份有限公司 测试用例的生成方法、装置、设备及存储介质
CN111400186A (zh) * 2020-03-19 2020-07-10 时时同云科技(成都)有限责任公司 性能测试方法及系统

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112988606A (zh) * 2021-05-11 2021-06-18 成都爱瑞无线科技有限公司 测试用例生成方法、装置、设备及存储介质
CN113535570A (zh) * 2021-07-23 2021-10-22 北京奇艺世纪科技有限公司 一种测试用例的处理方法、装置及电子设备
CN113535570B (zh) * 2021-07-23 2023-08-25 北京奇艺世纪科技有限公司 一种测试用例的处理方法、装置及电子设备
CN113688041A (zh) * 2021-08-24 2021-11-23 紫光展锐(重庆)科技有限公司 压力测试方法、系统、存储介质及终端
CN113722225A (zh) * 2021-08-31 2021-11-30 平安普惠企业管理有限公司 页面测试方法、装置、计算机设备和存储介质

Also Published As

Publication number Publication date
CN112181835B (zh) 2024-04-26

Similar Documents

Publication Publication Date Title
CN112181835B (zh) 自动化测试方法、装置、计算机设备及存储介质
CN113326991B (zh) 自动授权方法、装置、计算机设备及存储介质
CN112613917A (zh) 基于用户画像的信息推送方法、装置、设备及存储介质
CN111552633A (zh) 接口的异常调用测试方法、装置、计算机设备及存储介质
CN112394908A (zh) 埋点页面自动生成的方法、装置、计算机设备及存储介质
CN112597020A (zh) 接口测试方法、装置、计算机设备及存储介质
CN112468658B (zh) 语音质量检测方法、装置、计算机设备及存储介质
CN112631924A (zh) 自动化测试方法、装置、计算机设备及存储介质
CN112631911A (zh) 自动化测试方法、装置、计算机设备及存储介质
CN114493255A (zh) 基于知识图谱的企业异常监控方法及其相关设备
CN112836521A (zh) 问答匹配方法、装置、计算机设备及存储介质
CN114564294A (zh) 智能服务编排方法、装置、计算机设备及存储介质
CN112860662A (zh) 数据血缘关系建立方法、装置、计算机设备及存储介质
CN115237724A (zh) 基于人工智能的数据监控方法、装置、设备及存储介质
CN116453125A (zh) 基于人工智能的数据录入方法、装置、设备及存储介质
CN111639360A (zh) 智能数据脱敏方法、装置、计算机设备及存储介质
CN112363814A (zh) 任务调度方法、装置、计算机设备及存储介质
CN112669850A (zh) 语音质量检测方法、装置、计算机设备及存储介质
CN115757075A (zh) 任务异常检测方法、装置、计算机设备及存储介质
CN115809241A (zh) 数据存储方法、装置、计算机设备及存储介质
CN114637672A (zh) 自动化数据测试方法、装置、计算机设备及存储介质
CN112084408A (zh) 名单数据筛选方法、装置、计算机设备及存储介质
CN113988223A (zh) 证件图像识别方法、装置、计算机设备及存储介质
CN113590372A (zh) 基于日志的链路追踪方法、装置、计算机设备及存储介质
CN112395450A (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