CN112463599A - 自动化测试方法、装置、计算机设备和存储介质 - Google Patents
自动化测试方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN112463599A CN112463599A CN202011298508.6A CN202011298508A CN112463599A CN 112463599 A CN112463599 A CN 112463599A CN 202011298508 A CN202011298508 A CN 202011298508A CN 112463599 A CN112463599 A CN 112463599A
- Authority
- CN
- China
- Prior art keywords
- test
- information
- user
- case
- specified
- 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
- 238000012360 testing method Methods 0.000 title claims abstract description 658
- 238000000034 method Methods 0.000 claims abstract description 61
- 238000012216 screening Methods 0.000 claims abstract description 25
- 230000008569 process Effects 0.000 claims description 39
- 230000004044 response Effects 0.000 claims description 34
- 238000012545 processing Methods 0.000 claims description 14
- 238000004590 computer program Methods 0.000 claims description 13
- 238000012795 verification Methods 0.000 description 17
- 230000006870 function Effects 0.000 description 16
- 238000007726 management method Methods 0.000 description 8
- 230000014509 gene expression Effects 0.000 description 4
- 238000012544 monitoring process Methods 0.000 description 4
- 230000006978 adaptation Effects 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000012550 audit Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 230000005484 gravity Effects 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000002411 adverse Effects 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000003862 health status Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012954 risk control Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000010998 test method Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
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
-
- 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
-
- 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/3692—Test management for test results analysis
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
技术领域
本申请涉及测试领域,具体涉及一种自动化测试方法、装置、计算机设备和存储介质。
背景技术
现有的自动化测试流程中,需要测试人员使用编程语言编写测试用例,并通过第三方测试软件以及编写好的测试用例来进行相应的测试工作。但是,这种自动化测试的方式需要测试人员使用繁琐、晦涩的编程语言来编写测试用例,这使得测试人员需要自身具备较高的专业要求,测试用例的撰写效率低,进而导致测试用例的生成成本较高且自动化测试的效率低下。
发明内容
本申请的主要目的为提供一种自动化测试方法、装置、计算机设备和存储介质,旨在解决现有的自动化测试的方式需要测试人员使用繁琐、晦涩的编程语言来编写测试用例,测试用例的撰写效率低,进而导致测试用例的生成成本较高且自动化测试的效率低下的技术问题。
本申请提出一种自动化测试方法,所述方法包括步骤:
接收用户提交的自动化测试请求,其中,所述自动化测试请求携带有用户信息与测试用例信息;
对所述自动化请求进行解析处理,提取出所述用户信息,并基于所述用户信息判断所述用户是否具备测试权限;
若所述用户具备测试权限,则从所述自动化测试请求中提取出所述测试用例信息,并基于所述测试用例信息从预存储的用例数据库中筛选出与所述测试用例信息对应的指定测试用例,其中,所述指定测试用例为基于指定语言编写生成的,且所述指定语言不包括编程语言;
获取所述指定测试用例中包含的测试步骤;
根据所述测试步骤,生成与所述指定测试用例对应的测试程序;
获取预设的定时测试时间,以及获取当前时间,并判断当前时间是否与所述定时测试时间相同;
若当前时间与所述定时测试时间相同,则运行所述测试程序,生成相应的测试结果。
可选地,所述基于所述用户信息判断所述用户是否具备测试权限的步骤,包括:
获取与所述自动化测试请求对应的业务操作信息;
基于预设的业务操作安全等级表对所述业务操作信息进行匹配处理,判断所述业务操作安全等级表中是否存在与所述业务操作信息相同的指定业务操作信息;
若所述业务操作安全等级表中存在所述指定业务操作信息,则筛选出与所述指定业务操作信息对应的安全等级系数;
判断所述安全等级系数是否大于预设的安全等级阈值;
若所述安全等级系数大于所述安全等级阈值,则按照预设规则对所述用户进行身份验证,得到对应的身份验证结果;
若所述身份验证结果为验证通过,则基于所述用户信息,从预设的用户业务权限分值表获取与所述用户信息对应的第一业务权限分值;以及,
获取与所述指定业务操作信息对应的第二业务权限分值;
判断所述第一业务权限分值是否小于所述第二业务权限分值;
若所述第一业务权限分值不小于所述第二业务权限分值,则判定所述用户具备测试权限;
若所述第一业务权限分值小于所述第二业务权限分值,则判定所述用户不具备测试权限。
可选地,所述按照预设规则对所述用户进行身份验证,得到对应的身份验证结果的步骤,包括:
获取预存储的多个提问数据;
基于所述提问数据的使用记录,展示所述提问数据,并生成选择提示信息,以便用户从所有所述提问数据中选择出指定提问数据;
在所述用户选择完毕后,生成回答提醒信息,以便用户输入与所述指定提问数据对应的反馈答案语音数据;
对所述反馈答案语音数据进行识别得到对应的文本信息,并判断所述文本信息是否与预设的正确答案数据相同;
若所述文本信息与所述正确答案数据相同,则获取所述用户的答复反应时长;
判断所述答复反应时长是否大于所述提问问题数据对应的正常反应时长阈值;
若所述答复反应时长大于所述正常反应时长阈值,则从所述反馈答案语音数据中提取出对应的待验证声纹特征向量;以及,
获取与所述正确答案数据对应的预存储的授权声纹特征向量;
计算所述待验证声纹特征向量与所述授权声纹特征向量之间的声纹相似度;
判断所述声纹相似度是否大于预设的相似度阈值;
若所述声纹相似度大于所述相似度阈值,则生成验证通过的身份验证结果,否则生成验证不通过的身份验证结果。
可选地,所述测试用例信息包括测试用例关键词,所述基于所述测试用例信息从预存储的用例数据库中筛选出与所述测试用例信息对应的指定测试用例的步骤,包括:
基于SQL查询语句,按照所述测试用例关键词查询所述用例数据库,得到与所述测试用例关键词对应的用例文件;
对所述用例文件进行复制处理,得到复制后的用例文件副本;
将所述用例文件副本作为所述指定测试用例。
可选地,所述运行所述测试程序,生成相应的测试结果的步骤,包括:
运行所述测试程序,并获取运行所述测试程序的测试过程的测试时长;
判断所述测试时长是否小于预设时长阈值;
若所述测试时长小于所述预设时长阈值,则生成对应的测试结果;
若所述测试时长不小于所述预设时长阈值,则生成测试失败的测试反馈信息。
可选地,所述若当前时间与所述定时测试时间相同,则运行所述测试程序,生成相应的测试结果的步骤之后,包括:
获取预设的预期测试结果;
将所述测试结果与所述预期测试结果进行比对处理,判断所述测试结果是否满足所述预期测试结果;
若所述测试结果满足所述预期测试结果,则生成测试通过的比对测试结果;
若所述测试结果不满足所述预期测试结果,则生成测试未通过的比对测试结果。
可选地,所述若当前时间与所述定时测试时间相同,则运行所述测试程序,生成相应的测试结果的步骤之后,包括:
获取运行所述测试程序的测试过程中产生的中间文件;
根据所述中间文件、所述测试结果以及所述比对测试结果,生成对应的测试报告;
获取预设的邮件登录信息,以及获取与指定用户对应的指定邮件地址;
根据所述邮件登录信息登录邮件服务器;
通过所述邮件服务器将所述测试报告发送至所述指定邮件地址。
本申请还提供一种自动化测试装置,包括:
接收模块,用于接收用户提交的自动化测试请求,其中,所述自动化测试请求携带有用户信息与测试用例信息;
第一判断模块,用于对所述自动化请求进行解析处理,提取出所述用户信息,并基于所述用户信息判断所述用户是否具备测试权限;
筛选模块,用于若所述用户具备测试权限,则从所述自动化测试请求中提取出所述测试用例信息,并基于所述测试用例信息从预存储的用例数据库中筛选出与所述测试用例信息对应的指定测试用例,其中,所述指定测试用例为基于指定语言编写生成的,且所述指定语言不包括编程语言;
第一获取模块,用于获取所述指定测试用例中包含的测试步骤;
第一生成模块,用于根据所述测试步骤,生成与所述指定测试用例对应的测试程序;
第二获取模块,用于获取预设的定时测试时间,以及获取当前时间,并判断当前时间是否与所述定时测试时间相同;
第二生成模块,用于若当前时间与所述定时测试时间相同,则运行所述测试程序,生成相应的测试结果。
本申请还提供一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器执行所述计算机程序时实现上述方法的步骤。
本申请还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述方法的步骤。
本申请中提供的自动化测试方法、装置、计算机设备和存储介质,具有以下有益效果:
本申请中提供的自动化测试方法、装置、计算机设备和存储介质,在接收到用户提交的自动化测试请求时,先会基于自动化测试请求中携带的用户信息验证用户是否具备测试权限,如果用户具备测试权限,则会进一步基于自动化测试请求中携带的测试信息,从预设的用例数据库中快速地提取出由测试人员以不包括编程语言的指定语言编写生成的指定测试用例,进而根据该指定测试用例即可快速智能地生成自动化测试装置可以自动执行的测试程序,由此使得测试人员不需掌握复杂的编程语言即可完成自动化测试,测试人员可将工作重心置于测试用例的设计,从而有效地提高自动化测试的测试效率、降低自动化测试的测试成本。另外,用例数据库中包含的测试用例数据是由测试人员使用自身熟悉的指定语言进行编写生成,能够直观明了地体现出用户的测试意图,有效地提高了测试用例的生成效率,以及提高测试人员的工作效率。
附图说明
图1是本申请一实施例的自动化测试方法的流程示意图;
图2是本申请一实施例的自动化测试装置的结构示意图;
图3是本申请一实施例的计算机设备的结构示意图。
本申请目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用于解释本申请,并不用于限定本申请。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。
参照图1,本申请一实施例的自动化测试方法,包括:
S1:接收用户提交的自动化测试请求,其中,所述自动化测试请求携带有用户信息与测试用例信息;
S2:对所述自动化请求进行解析处理,提取出所述用户信息,并基于所述用户信息判断所述用户是否具备测试权限;
S3:若所述用户具备测试权限,则从所述自动化测试请求中提取出所述测试用例信息,并基于所述测试用例信息从预存储的用例数据库中筛选出与所述测试用例信息对应的指定测试用例,其中,所述指定测试用例为基于指定语言编写生成的,且所述指定语言不包括编程语言;
S4:获取所述指定测试用例中包含的测试步骤;
S5:根据所述测试步骤,生成与所述指定测试用例对应的测试程序;
S6:获取预设的定时测试时间,以及获取当前时间,并判断当前时间是否与所述定时测试时间相同;
S7:若当前时间与所述定时测试时间相同,则运行所述测试程序,生成相应的测试结果。
如上述步骤S1至S7所述,本方法实施例的执行主体为一种自动化测试装置。在实际应用中,上述自动化测试装置可以通过虚拟装置,例如软件代码实现,也可以通过写入或集成有相关执行代码的实体装置实现,且可以与用户通过键盘、鼠标、遥控器、触摸板或声控设备等方式进行人机交互。本实施例中的自动化测试装置能够根据测试人员以不包括编程语言的指定语言(例如中文语言)编写的测试用例,即可生成自动化测试装置可以自动执行的测试程序,由此使得测试人员不需掌握复杂的编程语言即可完成自动化测试,有效地提高了自动化测试的测试效率。具体地,首先接收用户提交的自动化测试请求,其中,上述自动化测试请求携带有用户信息与测试用例信息,该自动化测试请求为用户具有进行自动化测试的需求时提交生成的,上述用户信息是对应于对用户进行测试权限验证的信息,上述测试用例信息为与自动化测试所需的指定测试用例的信息,该测试用例信息可包括测试用例关键词。然后对上述自动化请求进行解析处理,提取出上述用户信息,并基于上述用户信息判断上述用户是否具备测试权限。其中,可以获取该用户信息对应的权限分值,以及获取与自动化测试请求对应的权限分值,并对两个权限分值进行数值大小比较来判别出用户是否具备测试权限。如果上述用户具备测试权限,则从上述自动化测试请求中提取出上述测试用例信息,并基于上述测试用例信息从预存储的用例数据库中筛选出与上述测试用例信息对应的指定测试用例,其中,所述指定测试用例为基于指定语言编写生成的,且所述指定语言不包括编程语言。具体的,上述指定语言可为任意的自然语言,自然语言是指自然地随文化演化的语言,例如该自然语言可包括中文、日文、韩文、英文,等等。优选地,本实施例中的上述指定语言为中文语言,以下将以指定语言为中文语言为例具体介绍本申请的自动化测试方法。但本实施例中指定语言并不局限于中文语言,还可以采用其他自然语言,例如使用日文、韩文等作为上述指定语言。另外,上述测试用例信息包括测试用例关键词,可基于SQL查询语句,按照上述测试用例关键词查询上述用例数据库,进而得到与上述测试用例关键词对应的用例文件并用作上述指定测试用例。此外,用例数据库中包含的测试用例数据均是由测试人员使用自身熟悉的指定语言进行编写生成,能够直观明了地体现出用户的测试意图。在得到了上述指定测试用例后,再获取上述指定测试用例中包含的测试步骤,并根据上述测试步骤,生成与上述指定测试用例对应的测试程序。其中,上述指定测试用例是指由测试人员为了对于目标测试对象的实际测试目的基于中文语言编写生成的。例如测试目的可为测试目标软件的功能是否正常。上述指定测试用例包括至少一个描述测试行为的测试步骤,即上述测试步骤为对目标测试对象进行的测试操作。指定测试用例基于中文语言编写生成,是指上述指定测试用例中除标点之外的字符中的大多数字符为上述中文语言。此外,指定测试用例中的测试步骤为按照预设的编写规则进行编写生成,从而利于后续进行解析。其中,上述编写规则是指测试步骤需与预设的步骤模式匹配,上述编写规则可由测试人员根据实际需求进行灵活设置,该步骤模式可为基于中文语言的正则表达式,即在基于中文语言的正则表达式中,除了正则表达式特有的指示型字符外,其他字符均为基于中文语言的表达式,举例地,编写规则可以为“进入…”、“执行…”、“点击…”等规则形式。在得到了上述指定测试用例中包含的测试步骤后,可进一步利用相应的转换工具将该测试步骤转换为对应的测试程序,并在得到了测试程序后,便可运行该测试程序以实现与上述指定测试用例对应的自动化测试。对于上述转换工具作具体限定,可根据实现需求选取,例如可采用Javassist工具、ASM工具,等等,在此不做过多叙述。之后获取预设的定时测试时间,以及获取当前时间,并判断当前时间是否与上述定时测试时间相同。如果当前时间与上述定时测试时间相同,则运行上述测试程序,生成相应的测试结果。其中,对于上述定时测试时间不作具体限定,可根据实际需求进行设置。通过设置定时测试时间使得能够按照实际情况有计划地执行自动化测试,使得只有在当前时间到达了上述定时测试时间后才会基于上述指定测试用例进行相应的自动化测试,有效地避免了与该指定测试用例对应的自动化测试流程会对当前的其他测试流程造成影响,从而提高了自动化测试的测试智能性。本实施例能够根据测试人员以不包括编程语言的指定语言编写的测试用例,即可快速智能地生成自动化测试装置可以自动执行的测试程序,由此使得测试人员不需掌握复杂的编程语言即可完成自动化测试,测试人员可将工作重心置于测试用例的设计,从而有效地提高自动化测试的测试效率、降低自动化测试的测试成本。另外,测试用例由测试人员使用自身熟悉的指定语言进行编写生成,能够直观明了地体现出用户的测试意图,有效地提高了测试用例的生成效率,以及提高测试人员的工作效率。
进一步地,本申请一实施例中,上述步骤S2中的基于所述用户信息判断所述用户是否具备测试权限的步骤,包括:
S200:获取与所述自动化测试请求对应的业务操作信息;
S201:基于预设的业务操作安全等级表对所述业务操作信息进行匹配处理,判断所述业务操作安全等级表中是否存在与所述业务操作信息相同的指定业务操作信息;
S202:若所述业务操作安全等级表中存在所述指定业务操作信息,则筛选出与所述指定业务操作信息对应的安全等级系数;
S203:判断所述安全等级系数是否大于预设的安全等级阈值;
S204:若所述安全等级系数大于所述安全等级阈值,则按照预设规则对所述用户进行身份验证,得到对应的身份验证结果;
S205:若所述身份验证结果为验证通过,则基于所述用户信息,从预设的用户业务权限分值表获取与所述用户信息对应的第一业务权限分值;以及,
S206:获取与所述指定业务操作信息对应的第二业务权限分值;
S207:判断所述第一业务权限分值是否小于所述第二业务权限分值;
S208:若所述第一业务权限分值不小于所述第二业务权限分值,则判定所述用户具备测试权限;
S209:若所述第一业务权限分值小于所述第二业务权限分值,则判定所述用户不具备测试权限。
如上述步骤S200至S209所述,在接收到用户提交的自动化测试请求后,还需要对用户进行测试权限验证处理,以确保用户具有执行自动化测试的测试权限,避免出现由于响应了非法用户输入的自动化测试请求而导致不良后果的情况,保证了自动化测试请求处理过程中的安全性。具体地,上述基于上述用户信息判断上述用户是否具备测试权限的步骤可包括:首先获取与上述自动化测试请求对应的业务操作信息。然后基于预设的业务操作安全等级表对上述业务操作信息进行匹配处理,判断上述业务操作安全等级表中是否存在与上述业务操作信息相同的指定业务操作信息。其中,上述业务操作安全等级表中预先存储有与各业务操作一一对应的安全等级信息,如果业务操作安全等级表未记录有与上述业务操作信息相同的指定业务操作信息,则表示该业务操作为不需要进行权限验证的操作,而如果存在上述指定业务操作信息,则表示该业务操作为需要进行权限验证的操作。如果上述业务操作安全等级表中存在上述指定业务操作信息,则筛选出与上述指定业务操作信息对应的安全等级系数,并判断上述安全等级系数是否大于预设的安全等级阈值。其中,安全等级系数可分为多个级别,级别越高安全等级越高。上述安全等级阈值为对应着是否需要进行身份验证的阈值数值,如果指定业务操作信息的安全等级系数大于该安全等级阈值,表明该指定业务操作对应于需要进行身份验证与进行权限验证的操作,则后续还需要对用户进行进一步的身份验证处理。而如果安全等级系数不大于该安全等级阈值,则表明该指定业务操作对应于仅需要进行权限验证的操作,则后续不需要对用户进行身份验证处理。如果上述安全等级系数大于上述安全等级阈值,则按照预设规则对上述用户进行身份验证,得到对应的身份验证结果。其中,对于上述预设规则不作具体限定,可以通过判断上述用户信息是否存在于预设的身份信息数据库内的方式来对用户进行身份验证,或者还可以对用户进行人脸识别、活体检测等方式来对用户进行身份验证,等等。如果上述身份验证结果为验证通过,则基于上述用户信息,从预设的用户业务权限分值表获取与上述用户信息对应的第一业务权限分值;以及获取与上述指定业务操作信息对应的第二业务权限分值。其中,上述用户业务权限分值表内记录有用户角色信息,以及与每一个用户角色信息一一对应的业务权限分值,业务权限分值对应用户角色的可操作业务权限。另外,可通过预设的业务操作权限分值表来获取上述第二权限分值,上述业务操作权限分值表中记录有与每一个业务操作一一对应的业务权限分值。之后判断上述第一业务权限分值是否小于上述第二业务权限分值。如果上述第一业务权限分值不小于上述第二业务权限分值,则判定上述用户具备测试权限。而如果上述第一业务权限分值小于上述第二业务权限分值,则判定上述用户不具备测试权限,并可返回测试权限不足的错误信息。本实施例通过结合使用业务操作安全等级表、用户业务权限分值表以及业务操作权限分值表等多种业务验证方式来对用户进行关于测试权限的验证处理,有效地保证了只会对具备与自动化测试对应的测试权限的用户进行对于自动化测试请求的响应处理,提高了自动化测试请求的处理过程中的数据安全性。
进一步地,本申请一实施例中,上述步骤S204,包括:
S2040:获取预存储的多个提问数据;
S2041:基于所述问数据的使用记录,展示所述提问数据,并生成选择提示信息,以便用户从所有所述提问数据中选择出指定提问数据;
S2042:在所述用户选择完毕后,生成回答提醒信息,以便用户输入与所述指定提问数据对应的反馈答案语音数据;
S2043:对所述反馈答案语音数据进行识别得到对应的文本信息,并判断所述文本信息是否与预设的正确答案数据相同;
S2044:若所述文本信息与所述正确答案数据相同,则获取所述用户的答复反应时长;
S2045:判断所述答复反应时长是否大于所述提问问题数据对应的正常反应时长阈值;
S2046:若所述答复反应时长大于所述正常反应时长阈值,则从所述反馈答案语音数据中提取出对应的待验证声纹特征向量;以及,
S2047:获取与所述正确答案数据对应的预存储的授权声纹特征向量;
S2048:计算所述待验证声纹特征向量与所述授权声纹特征向量之间的声纹相似度;
S2049:判断所述声纹相似度是否大于预设的相似度阈值;
S2050:若所述声纹相似度大于所述相似度阈值,则生成验证通过的身份验证结果,否则生成验证不通过的身份验证结果。
如上述步骤S2040至S2050所述,上述按照预设规则对上述用户进行身份验证,得到对应的身份验证结果的步骤,具体可包括:首先获取预存储的多个提问数据。其中,上述提问数据可为与上述用户信息对应的目标用户为了满足身份验证流程预先录入的多个问题数据,且同时会有录入有目标用户分别对应于各问题数据所作出的正确的答案语音数据。然后基于上述提问数据的使用记录,展示上述提问数据,并生成选择提示信息,以便用户从所有上述提问数据中选择出指定提问数据。其中,可以根据提问数据的使用记录从多到少的顺序依次排列各上述提问数据,使得用户能够优先查看使用记录越多的提问数据,并能选择出自己经常回答的提问数据,进而能够快速且准确地返回相应的正确答案,有利于提高身份验证的验证效率。在上述用户选择完毕后,生成回答提醒信息,以便用户输入与上述指定提问数据对应的反馈答案语音数据。在得到了上述反馈答案语音数据后,对上述反馈答案语音数据进行识别得到对应的文本信息,并判断上述文本信息是否与预设的正确答案数据相同。其中,可基于现有语音识别技术来识别出与反馈答案语音数据对应的文本信息。如果上述文本信息与上述正确答案数据相同,则获取上述用户的答复反应时长,并判断上述答复反应时长是否大于上述提问问题数据对应的正常反应时长阈值。其中,计算上述用户的答复反应时长的步骤可包括:获取在当前页面展示上述指定提问数据的第一时间;以及获取用户输入上述反馈答案语音数据的第二时间;计算上述第二时间与上述第一时间的差值;将上述差值确定为上述答复反应时长。另外,上述答复反应时长为从用户在得知提问数据的内容后,到回答完提问数据中的问题后所使用的时间时长。正常反应时长阈值可根据经验数据进行设置。例如,可收集正常回答情况下的多个反馈数据,并统计多个反馈数据中的答复反应时长来确定出正常反应时长阈值。如果上述答复反应时长大于上述正常反应时长阈值,则从上述反馈答案语音数据中提取出对应的待验证声纹特征向量。以及获取与上述正确答案数据对应的预存储的授权声纹特征向量。其中,可基于现有的声纹提取算法来提取出上述待验证声纹特征向量与上述授权声纹特征向量。之后计算上述待验证声纹特征向量与上述授权声纹特征向量之间的声纹相似度,并判断上述声纹相似度是否大于预设的相似度阈值。其中,对于上述声纹相似度的计算方式不作具体限定。优选地,可采用距离计算公式来计算出上述声纹相似度,a为上待验证声纹特征向量,b为上述授权声纹特征向量。另外,对于上述相似度阈值不作具体限定,可根据实际需求进行设置,例如可设置为0.95。如果上述声纹相似度大于上述相似度阈值,则生成验证通过的身份验证结果,否则生成验证不通过的身份验证结果。本实施例通过采用问题提问、反应时长验证以及声纹验证等多重身份验证方式来实现对于用户的准确的身份验证处理,保证了身份验证的适配性、准确性与可靠性,避免由于响应了非法用户输入的自动化测试请求而导致不良后果,保证了自动化测试请求处理过程中的安全性。
进一步地,本申请一实施例中,所述测试用例信息包括测试用例关键词,上述步骤S3中的基于所述测试用例信息从预存储的用例数据库中筛选出与所述测试用例信息对应的指定测试用例的步骤,包括:
S300:基于SQL查询语句,按照所述测试用例关键词查询所述用例数据库,得到与所述测试用例关键词对应的用例文件;
S301:对所述用例文件进行复制处理,得到复制后的用例文件副本;
S302:将所述用例文件副本作为所述指定测试用例。
如上述步骤S300至S302所述,上述测试用例信息包括测试用例关键词,上述基于上述测试用例信息从预存储的用例数据库中筛选出与上述测试用例信息对应的指定测试用例的步骤,具体可包括:首先基于SQL查询语句,按照上述测试用例关键词查询上述用例数据库,得到与上述测试用例关键词对应的用例文件。其中,可先建立与预存储的用例数据库的连接,即获得与上述用例数据库的连接句柄,再通过该连接句柄连接该用例数据库。在与上述用例数据库连接成功后,再构造特定的SQL查询语句并调用相应函数执行该SQL查询语句。上述SQL查询语句具体为select语句,该SQL查询语句包括的语句内容可为select···from···。通过利用该SQL查询语句,然后按照测试用例关键词查询用例数据库,便可从用例数据库中查询得到与该测试用例关键词对应的用例文件,保证了上述用例文件的查询效率与查询准确性。另外,可将各测试用例按照关键词分类建立出用例数据库,即通过将每一个测试用例与其对应的用例关键词建立映射关系后,再对应存储于预设的数据库中以完成对于上述用例数据库的创建。上述用例关键词可包括项目属性关键词、摘要关键词、步骤关键词等。。然后对上述用例文件进行复制处理,得到复制后的用例文件副本。其中,在得到了上述用例文件后,可先获取预设的空白文档,再将查询得到的上述用例文件的全部内容复制到上述空白文档内,以生成上述用例文件副本。最后在得到了上述用例文件副本时,将上述用例文件副本作为上述指定测试用例。本实施例能够基于自动化测试请求中携带的测试用例关键词,使用SQL查询语句来快速地从预设的用例数据库中查询出本次自动化测试所需的指定测试用例,有利于后续能够根据该指定测试用例来完成相应的自动化测试流程,提高自动化测试的测试效率。
进一步地,本申请一实施例中,上述步骤S7,包括:
S700:运行所述测试程序,并获取运行所述测试程序的测试过程的测试时长;
S701:判断所述测试时长是否小于预设时长阈值;
S702:若所述测试时长小于所述预设时长阈值,则生成对应的测试结果;
S703:若所述测试时长不小于所述预设时长阈值,则生成测试失败的测试反馈信息。
如上述步骤S700至S703所述,上述运行上述测试程序,生成相应的测试结果的步骤,具体可包括:首先运行上述测试程序,并获取运行上述测试程序的测试过程的测试时长。其中,可以通过测试过程中的测试开始时间和测试结束时间计算得到测试时长,即测试时长=测试结束时间-测试开始时间,进而可根据该测试时长来判别出当前自动化测试的测试过程是否顺利进行。然后判断上述测试时长是否小于预设时长阈值。其中,对于上述预设时长阈值的取值不作具体限定,可根据实际需求进行设置。如果上述测试时长小于上述预设时长阈值,表明此时的测试流程是成功的,则会生成对应的测试结果。而如果上述测试时长不小于上述预设时长阈值,表明则此时的测试流程是失败的,则会生成测试失败的测试反馈信息。本实施例通过计算运行上述测试程序的测试过程的测试时长并与预设时长阈值进行比较,进而能够根据得到的比较结果来生成相应的测试结果或测试失败的测试反馈信息,使得后续能够根据上述测试结果或上述测试反馈信息来及时了解自动化测试过程中的实际测试情况。
进一步地,本申请一实施例中,上述步骤S7之后,包括:
S710:获取预设的预期测试结果;
S711:将所述测试结果与所述预期测试结果进行比对处理,判断所述测试结果是否满足所述预期测试结果;
S712:若所述测试结果满足所述预期测试结果,则生成测试通过的比对测试结果;
S713:若所述测试结果不满足所述预期测试结果,则生成测试未通过的比对测试结果。
如上述步骤S710至S713所述,上述若当前时间与上述定时测试时间相同,则运行上述测试程序,生成相应的测试结果的步骤之后,还可包括:获取预设的预期测试结果。其中,上述预期测试结果可基于上述指定测试用例进行获取,该预期测试结果为上述测试程序在正常运行下能实现的标准测试结果。然后将上述测试结果与上述预期测试结果进行比对处理,判断上述测试结果是否满足上述预期测试结果。其中,如果测试结果的数值存在于上述预期测试结果的数值范围内,则判定上述测试结果满足上述预期测试结果,而如果测试结果的数值不在于上述预期测试结果的数值范围内,则判定上述测试结果不满足上述预期测试结果。如果上述测试结果满足上述预期测试结果,则生成测试通过的比对测试结果。而如果上述测试结果不满足上述预期测试结果,则生成测试未通过的比对测试结果。本实施例通过将通过运行上述测试程序得到的测试结果与预期测试结果进行比对处理,进而能够快速地发现测试结果与预期测试结果之间的差异,并能够生成相应的比对测试结果,进而能够根据该比对测试结果来准确得到本次自动化测试的实际测试情况。
进一步地,本申请一实施例中,上述步骤S7之后,包括:
S720:获取运行所述测试程序的测试过程中产生的中间文件;
S721:根据所述中间文件、所述测试结果以及所述比对测试结果,生成对应的测试报告;
S722:获取预设的邮件登录信息,以及获取与指定用户对应的指定邮件地址;
S723:根据所述邮件登录信息登录邮件服务器;
S724:通过所述邮件服务器将所述测试报告发送至所述指定邮件地址。
如上述步骤S720至S724所述,上述若当前时间与上述定时测试时间相同,则运行上述测试程序,生成相应的测试结果的步骤之后,还可包括:获取运行上述测试程序的测试过程中产生的中间文件。然后根据上述中间文件、上述测试结果以及上述比对测试结果,生成对应的测试报告。其中,可预先设置有测试报告模板,通过将上述中间文件、测试结果以及比对测试结果填充入测试报告模板的相应位置处,从而可以生成与本次自动化测试对应的测试报告。之后获取预设的邮件登录信息,以及获取与指定用户对应的指定邮件地址。在得到了上述邮件登录信息与指定邮件地址后,再根据上述邮件登录信息登录邮件服务器。最后通过上述邮件服务器将上述测试报告发送至上述指定邮件地址。本实施例在运行测试程序后,会进一步生成包含中间文件、测试结果以及比对测试结果的测试报告。并且为了方便相关用户对本次自动化测试进行远程分析和操作,还会自动登录邮件服务器,并通过该邮件服务器将上述测试报告自动发送至预设的指定邮件地址,以便于相关用户能够及时了解自动化测试过程中的测试情况,发现测试问题,进而提高自动化测试的测试效率。
本申请实施例中的自动化测试方法还可以应用于区块链领域,如将上述指定测试用例等数据存储于区块链上。通过使用区块链来对上述指定测试用例进行存储和管理,能够有效地保证上述指定测试用例的安全性与不可篡改性。
上述区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。
区块链底层平台可以包括用户管理、基础服务、智能合约以及运营监控等处理模块。其中,用户管理模块负责所有区块链参与者的身份信息管理,包括维护公私钥生成(账户管理)、密钥管理以及用户真实身份和区块链地址对应关系维护(权限管理)等,并且在授权的情况下,监管和审计某些真实身份的交易情况,提供风险控制的规则配置(风控审计);基础服务模块部署在所有区块链节点设备上,用来验证业务请求的有效性,并对有效请求完成共识后记录到存储上,对于一个新的业务请求,基础服务先对接口适配解析和鉴权处理(接口适配),然后通过共识算法将业务信息加密(共识管理),在加密之后完整一致的传输至共享账本上(网络通信),并进行记录存储;智能合约模块负责合约的注册发行以及合约触发和合约执行,开发人员可以通过某种编程语言定义合约逻辑,发布到区块链上(合约注册),根据合约条款的逻辑,调用密钥或者其它的事件触发执行,完成合约逻辑,同时还提供对合约升级注销的功能;运营监控模块主要负责产品发布过程中的部署、配置的修改、合约设置、云适配以及产品运行中的实时状态的可视化输出,例如:告警、监控网络情况、监控节点设备健康状态等。
参照图2,本申请一实施例中还提供了一种自动化测试装置,包括:
接收模块1,用于接收用户提交的自动化测试请求,其中,所述自动化测试请求携带有用户信息与测试用例信息;
第一判断模块2,用于对所述自动化请求进行解析处理,提取出所述用户信息,并基于所述用户信息判断所述用户是否具备测试权限;
筛选模块3,用于若所述用户具备测试权限,则从所述自动化测试请求中提取出所述测试用例信息,并基于所述测试用例信息从预存储的用例数据库中筛选出与所述测试用例信息对应的指定测试用例,其中,所述指定测试用例为基于指定语言编写生成的,且所述指定语言不包括编程语言;
第一获取模块4,用于获取所述指定测试用例中包含的测试步骤;
第一生成模块5,用于根据所述测试步骤,生成与所述指定测试用例对应的测试程序;
第二获取模块6,用于获取预设的定时测试时间,以及获取当前时间,并判断当前时间是否与所述定时测试时间相同;
第二生成模块7,用于若当前时间与所述定时测试时间相同,则运行所述测试程序,生成相应的测试结果。
本实施例中,上述自动化测试装置中的接收模块、第一判断模块、筛选模块、第一获取模块、第一生成模块、第二获取模块与第二生成模块的功能和作用的实现过程具体详见上述自动化测试方法中对应步骤S1至S7的实现过程,在此不再赘述。
进一步地,本申请一实施例中,上述第一判断模块,包括:
第一获取单元,用于获取与所述自动化测试请求对应的业务操作信息;
第一判断单元,用于基于预设的业务操作安全等级表对所述业务操作信息进行匹配处理,判断所述业务操作安全等级表中是否存在与所述业务操作信息相同的指定业务操作信息;
筛选单元,用于若所述业务操作安全等级表中存在所述指定业务操作信息,则筛选出与所述指定业务操作信息对应的安全等级系数;
第二判断单元,用于判断所述安全等级系数是否大于预设的安全等级阈值;
验证单元,用于若所述安全等级系数大于所述安全等级阈值,则按照预设规则对所述用户进行身份验证,得到对应的身份验证结果;
第二获取单元,用于若所述身份验证结果为验证通过,则基于所述用户信息,从预设的用户业务权限分值表获取与所述用户信息对应的第一业务权限分值;以及,
第三获取单元,用于获取与所述指定业务操作信息对应的第二业务权限分值;
第三判断单元,用于判断所述第一业务权限分值是否小于所述第二业务权限分值;
第一判定单元,用于若所述第一业务权限分值不小于所述第二业务权限分值,则判定所述用户具备测试权限;
第二判定单元,用于若所述第一业务权限分值小于所述第二业务权限分值,则判定所述用户不具备测试权限。
本实施例中,上述自动化测试装置中的第一获取单元、第一判断单元、筛选单元、第二判断单元、验证单元、第二获取单元、第三获取单元、第三判断单元、第一判定单元与第二判定单元的功能和作用的实现过程具体详见上述自动化测试方法中对应步骤S200至S209的实现过程,在此不再赘述。
进一步地,本申请一实施例中,上述验证单元,包括:
第一获取子单元,用于获取预存储的多个提问数据;
展示子单元,用于基于所述提问数据的使用记录,展示所述提问数据,并生成选择提示信息,以便用户从所有所述提问数据中选择出指定提问数据;
第一生成子单元,用于在所述用户选择完毕后,生成回答提醒信息,以便用户输入与所述指定提问数据对应的反馈答案语音数据;
第一判断子单元,用于对所述反馈答案语音数据进行识别得到对应的文本信息,并判断所述文本信息是否与预设的正确答案数据相同;
第二获取子单元,用于若所述文本信息与所述正确答案数据相同,则获取所述用户的答复反应时长;
第二判断子单元,用于判断所述答复反应时长是否大于所述提问问题数据对应的正常反应时长阈值;
提取子单元,用于若所述答复反应时长大于所述正常反应时长阈值,则从所述反馈答案语音数据中提取出对应的待验证声纹特征向量;以及,
第三获取子单元,用于获取与所述正确答案数据对应的预存储的授权声纹特征向量;
计算子单元,用于计算所述待验证声纹特征向量与所述授权声纹特征向量之间的声纹相似度;
第三判断子单元,用于判断所述声纹相似度是否大于预设的相似度阈值;
第二生成子单元,用于若所述声纹相似度大于所述相似度阈值,则生成验证通过的身份验证结果,否则生成验证不通过的身份验证结果。
本实施例中,上述自动化测试装置中的第一获取子单元、展示子单元、第一生成子单元、第一判断子单元、第二获取子单元、第二判断子单元、提取子单元、第三获取子单元、计算子单元、第三判断子单元与第二生成子单元的功能和作用的实现过程具体详见上述自动化测试方法中对应步骤S2040至S2050的实现过程,在此不再赘述。
进一步地,本申请一实施例中,上述筛选模块,包括:
查询单元,用于基于SQL查询语句,按照所述测试用例关键词查询所述用例数据库,得到与所述测试用例关键词对应的用例文件;
复制单元,用于对所述用例文件进行复制处理,得到复制后的用例文件副本;
确定单元,用于将所述用例文件副本作为所述指定测试用例。
本实施例中,上述自动化测试装置中的查询单元、复制单元与确定单元的功能和作用的实现过程具体详见上述自动化测试方法中对应步骤S300至S302的实现过程,在此不再赘述。
进一步地,本申请一实施例中,上述第二生成模块,包括:
运行单元,用于运行所述测试程序,并获取运行所述测试程序的测试过程的测试时长;
第四判断单元,用于判断所述测试时长是否小于预设时长阈值;
第三判定单元,用于若所述测试时长小于所述预设时长阈值,则生成对应的测试结果;
第四判定单元,用于若所述测试时长不小于所述预设时长阈值,则生成测试失败的测试反馈信息。
本实施例中,上述自动化测试装置中的运行单元、第四判断单元、第三判定单元与第四判定单元的功能和作用的实现过程具体详见上述自动化测试方法中对应步骤S700至S703的实现过程,在此不再赘述。
进一步地,本申请一实施例中,上述自动化测试装置,包括:
第三获取模块,用于获取预设的预期测试结果;
比对模块,用于将所述测试结果与所述预期测试结果进行比对处理,判断所述测试结果是否满足所述预期测试结果;
第三生成模块,用于若所述测试结果满足所述预期测试结果,则生成测试通过的比对测试结果;
第四生成模块,用于若所述测试结果不满足所述预期测试结果,则生成测试未通过的比对测试结果。
本实施例中,上述自动化测试装置中的第三获取模块、比对模块、第三生成模块与第四生成模块的功能和作用的实现过程具体详见上述自动化测试方法中对应步骤S710至S713的实现过程,在此不再赘述。
进一步地,本申请一实施例中,上述自动化测试装置,包括:
第四获取模块,用于获取运行所述测试程序的测试过程中产生的中间文件;
第五生成模块,用于根据所述中间文件、所述测试结果以及所述比对测试结果,生成对应的测试报告;
第五获取模块,用于获取预设的邮件登录信息,以及获取与指定用户对应的指定邮件地址;
登录模块,用于根据所述邮件登录信息登录邮件服务器;
发送模块,用于通过所述邮件服务器将所述测试报告发送至所述指定邮件地址。
本实施例中,上述自动化测试装置中的第四获取模块、第五生成模块、第五获取模块、登录模块与发送模块的功能和作用的实现过程具体详见上述自动化测试方法中对应步骤S720至S724的实现过程,在此不再赘述。
参照图3,本申请实施例中还提供一种计算机设备,该计算机设备可以是服务器,同时该计算机设备也可以是终端,其内部结构可以如图3所示。该计算机设备包括通过***总线连接的处理器、存储器、网络接口、显示屏、输入装置和数据库。其中,该计算机设备设计的处理器用于提供计算和控制能力。该计算机设备的存储器包括存储介质、内存储器。该存储介质存储有操作***、计算机程序和数据库。该内存储器为存储介质中的操作***和计算机程序的运行提供环境。该计算机设备的数据库用于存储用户信息、测试用例信息、指定测试用例、测试步骤、测试程序以及测试结果。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机设备的显示屏是计算机中必不可少的一种图文输出设备,用于将数字信号转换为光信号,使文字与图形在显示屏的屏幕上显示出来。该计算机设备的输入装置是计算机与用户或其他设备之间进行信息交换的主要装置,用于把数据、指令及某些标志信息等输送到计算机中去。该计算机程序被处理器执行时以实现一种自动化测试方法。
上述处理器执行上述自动化测试方法的步骤:
接收用户提交的自动化测试请求,其中,所述自动化测试请求携带有用户信息与测试用例信息;
对所述自动化请求进行解析处理,提取出所述用户信息,并基于所述用户信息判断所述用户是否具备测试权限;
若所述用户具备测试权限,则从所述自动化测试请求中提取出所述测试用例信息,并基于所述测试用例信息从预存储的用例数据库中筛选出与所述测试用例信息对应的指定测试用例,其中,所述指定测试用例为基于指定语言编写生成的,且所述指定语言不包括编程语言;
获取所述指定测试用例中包含的测试步骤;
根据所述测试步骤,生成与所述指定测试用例对应的测试程序;
获取预设的定时测试时间,以及获取当前时间,并判断当前时间是否与所述定时测试时间相同;
若当前时间与所述定时测试时间相同,则运行所述测试程序,生成相应的测试结果。
本领域技术人员可以理解,图3中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的装置、计算机设备的限定。
本申请一实施例还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现一种自动化测试方法,具体为:
接收用户提交的自动化测试请求,其中,所述自动化测试请求携带有用户信息与测试用例信息;
对所述自动化请求进行解析处理,提取出所述用户信息,并基于所述用户信息判断所述用户是否具备测试权限;
若所述用户具备测试权限,则从所述自动化测试请求中提取出所述测试用例信息,并基于所述测试用例信息从预存储的用例数据库中筛选出与所述测试用例信息对应的指定测试用例,其中,所述指定测试用例为基于指定语言编写生成的,且所述指定语言不包括编程语言;
获取所述指定测试用例中包含的测试步骤;
根据所述测试步骤,生成与所述指定测试用例对应的测试程序;
获取预设的定时测试时间,以及获取当前时间,并判断当前时间是否与所述定时测试时间相同;
若当前时间与所述定时测试时间相同,则运行所述测试程序,生成相应的测试结果。
综上所述,本申请实施例中提供的自动化测试方法、装置、计算机设备和存储介质,在接收到用户提交的自动化测试请求时,先会基于自动化测试请求中携带的用户信息验证用户是否具备测试权限,如果用户具备测试权限,则会进一步基于自动化测试请求中携带的测试信息,从预设的用例数据库中快速地提取出由测试人员以不包括编程语言的指定语言编写生成的指定测试用例,进而根据该指定测试用例即可快速智能地生成自动化测试装置可以自动执行的测试程序,由此使得测试人员不需掌握复杂的编程语言即可完成自动化测试,测试人员可将工作重心置于测试用例的设计,从而有效地提高自动化测试的测试效率、降低自动化测试的测试成本。另外,用例数据库中包含的测试用例数据是由测试人员使用自身熟悉的指定语言进行编写生成,能够直观明了地体现出用户的测试意图,有效地提高了测试用例的生成效率,以及提高测试人员的工作效率。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的和实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可以包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM通过多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双速据率SDRAM(SSRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其它变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其它要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。
以上所述仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。
Claims (10)
1.一种自动化测试方法,其特征在于,包括:
接收用户提交的自动化测试请求,其中,所述自动化测试请求携带有用户信息与测试用例信息;
对所述自动化请求进行解析处理,提取出所述用户信息,并基于所述用户信息判断所述用户是否具备测试权限;
若所述用户具备测试权限,则从所述自动化测试请求中提取出所述测试用例信息,并基于所述测试用例信息从预存储的用例数据库中筛选出与所述测试用例信息对应的指定测试用例,其中,所述指定测试用例为基于指定语言编写生成的,且所述指定语言不包括编程语言;
获取所述指定测试用例中包含的测试步骤;
根据所述测试步骤,生成与所述指定测试用例对应的测试程序;
获取预设的定时测试时间,以及获取当前时间,并判断当前时间是否与所述定时测试时间相同;
若当前时间与所述定时测试时间相同,则运行所述测试程序,生成相应的测试结果。
2.根据权利要求1所述的自动化测试方法,其特征在于,所述基于所述用户信息判断所述用户是否具备测试权限的步骤,包括:
获取与所述自动化测试请求对应的业务操作信息;
基于预设的业务操作安全等级表对所述业务操作信息进行匹配处理,判断所述业务操作等级表中是否存在与所述业务操作信息相同的指定业务操作信息;
若所述业务操作安全等级表中存在所述指定业务操作信息,则筛选出与所述指定业务操作信息对应的安全等级系数;
判断所述安全等级系数是否大于预设的安全等级阈值;
若所述安全等级系数大于所述安全等级阈值,则按照预设规则对所述用户进行身份验证,得到对应的身份验证结果;
若所述身份验证结果为验证通过,则基于所述用户信息,从预设的用户业务权限分值表获取与所述用户信息对应的第一业务权限分值;以及,
获取与所述指定业务操作信息对应的第二业务权限分值;
判断所述第一业务权限分值是否小于所述第二业务权限分值;
若所述第一业务权限分值不小于所述第二业务权限分值,则判定所述用户具备测试权限;
若所述第一业务权限分值小于所述第二业务权限分值,则判定所述用户不具备测试权限。
3.根据权利要求2所述的自动化测试方法,其特征在于,所述按照预设规则对所述用户进行身份验证,得到对应的身份验证结果的步骤,包括:
获取预存储的多个提问数据;
基于所述提问数据的使用记录,展示所述提问数据,并生成选择提示信息,以便用户从所有所述提问数据中选择出指定提问数据;
在所述用户选择完毕后,生成回答提醒信息,以便用户输入与所述指定提问数据对应的反馈答案语音数据;
对所述反馈答案语音数据进行识别得到对应的文本信息,并判断所述文本信息是否与预设的正确答案数据相同;
若所述文本信息与所述正确答案数据相同,则获取所述用户的答复反应时长;
判断所述答复反应时长是否大于所述提问问题数据对应的正常反应时长阈值;
若所述答复反应时长大于所述正常反应时长阈值,则从所述反馈答案语音数据中提取出对应的待验证声纹特征向量;以及,
获取与所述正确答案数据对应的预存储的授权声纹特征向量;
计算所述待验证声纹特征向量与所述授权声纹特征向量之间的声纹相似度;
判断所述声纹相似度是否大于预设的相似度阈值;
若所述声纹相似度大于所述相似度阈值,则生成验证通过的身份验证结果,否则生成验证不通过的身份验证结果。
4.根据权利要求1所述的自动化测试方法,其特征在于,所述测试用例信息包括测试用例关键词,所述基于所述测试用例信息从预存储的用例数据库中筛选出与所述测试用例信息对应的指定测试用例的步骤,包括:
基于SQL查询语句,按照所述测试用例关键词查询所述用例数据库,得到与所述测试用例关键词对应的用例文件;
对所述用例文件进行复制处理,得到复制后的用例文件副本;
将所述用例文件副本作为所述指定测试用例。
5.根据权利要求1所述的自动化测试方法,其特征在于,所述运行所述测试程序,生成相应的测试结果的步骤,包括:
运行所述测试程序,并获取运行所述测试程序的测试过程的测试时长;
判断所述测试时长是否小于预设时长阈值;
若所述测试时长小于所述预设时长阈值,则生成对应的测试结果;
若所述测试时长不小于所述预设时长阈值,则生成测试失败的测试反馈信息。
6.根据权利要求1所述的自动化测试方法,其特征在于,所述若当前时间与所述定时测试时间相同,则运行所述测试程序,生成相应的测试结果的步骤之后,包括:
获取预设的预期测试结果;
将所述测试结果与所述预期测试结果进行比对处理,判断所述测试结果是否满足所述预期测试结果;
若所述测试结果满足所述预期测试结果,则生成测试通过的比对测试结果;
若所述测试结果不满足所述预期测试结果,则生成测试未通过的比对测试结果。
7.根据权利要求6所述的自动化测试方法,其特征在于,所述若当前时间与所述定时测试时间相同,则运行所述测试程序,生成相应的测试结果的步骤之后,包括:
获取运行所述测试程序的测试过程中产生的中间文件;
根据所述中间文件、所述测试结果以及所述比对测试结果,生成对应的测试报告;
获取预设的邮件登录信息,以及获取与指定用户对应的指定邮件地址;
根据所述邮件登录信息登录邮件服务器;
通过所述邮件服务器将所述测试报告发送至所述指定邮件地址。
8.一种自动化测试装置,其特征在于,包括:
接收模块,用于接收用户提交的自动化测试请求,其中,所述自动化测试请求携带有用户信息与测试用例信息;
第一判断模块,用于对所述自动化请求进行解析处理,提取出所述用户信息,并基于所述用户信息判断所述用户是否具备测试权限;
筛选模块,用于若所述用户具备测试权限,则从所述自动化测试请求中提取出所述测试用例信息,并基于所述测试用例信息从预存储的用例数据库中筛选出与所述测试用例信息对应的指定测试用例,其中,所述指定测试用例为基于指定语言编写生成的,且所述指定语言不包括编程语言;
第一获取模块,用于获取所述指定测试用例中包含的测试步骤;
第一生成模块,用于根据所述测试步骤,生成与所述指定测试用例对应的测试程序;
第二获取模块,用于获取预设的定时测试时间,以及获取当前时间,并判断当前时间是否与所述定时测试时间相同;
第二生成模块,用于若当前时间与所述定时测试时间相同,则运行所述测试程序,生成相应的测试结果。
9.一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011298508.6A CN112463599B (zh) | 2020-11-18 | 2020-11-18 | 自动化测试方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011298508.6A CN112463599B (zh) | 2020-11-18 | 2020-11-18 | 自动化测试方法、装置、计算机设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112463599A true CN112463599A (zh) | 2021-03-09 |
CN112463599B CN112463599B (zh) | 2024-07-16 |
Family
ID=74836831
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011298508.6A Active CN112463599B (zh) | 2020-11-18 | 2020-11-18 | 自动化测试方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112463599B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113076258A (zh) * | 2021-04-21 | 2021-07-06 | ***通信集团陕西有限公司 | 一种权限申请的方法、装置、设备及可读存储介质 |
CN113392023A (zh) * | 2021-06-30 | 2021-09-14 | 展讯半导体(成都)有限公司 | 自动化测试方法、装置、计算机设备、芯片和模组设备 |
CN113986744A (zh) * | 2021-11-02 | 2022-01-28 | 中国银行股份有限公司 | 一种分库分表组件的测试方法、装置及存储介质 |
CN114745749A (zh) * | 2022-04-24 | 2022-07-12 | 湖南亚信安慧科技有限公司 | 虚拟网元测试方法、装置、电子设备及可读存储介质 |
CN116501610A (zh) * | 2023-03-13 | 2023-07-28 | 深圳华锐分布式技术股份有限公司 | 做市交易***的测试方法、装置、设备及介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040107415A1 (en) * | 2002-12-03 | 2004-06-03 | Konstantin Melamed | Web-interactive software testing management method and computer system including an integrated test case authoring tool |
US20120011489A1 (en) * | 2010-07-08 | 2012-01-12 | Murthy Praveen K | Methods and Systems for Test Automation of Forms in Web Applications |
CN102467416A (zh) * | 2010-11-05 | 2012-05-23 | 中科正阳信息安全技术有限公司 | 一种访问控制客体粒度测试框架及方法 |
CN111667250A (zh) * | 2020-06-16 | 2020-09-15 | 扬州航盛科技有限公司 | 一种基于云的自动化测试执行机的管理方法和*** |
-
2020
- 2020-11-18 CN CN202011298508.6A patent/CN112463599B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040107415A1 (en) * | 2002-12-03 | 2004-06-03 | Konstantin Melamed | Web-interactive software testing management method and computer system including an integrated test case authoring tool |
US20120011489A1 (en) * | 2010-07-08 | 2012-01-12 | Murthy Praveen K | Methods and Systems for Test Automation of Forms in Web Applications |
CN102467416A (zh) * | 2010-11-05 | 2012-05-23 | 中科正阳信息安全技术有限公司 | 一种访问控制客体粒度测试框架及方法 |
CN111667250A (zh) * | 2020-06-16 | 2020-09-15 | 扬州航盛科技有限公司 | 一种基于云的自动化测试执行机的管理方法和*** |
Non-Patent Citations (1)
Title |
---|
刘国庆;汪兴轩;: "基于Charles录制会话的HTTP接口自动化测试框架设计与实现", 计算机应用与软件, no. 06, 12 June 2019 (2019-06-12) * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113076258A (zh) * | 2021-04-21 | 2021-07-06 | ***通信集团陕西有限公司 | 一种权限申请的方法、装置、设备及可读存储介质 |
CN113076258B (zh) * | 2021-04-21 | 2023-09-19 | ***通信集团陕西有限公司 | 一种权限申请的方法、装置、设备及可读存储介质 |
CN113392023A (zh) * | 2021-06-30 | 2021-09-14 | 展讯半导体(成都)有限公司 | 自动化测试方法、装置、计算机设备、芯片和模组设备 |
CN113986744A (zh) * | 2021-11-02 | 2022-01-28 | 中国银行股份有限公司 | 一种分库分表组件的测试方法、装置及存储介质 |
CN114745749A (zh) * | 2022-04-24 | 2022-07-12 | 湖南亚信安慧科技有限公司 | 虚拟网元测试方法、装置、电子设备及可读存储介质 |
CN116501610A (zh) * | 2023-03-13 | 2023-07-28 | 深圳华锐分布式技术股份有限公司 | 做市交易***的测试方法、装置、设备及介质 |
CN116501610B (zh) * | 2023-03-13 | 2024-03-01 | 深圳华锐分布式技术股份有限公司 | 做市交易***的测试方法、装置、设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112463599B (zh) | 2024-07-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112463599B (zh) | 自动化测试方法、装置、计算机设备和存储介质 | |
CN112527630B (zh) | 测试用例生成方法、装置、计算机设备和存储介质 | |
CN112347310A (zh) | 事件处理信息的查询方法、装置、计算机设备和存储介质 | |
CN112637282B (zh) | 信息推送方法、装置、计算机设备和存储介质 | |
WO2020082673A1 (zh) | ***检验方法、装置、计算设备和存储介质 | |
CN109359113B (zh) | 纳税报表核对方法、装置及存储介质、服务器 | |
CN113742776B (zh) | 基于生物识别技术的数据校验方法、装置和计算机设备 | |
CN112464117A (zh) | 请求处理方法、装置、计算机设备和存储介质 | |
CN112036172B (zh) | 基于模型的缩写数据的实体识别方法、装置和计算机设备 | |
CN111797605A (zh) | 基于报表模板的报表生成方法、装置和计算机设备 | |
CN113642039A (zh) | 单证模板的配置方法、装置、计算机设备和存储介质 | |
CN113435990B (zh) | 基于规则引擎的凭证生成方法、装置和计算机设备 | |
CN114817055A (zh) | 基于接口的回归测试方法、装置、计算机设备和存储介质 | |
CN113327037A (zh) | 基于模型的风险识别方法、装置、计算机设备和存储介质 | |
CN113282514A (zh) | 问题数据的处理方法、装置、计算机设备和存储介质 | |
CN112836061A (zh) | 智能推荐的方法、装置以及计算机设备 | |
CN113241138A (zh) | 医疗事件信息的抽取方法、装置、计算机设备及存储介质 | |
CN113986581A (zh) | 数据聚合处理方法、装置、计算机设备和存储介质 | |
CN113656588A (zh) | 基于知识图谱的数据对码方法、装置、设备和存储介质 | |
CN113672654A (zh) | 数据查询方法、装置、计算机设备和存储介质 | |
CN113515444A (zh) | 测试用例生成方法、装置、计算机设备和存储介质 | |
CN113918609A (zh) | 试卷创建方法、装置、计算机设备和存储介质 | |
CN113312258A (zh) | 一种接口测试方法、装置、设备及存储介质 | |
CN113051372A (zh) | 材料数据的处理方法、装置、计算机设备和存储介质 | |
CN114036117A (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 |