CN116627824A - 一种软件测试方法、装置、电子设备及存储介质 - Google Patents
一种软件测试方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN116627824A CN116627824A CN202310617121.XA CN202310617121A CN116627824A CN 116627824 A CN116627824 A CN 116627824A CN 202310617121 A CN202310617121 A CN 202310617121A CN 116627824 A CN116627824 A CN 116627824A
- Authority
- CN
- China
- Prior art keywords
- test
- software
- information
- instruction
- target
- 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
- 238000000034 method Methods 0.000 title claims abstract description 60
- 238000013522 software testing Methods 0.000 title claims abstract description 50
- 238000012360 testing method Methods 0.000 claims abstract description 366
- 238000012544 monitoring process Methods 0.000 claims description 9
- 230000000977 initiatory effect Effects 0.000 claims description 8
- 230000004044 response Effects 0.000 claims description 4
- 239000000725 suspension Substances 0.000 claims description 3
- 241000282693 Cercopithecidae Species 0.000 description 17
- 238000010586 diagram Methods 0.000 description 13
- 238000004590 computer program Methods 0.000 description 10
- 238000009434 installation Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 7
- 230000008569 process Effects 0.000 description 7
- 239000000872 buffer Substances 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 238000012216 screening Methods 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 238000010998 test method Methods 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000005096 rolling process Methods 0.000 description 1
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/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/3664—Environments for testing or debugging software
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明实施例中的软件测试方法,通过监听软件测试的测试类型,若测试类型为第一测试,且预设第一测试信息的输入有效状态为有效,则生成第一测试指令,若测试类型为第二测试,则根据预设第二测试信息生成第二测试指令,并基于第一测试指令或第二测试指令对目标软件进行测试;本方法通过设置两种软件测试类型对软件进行相关测试,在针对不同测试环境时可以提供不同的测试方式,解决了面对不同测试环境以及目标测试软件时,单一的测试形式测试效率低的问题。
Description
技术领域
本申请涉及软件自动化测试领域,尤其涉及一种软件测试方法、装置、电子设备及存储介质。
背景技术
通常在软件上线之前,为了保证软件的健壮性和稳定性,测试人员需要使用Monkey测试进行软件的压力测试。在测试过程中,测试人员往往需要抓取测试过程中的测试日志用以研发分析。
在现有软件测试过程中,涉及压力测试时往往只针对单一的monkey测试方法进行压力测试,例如在CN115932691A,电池SOC值的修正方法、装置、计算机设备和存储介质的公开技术中,对monkey测试进行配置并进行后续的压力测试,但面对不同测试环境以及目标测试软件时,单一的测试形式反而会降低测试效率。
发明内容
本发明实施例的目的在于提供一种软件测试方法、装置、电子设备及存储介质,以解决现有面对不同测试环境以及目标测试软件时,单一的测试形式测试效率低的问题。
本发明提供了一种软件测试方法,所述软件测试方法包括:监听软件测试的测试类型,所述测试类型包括第一测试和第二测试;若所述测试类型为第一测试,且预设第一测试信息的输入有效状态为有效,则基于所述预设第一测试信息生成第一测试指令;若所述测试类型为第二测试,则根据预设第二测试信息生成第二测试指令;基于所述第一测试指令或所述第二测试指令对目标软件进行测试。
于本发明的一实施例中,获取待测试信息之前,所述软件测试方法还包括:构建测试任务,并确定待测试设备信息上传状态;若所述待测试设备信息上传状态为已上传,则对所述待测试设备信息进行展示;若所述待测试设备信息上传状态为未上传,则生成信息未上传的上传提示内容,并对所述上传提示内容进行展示。
于本发明的一实施例中,若所述测试类型为第一测试之后,所述软件测试方法还包括:获取待测试设备的软件清单以及测试任务需求信息;根据所述待测试任务需求信息以及所述软件清单确定目标测试软件清单;根据目标测试软件清单在预设软件安装包库内拉取各目标测试软件安装包,并基于所述目标测试软件安装包进行目标测试软件安装,以对目标测试软件进行测试。
于本发明的一实施例中,基于所述目标测试软件安装包进行目标测试软件安装之后,所述软件测试方法还包括:对预设第一测试信息进行输入有效状态确定,所述预设第一测试信息是根据测试任务需求信息和目标测试软件确定的,所述输入有效状态包括有效和无效;若所述预设第一测试信息的输入有效状态为有效,则基于所述预设第一测试信息生成第一测试指令;若所述预设第一测试信息的输入有效状态为无效,则生成第一测试信息输入无效的无效提示内容,并对所述无效提示内容进行展示。
于本发明的一实施例中,基于所述第一测试指令或所述第二测试指令对目标软件进行测试之后,所述软件测试方法还包括:基于对目标软件的测试生成测试日志;将所述测试日志传输至预设日志暂存存储区域,并对所述测试日志进行展示;响应于日志保存请求,将选定的目标测试日志保存至本地日志存储区域,所述目标测试日志为在所述测试日志中选定的需要保存的至少一个测试日志信息。
于本发明的一实施例中,基于所述第一测试指令或所述第二测试指令对目标软件进行测试之后,所述软件测试方法还包括:响应于测试暂停请求,确定测试指令类型;若所述测试指令类型为第二测试指令,则监听暂停控件的反馈结果,所述暂停控件用于控制软件测试的暂停;当接收到所述暂停控件的反馈结果时,停止测试日志生成,并暂停本次测试。
于本发明的一实施例中,监听软件测试的测试类型包括:提供图形界面以确定软件测试的测试类型,所述图形界面包括第一测试启动控件和第二测试启动控件;监听所述第一测试启动控件和第二测试启动控件的点击反馈,以对软件测试的测试类型进行监听。
本发明实施例还提供了一种软件测试装置,所述软件测试装置包括:测试类型确定模块,用于监听软件测试的测试类型,所述测试类型包括第一测试和第二测试;测试指令生成模块,用于若所述测试类型为第一测试,且预设第一测试信息的输入有效状态为有效,则基于所述预设第一测试信息生成第一测试指令;若所述测试类型为第二测试,则根据预设第二测试信息生成第二测试指令;软件测试模块,用于基于所述第一测试指令或所述第二测试指令对目标软件进行测试。
本发明实施例还提供了一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述电子设备实现如上述实施例中任一项所述的软件测试方法。
本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机可读指令,当所述计算机可读指令被计算机的处理器执行时,使计算机执行如上述实施例中任一项所述的软件测试方法。
本发明实施例中的软件测试方法,通过监听软件测试的测试类型,若测试类型为第一测试,且预设第一测试信息的输入有效状态为有效,则生成第一测试指令,若测试类型为第二测试,则根据预设第二测试信息生成第二测试指令,并基于第一测试指令或第二测试指令对目标软件进行测试;本方法通过设置两种软件测试类型对软件进行相关测试,在针对不同测试环境时可以提供不同的测试方式,解决了面对不同测试环境以及目标测试软件时,单一的测试形式测试效率低的问题。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术者来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1是本申请的一示例性实施例示出的示例性系统架构的示意图;
图2是本申请的一示例性实施例示出的一种软件测试方法的流程图;
图3是本申请的一示例性实施例示出的一种具体的软件测试方法流程图;
图4是本申请的一示例性实施例示出的一种具体的Monkey测试的流程示意图;
图5是本申请的一示例性实施例示出的一种具体logcat实例的流程示意图;
图6是本申请的一示例性实施例示出的一种软件测试装置示意图;
图7是本申请的一示例性实施例示出的电子设备的计算机系统的结构示意图。
具体实施方式
以下将参照附图和特定的具体实施例来说明本发明的实施方式,本领域技术人员可由本说明书中所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。应当理解,优选实施例仅为了说明本发明,而不是为了限制本发明的保护范围。
需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图示中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
在下文描述中,探讨了大量细节,以提供对本发明实施例的更透彻的解释,然而,对本领域技术人员来说,可以在没有这些具体细节的情况下实施本发明的实施例是显而易见的,在其他实施例中,以方框图的形式而不是以细节的形式来示出公知的结构和设备,以避免使本发明的实施例难以理解。
在本申请中提及的“和/或”描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
首先需要说明的是,Monkey测试是Android自动化测试的一种手段,简单的说是像猴子一样乱点,它向系统发送伪随机的用户事件流(如按键输入、触摸屏输入、手势输入等)。
Logcat是一个命令行工具,用于转储系统消息日志,其中包括设备引发错误时的堆叠追踪以及从应用使用Log类编写的消息。
本申请还可以提供的有益效果包括:对设备接入进行检测,并可以基于测试需求调取安装包,以对目标软件进行调取,而且可以在完成测试后对测试日志进行保存,形成一体化的软件测试架构,集成的完成软件测试,提升软件测试的效率。
图1是本申请的一示例性实施例示出的示例性系统架构的示意图。
参照图1所示,系统架构可以包括计算机设备101和测试终端102。其中,计算机设备101用于监听软件测试的测试类型,若测试类型为第一测试,且预设第一测试信息的输入有效状态为有效,则基于预设第一测试信息生成第一测试指令;若测试类型为第二测试,则根据预设第二测试信息生成第二测试指令后提供给测试终端102进行测试。计算机设备101可以是微型计算机、嵌入式计算机、网络计算机等中的至少一种。测试终端102包括但不限于手机、平板、工程机、虚拟计算机、嵌入式终端等。相关技术人员可以在测试终端102实现基于第一测试指令或第二测试指令对目标软件进行测试。
示意性的,计算机设备101通过监听软件测试的测试类型,若测试类型为第一测试,且预设第一测试信息的输入有效状态为有效,则生成第一测试指令,若测试类型为第二测试,则根据预设第二测试信息生成第二测试指令,并由测试终端102基于第一测试指令或第二测试指令对目标软件进行测试;本方法通过设置两种软件测试类型对软件进行相关测试,在针对不同测试环境时可以提供不同的测试方式,解决了面对不同测试环境以及目标测试软件时,单一的测试形式测试效率低的问题。
图2是本申请的一示例性实施例示出的一种软件测试方法的流程图,该软件测试方法可以在图1中所示的计算机设备101和测试终端102的系统架构中执行。参照图2所示,该软件测试方法的流程图至少包括步骤S210至步骤S240,详细介绍如下:
在步骤S210中,监听软件测试的测试类型。
在本申请的一个实施例中,上述测试类型包括第一测试和第二测试。
在本申请的一些可行实施例中,上述第一测试可以是monkey测试,上述第二测试可以是logcat日志抓取,需要注意的是,上述第一测试与第二测试的实际测试方法可以根据具体的图形界面设计进行设定,上述第一测试与第二测试的测试方法举例仅为一种可实施的示例性举例,再次并不对具体的第一测试和第二测试的测试含义进行具体限定。
在本申请的一个实施例中,提供图形界面以确定软件测试的测试类型,图形界面包括第一测试启动控件和第二测试启动控件,监听第一测试启动控件和第二测试启动控件的点击反馈,以对软件测试的测试类型进行监听。
在本申请的一个实施例中,获取待测试信息之前,还包括构建测试任务,并确定待测试设备信息上传状态,若待测试设备信息上传状态为已上传,则对待测试设备信息进行展示。
在本申请的一个实施例中,若待测试设备信息上传状态为未上传,则生成信息未上传的上传提示内容,并对上传提示内容进行展示。
在步骤S220中,若测试类型为第一测试,且预设第一测试信息的输入有效状态为有效,则基于预设第一测试信息生成第一测试指令。
在本申请的一个实施例中,预设第一测试信息包括但不限于seed值、执行次数、延时、执行方式及日志等级等。
在本申请的一个实施例中,确定测试类型为第一测试之后还包括,获取待测试设备的软件清单以及测试任务需求信息,根据待测试任务需求信息以及软件清单确定目标测试软件清单,并根据目标测试软件清单在预设软件安装包库内拉取各目标测试软件安装包,并基于目标测试软件安装包进行目标测试软件安装,以对目标测试软件进行测试。
在本申请的一个实施例中,基于目标测试软件安装包进行目标测试软件安装之后,需要对预设第一测试信息进行输入有效状态确定,其中,预设第一测试信息是根据测试任务需求信息和目标测试软件确定的,输入有效状态包括有效和无效。其中,有效状态确定是针对seed值、执行次数、延时的检测,判断其是否为自然数及判断其是否在系统设定的范围之内。
在本申请的一个实施例中,若预设第一测试信息的输入有效状态为有效,则基于预设第一测试信息生成第一测试指令。
在本申请的一个实施例中,若预设第一测试信息的输入有效状态为无效,则生成第一测试信息输入无效的无效提示内容,并对无效提示内容进行展示。
在步骤S230中,若测试类型为第二测试,则根据预设第二测试信息生成第二测试指令。
在本申请的一个实施例中,若测试类型为第二测试,基于数据测试精度及测试环境需求,还可以在确定测试类型为第二测试后,对预设第二测试信息进行验证。具体包括对包括日志优先级、日志格式、日志缓冲区的验证。
在步骤S240中,基于第一测试指令或第二测试指令对目标软件进行测试。
在本申请的一个实施例中,基于第一测试指令或第二测试指令对目标软件进行测试之后响应于测试暂停请求,确定测试指令类型。
在本申请的一个实施例中,若测试指令类型为第二测试指令,则监听暂停控件的反馈结果,其中,暂停控件用于控制软件测试的暂停,当接收到暂停控件的反馈结果时,停止测试日志生成,并暂停本次测试。
在本申请的一个实施例中,基于第一测试指令或第二测试指令对目标软件进行测试之后,还包括基于对目标软件的测试生成测试日志,并将测试日志传输至预设日志暂存存储区域,对测试日志进行展示。
在本申请的一个实施例中,若存在日志保存需求,则响应于日志保存请求,将选定的目标测试日志保存至本地日志存储区域,其中,目标测试日志为在测试日志中选定的需要保存的至少一个测试日志信息
请参阅图3,图3是本申请的一示例性实施例示出的一种具体的软件测试方法流程图。该具体的软件测试方法流程可具体在如图1所示的系统架构中执行,并具体由图1中所示的计算机设备101执行,也可由其他实施环境实施,在此不对具体的实施环境加以限制。
在本申请的一个具体实施例中,图3所示的具体的软件测试方法流程图由S1到S8描述,具体介绍如下。S1步骤用于获取设备ID(设备信息),提供图形界面以展示获取到的设备ID,若预设时间内无相关数据返回,则通过弹窗提示用户需要插入设备,可选择忽略。上述预设时间的一种可实施示例性举例为从打开界面的1分钟内。其中,设备ID与上述实施例中的待测试设备信息一致。
S2步骤,图形界面提供了指令单选选择按钮,以供程序判断当前需要执行的指令类型。其中指令单选选择按钮包括Monkey单选选择按钮与Logcat单选选择按钮。
S3步骤,图形界面左侧展示了Monkey设置界面。具体地,设置界面包括对多个测试选项进行具体设置,例如seed值、执行次数、延时、执行方式及日志等级等,其中,seed值指随机事件种子值;执行次数指Monkey的运行次数;延时是指Monkey命令运行时的间隔时间,单位为毫秒;执行方式包括“忽略崩溃”“忽略超时”“忽略许可错误”“忽略本地崩溃”等;日志等级包括简单、普通、详细,具体映射对应三个不同等级的日志。
在本申请的一个具体实施例中,图形界面还提供了待测APK包的筛选、安装及选择以更多的覆盖测试场景。图形界面将获取设备系统中所有的APK包进行展示,当程序过多时,可通过输入关键字进行模糊筛选。若待测APK不在系统中,则可以通过输入APK本地安装包地址一键安装后点击刷新按钮查看待测APK。根据不同的测试场景,可以选择多个或一个选项。
在本申请的一个具体实施例中,其中程序包若未选择,则表示测试人员想测试系统中所有的APK。
其中,图形界面左侧仅为本实施例的示例性举例,还可以根据界面需求进行不同的设定,在此不做具体限定。
步骤S4,检测输入信息的有效性,主要针对seed值、执行次数、延时的检测,判断其是否为自然数及判断其是否在系统设定的范围之内。同时还需要判断,输入的选项组合是否合法。当判断其有效性为无效时,给出提示,重新输入指令。
步骤S5,图形界面右侧展示了Logcat设置界面,所有选项均为下拉框,可不用进行有效值校验,其包括日志优先级、日志格式、日志缓冲区。日志优先级包括展示优先级大于等于information的日志、优先级大于等于warning的日志、大于等于error的日志。日志格式包括默认格式、显示进程PID、显示进程、显示原始的日志信息、显示日期。日志缓冲区包括默认缓冲区、事件相关、无线/电话相关。同样,根据不同的测试场景,可以选择一个或多个选项。
步骤S6,根据生成的测试信息拼接成Monkey指令或logcat在后台运行,引用Python的PySide2.QtWidget获取到当前的输入值,对输入值进行简单的adb命令拼接。引用python的os、subprocess,通过subprocess.Popen创建进程执行命令。
步骤S7,运行过程中,可以点击暂停按钮,系统发出停止命令,退出此次测试,需要注意的是,针对logcat类型的指令,必须执行暂停后对日志进行截断,而Monkey命令可以选择性执行暂停。
步骤S8,命令执行后,持续输出日志到stdout,将命令执行产生日志展示在日志查看处,并对日志格式进行一定的处理。可通过点击一键保存按钮将输出的日志保存到本地。
请参阅图4,图4是本申请的一示例性实施例示出的一种具体的Monkey测试的流程示意图。
如图4所示,在本申请的一个具体实施例中,在启动程序后获取设备ID,并判断是否获取到设备,若未获取的设备则由弹框进行提示插入设备,并返回至获取设备ID步骤,若获取到设备,则勾选monkey设置单选框,设置monkey指令,首先需要判断是否查询到对应apk包,若未查询到,则输入apk包本地地址并点击安装按钮,在右侧日志查看区域,查看安装日志,以此判断是否安装成功,若未安装成功则输入apk包本地地址,若安装成功,则点击刷新按钮返回至判断是否查询到对应apk包步骤。当查询成功后,选择程序包,并点击运行按钮,检验输入的数据是否有效,若数据无效则进行重新输入提示,若输入数据有效,则生成monkey指令并进行monkey运行测试。当需要进行暂停的时候,则进行暂停按钮控制,以此对monkey运行测试进行暂停,在运行测试后,在日志查看处查看测试日志,若存在日志保留需求,判定是否需要保存日志,若要保存日志,则点击保存日志,选择地址保存到本地存储区域,若无需保存日志,则结束本次测试。
请参阅图5,图5是本申请的一示例性实施例示出的一种具体logcat实例的流程示意图。
在本申请的一个具体实施例中,在启动程序后获取设备ID,并判断是否获取到设备,若未获取的设备则由弹框进行提示插入设备,并返回至获取设备ID步骤,勾选logcat设置单选框并设置logcat指令,在设置之后点击运行按钮并检验输入数据是否有效,若输入数据有效,则生成logcat指令并进行logcat运行,若输入数据无效,则提示需要重新输入,在logcat运行过程中,若需要暂停,则需要点击暂停按钮,并在日志查看处查看运行日志,若存在日志保留需求,判定是否需要保存日志,若要保存日志,则点击保存日志,选择地址保存到本地存储区域,若无需保存日志,则结束本次测试。
本发明实施例中的软件测试方法,通过监听软件测试的测试类型,若测试类型为第一测试,且预设第一测试信息的输入有效状态为有效,则生成第一测试指令,若测试类型为第二测试,则根据预设第二测试信息生成第二测试指令,并基于第一测试指令或第二测试指令对目标软件进行测试;本方法通过设置两种软件测试类型对软件进行相关测试,在针对不同测试环境时可以提供不同的测试方式,解决了面对不同测试环境以及目标测试软件时,单一的测试形式测试效率低的问题。本申请还可以提供的有益效果包括对设备接入进行检测,并可以基于测试需求调取安装包,以对目标软件进行调取,而且可以在完成测试后对测试日志进行保存,形成一体化的软件测试架构,集成的完成软件测试,提升软件测试的效率
以下介绍本申请的装置实施例,可以用于执行本申请上述实施例中的软件测试方法。对于本申请装置实施例中未披露的细节,请参照本申请上述的软件测试方法的实施例。
图6是本申请的一示例性实施例示出的一种软件测试装置示意图。该装置可以应用于图2所示的实施环境。该装置也可以适用于其他的示例性实施环境,并具体配置在其他设备中,本实施例不对该装置所适用的实施环境进行限制。
如图6所示,该示例性的软件测试装置包括:测试类型确定模块601、测试指令生成模块602、软件测试模块603。
其中,测试类型确定模块601,用于监听软件测试的测试类型,测试类型包括第一测试和第二测试;测试指令生成模块602,用于若测试类型为第一测试,且预设第一测试信息的输入有效状态为有效,则基于预设第一测试信息生成第一测试指令;若测试类型为第二测试,则根据预设第二测试信息生成第二测试指令;软件测试模块603,用于基于第一测试指令或第二测试指令对目标软件进行测试。
本申请的实施例还提供了一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当一个或多个程序被一个或多个处理器执行时,使得电子设备实现上述各个实施例中提供的软件测试方法。
图7是本申请的一示例性实施例示出的电子设备的计算机系统的结构示意图。需要说明的是,图7示出的电子设备的计算机系统700仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图7所示,计算机系统700包括中央处理单元(CentralProcessingUnit,CPU)701,其可以根据存储在只读存储器(Read-OnlyMemory,ROM)702中的程序或者从储存部分加载到随机访问存储器(RandomAccessMemory,RAM)703中的程序而执行各种适当的动作和处理,例如执行上述实施例中的方法。在RAM703中,还存储有系统操作所需的各种程序和数据。CPU701、ROM702以及RAM703通过总线彼此相连。输入/输出(Input/Output,I/O)接口705也连接至总线704。
以下部件连接至I/O接口705:包括键盘、鼠标等的输入部分706;包括诸如阴极射线管(CathodeRayTube,CRT)、液晶显示器(Liqu身份CrystalDisplay,LCD)等以及扬声器等的输出部分707;包括硬盘等的储存部分708;以及包括诸如LAN(LocalAreaNetwork,局域网)卡、调制解调器等的网络接口卡的通信部分709。通信部分经由诸如因特网的网络执行通信处理。驱动器也根据需要连接至I/O接口705。可拆卸介质711,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器710上,以便于从其上读出的计算机程序根据需要被安装入储存部分708。
特别地,根据本申请的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本申请的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的计算机程序。在这样的实施例中,该计算机程序可以通过通信部分709从网络上被下载和安装,和/或从可拆卸介质711被安装。在该计算机程序被中央处理单元(CPU)701执行时,执行本申请的系统中限定的各种功能。
需要说明的是,本申请实施例所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(ErasableProgrammableReadOnlyMemory,EPROM)、闪存、光纤、便携式紧凑磁盘只读存储器(CompactDiscRead-OnlyMemory,CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的计算机程序。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的计算机程序可以用任何适当的介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。其中,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框,以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
在上述实施例的对应附图中,连接线可以表示各个部件之间的连接关系,以表示更多的构成信号路径(constituent_signalpath)和/或一些线的一个或多个末端具有箭头,以表示主要信息流向,连接线作为一种标识,不是对方案本身的限制,而是结合一个或多个事例性实施例使用这些线有助于更容易地接电路或逻辑单元,任何所代表的信号(由设计需求或偏好所决定)实际上可以包括可以在任意一个方向传送的并且可以以任何适当类型的信号方案实现的一个或多个信号。
描述于本申请实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现,所描述的单元也可以设置在处理器中。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。
本申请的另一方面还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如前所述的方法。该计算机可读存储介质可以是上述实施例中描述的电子设备中所包含的,也可以是单独存在,而未装配入该电子设备中。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本申请的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本申请实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、触控终端、或者网络设备等)执行根据本申请实施方式的方法。
应当注意,本申请可用于众多通用或专用的计算系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络PC、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。
本领域技术人员在考虑说明书及实践这里公开的实施方式后,将容易想到本申请的其他实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。
应当理解的是,本上述内容,仅为本申请的较佳示例性实施例,并非用于限制本申请的实施方案,本领域普通技术人员根据本申请的主要构思和精神,可以十分方便地进行相应的变通或修改,故本申请的保护范围应以权利要求书所要求的保护范围。
Claims (10)
1.一种软件测试方法,其特征在于,所述软件测试方法包括:
监听软件测试的测试类型,所述测试类型包括第一测试和第二测试;
若所述测试类型为第一测试,且预设第一测试信息的输入有效状态为有效,则基于所述预设第一测试信息生成第一测试指令;
若所述测试类型为第二测试,则根据预设第二测试信息生成第二测试指令;
基于所述第一测试指令或所述第二测试指令对目标软件进行测试。
2.根据权利要求1所述的软件测试方法,其特征在于,获取待测试信息之前,所述软件测试方法还包括:
构建测试任务,并确定待测试设备信息上传状态;
若所述待测试设备信息上传状态为已上传,则对所述待测试设备信息进行展示;
若所述待测试设备信息上传状态为未上传,则生成信息未上传的上传提示内容,并对所述上传提示内容进行展示。
3.根据权利要求1所述的软件测试方法,其特征在于,若所述测试类型为第一测试之后,所述软件测试方法还包括:
获取待测试设备的软件清单以及测试任务需求信息;
根据所述待测试任务需求信息以及所述软件清单确定目标测试软件清单;
根据目标测试软件清单在预设软件安装包库内拉取各目标测试软件安装包,并基于所述目标测试软件安装包进行目标测试软件安装,以对目标测试软件进行测试。
4.根据权利要求3所述的软件测试方法,其特征在于,基于所述目标测试软件安装包进行目标测试软件安装之后,所述软件测试方法还包括:
对预设第一测试信息进行输入有效状态确定,所述预设第一测试信息是根据测试任务需求信息和目标测试软件确定的,所述输入有效状态包括有效和无效;
若所述预设第一测试信息的输入有效状态为有效,则基于所述预设第一测试信息生成第一测试指令;
若所述预设第一测试信息的输入有效状态为无效,则生成第一测试信息输入无效的无效提示内容,并对所述无效提示内容进行展示。
5.根据权利要求1所述的软件测试方法,其特征在于,基于所述第一测试指令或所述第二测试指令对目标软件进行测试之后,所述软件测试方法还包括:
基于对目标软件的测试生成测试日志;
将所述测试日志传输至预设日志暂存存储区域,并对所述测试日志进行展示;
响应于日志保存请求,将选定的目标测试日志保存至本地日志存储区域,所述目标测试日志为在所述测试日志中选定的需要保存的至少一个测试日志信息。
6.根据权利要求1-5任一项所述的软件测试方法,其特征在于,基于所述第一测试指令或所述第二测试指令对目标软件进行测试之后,所述软件测试方法还包括:
响应于测试暂停请求,确定测试指令类型;
若所述测试指令类型为第二测试指令,则监听暂停控件的反馈结果,所述暂停控件用于控制软件测试的暂停;
当接收到所述暂停控件的反馈结果时,停止测试日志生成,并暂停本次测试。
7.根据权利要求1-5任一项所述的软件测试方法,其特征在于,监听软件测试的测试类型包括:
提供图形界面以确定软件测试的测试类型,所述图形界面包括第一测试启动控件和第二测试启动控件;
监听所述第一测试启动控件和第二测试启动控件的点击反馈,以对软件测试的测试类型进行监听。
8.一种软件测试装置,其特征在于,所述软件测试装置包括:
测试类型确定模块,用于监听软件测试的测试类型,所述测试类型包括第一测试和第二测试;
测试指令生成模块,用于若所述测试类型为第一测试,且预设第一测试信息的输入有效状态为有效,则基于所述预设第一测试信息生成第一测试指令;若所述测试类型为第二测试,则根据预设第二测试信息生成第二测试指令;
软件测试模块,用于基于所述第一测试指令或所述第二测试指令对目标软件进行测试。
9.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述电子设备实现如权利要求1至7中任一项所述的软件测试方法。
10.一种计算机可读存储介质,其特征在于,其上存储有计算机可读指令,当所述计算机可读指令被计算机的处理器执行时,使计算机执行如权利要求1至7中任一项所述的软件测试方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310617121.XA CN116627824A (zh) | 2023-05-29 | 2023-05-29 | 一种软件测试方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310617121.XA CN116627824A (zh) | 2023-05-29 | 2023-05-29 | 一种软件测试方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116627824A true CN116627824A (zh) | 2023-08-22 |
Family
ID=87612981
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310617121.XA Pending CN116627824A (zh) | 2023-05-29 | 2023-05-29 | 一种软件测试方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116627824A (zh) |
-
2023
- 2023-05-29 CN CN202310617121.XA patent/CN116627824A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110532185B (zh) | 测试方法、装置、电子设备和计算机可读存储介质 | |
CN109388569B (zh) | 远程检测客户端环境异常的方法、测试服务器及存储介质 | |
CN108959064B (zh) | 自动化测试的弹窗处理方法及装置 | |
US8752027B2 (en) | Injecting faults into program for testing software | |
CN112817831A (zh) | 应用性能监测方法、装置、计算机系统和可读存储介质 | |
CN112732499A (zh) | 一种基于微服务架构的测试方法、装置及计算机系统 | |
CN114168471A (zh) | 测试方法、装置、电子设备及存储介质 | |
CN113157504A (zh) | 一种触摸屏设备测试方法和一种触摸屏设备测试系统 | |
CN107577466A (zh) | 一种基于Linux系统的RPM软件包编译方法及系统 | |
CN112713964A (zh) | 数据校验加速方法、装置、计算机设备及存储介质 | |
CN106708705B (zh) | 终端后台进程监控方法和系统 | |
WO2023202182A1 (zh) | 后端服务器管理方法、装置、可读介质及电子设备 | |
CN116662193A (zh) | 页面测试方法和装置 | |
CN111930629A (zh) | 页面测试方法、装置、电子设备及存储介质 | |
CN116431519A (zh) | 软件测试方法及装置、电子设备和计算机可读存储介质 | |
KR102098905B1 (ko) | 호스트의 테스트 시나리오로 제어장치의 복수의 파티션간 영향도를 측정하기 위한 방법, 동일 방법을 구현하기 위한 호스트 및 시스템, 그리고 동일 방법을 기록하기 위한 매체 | |
CN116627824A (zh) | 一种软件测试方法、装置、电子设备及存储介质 | |
CN115600213A (zh) | 基于应用程序的漏洞管理方法、装置、介质及设备 | |
CN115599645A (zh) | 一种linux驱动模块稳定性测试方法及装置 | |
CN112905445B (zh) | 一种基于日志的测试方法、装置及计算机系统 | |
CN111737129B (zh) | 服务控制方法、装置、计算机可读介质及电子设备 | |
CN111741046B (zh) | 数据上报方法、获取方法、装置、设备及介质 | |
CN112650672A (zh) | 基于Junit的模型测试系统、方法和装置 | |
CN113760631A (zh) | 页面加载时长确定方法、装置、设备和存储介质 | |
JP2002189617A (ja) | 評価システム、及び評価方法 |
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 |