CN107239397A - 一种web自动化测试方法及电子设备 - Google Patents

一种web自动化测试方法及电子设备 Download PDF

Info

Publication number
CN107239397A
CN107239397A CN201710350356.1A CN201710350356A CN107239397A CN 107239397 A CN107239397 A CN 107239397A CN 201710350356 A CN201710350356 A CN 201710350356A CN 107239397 A CN107239397 A CN 107239397A
Authority
CN
China
Prior art keywords
webpage
tested
object element
pop
floating layer
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
CN201710350356.1A
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.)
Beijing Micro Shadow Era Technology Co Ltd
Original Assignee
Beijing Micro Shadow Era Technology 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 Beijing Micro Shadow Era Technology Co Ltd filed Critical Beijing Micro Shadow Era Technology Co Ltd
Priority to CN201710350356.1A priority Critical patent/CN107239397A/zh
Publication of CN107239397A publication Critical patent/CN107239397A/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

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

本发明的实施例公开一种Web自动化测试方法及电子设备,涉及自动化测试领域,能够提升Web测试执行成功率。所述测试方法包括:访问待测试网页;判断所述待测试网页是否加载成功;若所述待测试网页加载成功,在所述待测试网页中进行目标元素定位;若未定位出目标元素,则对所述待测试网页中是否存在浮层或弹窗进行识别;若识别出所述待测试网页中存在浮层或弹窗,则关闭所述浮层或弹窗后,在所述待测试网页中重新进行目标元素定位;若在所述待测试网页中重新定位出目标元素,则对所述目标元素进行操作测试。本发明适用于各种操作系统下的网页测试。

Description

一种web自动化测试方法及电子设备
技术领域
本发明涉及自动化测试领域,尤其涉及一种web自动化测试方法及电子设备。
背景技术
自动化测试是对软件产品质量保障的重要一环,日常研发中,由于快速迭代的原因,我们经常需要在各个业务线上进行主流程的回归测试,这也是功能自动化测试高效性的主要运用和体现。在web和移动端的功能自动化测试中,通过脚本代码操作界面,进行点击、滑动等操作来模拟用户完成一系列功能流程,但是,在这个过程中,通常无法预测网络环境会如何影响页面加载时间,以及网站运营人员临时配置的广告等弹层页面,所以,判定页面的加载状态,识别个性化控件的准确率就会成为这个过程的瓶颈,影响后续脚本执行的成功率。
根据经验,在自动化测试执行过程中,页面中出现的异常未知的弹层是导致测试脚本非功能性失败的主要原因。虽然基于Xpath、css选择器进行元素定位及判定的技术已经比较成熟,但这些技术对于在完全未知的页面中局限性较大,比如Xpath需要从已知的节点开始定位相应的元素,它必须建立在我们已经掌握一定的页面特性如元素的ID、name等属性的前提下,否则就只能进行盲目的尝试,失败率高,浪费成本。
发明内容
有鉴于此,本发明实施例提供一种Web自动化测试方法及电子设备,用于解决现有自动化测试方法的失败率高及浪费成本的问题,本发明提供一种Web自动化测试方案,能够提升Web测试执行成功率。
第一方面,本发明实施例提供一种Web自动化测试方法,包括如下步骤:
访问待测试网页;
判断所述待测试网页是否加载成功;
若所述待测试网页加载成功,在所述待测试网页中进行目标元素定位;
若未定位出目标元素,则对所述待测试网页中是否存在浮层或弹窗进行识别;
若识别出所述待测试网页中存在浮层或弹窗,则关闭所述浮层或弹窗后,在所述待测试网页中重新进行目标元素定位;
若在所述待测试网页中重新定位出目标元素,则对所述目标元素进行操作测试。
结合第一方面,在第一方面的第一种实施方式中,所述判断所述待测试网页是否加载成功,包括:
按预定周期截取所述待测试网页的屏幕截图,判断相邻两张屏幕截图的像素差异是否持续小于预定阈值;
若相邻两张屏幕截图的像素差异持续小于所述预定阈值,则确定所述待测试网页加载成功。
结合第一方面的第一种实施方式,在第一方面的第二种实施方式中,所述按预定周期截取所述待测试网页的屏幕截图,判断相邻两张屏幕截图的像素差异是否持续小于预定阈值,包括:
按预定周期截取所述待测试网页的屏幕截图,判断按所述预定周期截取的相邻两张屏幕截图的像素差异是否小于预定阈值;
若按所述预定周期截取的相邻两张屏幕截图的像素差异小于所述预定阈值,则在第一预设时长内继续按所述预定周期截取所述待测试网页的屏幕截图,判断在第一预设时长内继续按所述预定周期截取的相邻两张屏幕截图的像素差异是否均小于所述预定阈值;
其中,所述若相邻两张屏幕截图的像素差异持续小于所述预定阈值,则确定所述待测试网页加载成功,包括:
若在第一预设时长内继续按所述预定周期截取的相邻两张屏幕截图的像素差异均小于所述预定阈值,则确定所述待测试网页加载成功。
结合第一方面的第二种实施方式,在第一方面的第三种实施方式中,所述按预定周期截取所述待测试网页的屏幕截图,判断按所述预定周期截取的相邻两张屏幕截图的像素差异是否小于预定阈值,包括:
在访问所述待测试网页第二预设时长之内按预定周期截取所述待测试网页的屏幕截图,判断在访问所述待测试网页第二预设时长之内按所述预定周期截取的相邻两张屏幕截图的像素差异是否小于预定阈值。
结合第一方面,在第一方面的第四种实施方式中,所述若未定位出目标元素,则对所述待测试网页中是否存在浮层或弹窗进行识别,包括:
若未定位到目标元素,则对所述待测试网页的预定区域进行图像识别;
根据所述图像识别的结果,判断所述待测试网页中是否存在浮层或弹窗。
结合第一方面,在第一方面的第五种可能的实现方式中,所述目标元素为按钮或输入框控件。
结合第一方面,在第一方面的第六种可能的实现方式中,所述Web自动化测试方法还包括:
若识别出所述待测试网页中存在浮层或弹窗,则对所述浮层或弹窗进行截屏并保存在日志中。
结合第一方面,在第一方面的第七种实施方式中,若在所述待测试网页中未重新定位出目标元素,则再次对所述待测试网页中是否存在浮层或弹窗进行识别;
经过所述再次识别,若识别出所述待测试网页中存在浮层或弹窗,则关闭所述浮层或弹窗后,在所述待测试网页中再次重新进行目标元素定位;
若在所述待测试网页中再次重新定位出目标元素,则对所述目标元素进行操作测试。
结合第一方面的第七种实施方式,在第一方面的第八种实施方式中,若在所述待测试网页中未再次重新定位出目标元素,则生成异常报告并记录日志;和/或,若识别不出所述待测试网页中存在浮层或弹窗,则对所述待测试网页进行截屏并生成测试错误报告。
第二方面,本发明实施例提供一种电子设备,所述电子设备包括:壳体、处理器、存储器、电路板和电源电路,其中,电路板安置在壳体围成的空间内部,处理器和存储器设置在电路板上;电源电路,用于为上述电子设备的各个电路或器件供电;存储器用于存储可执行程序代码;处理器通过读取存储器中存储的可执行程序代码来运行与可执行程序代码对应的程序,用于执行前述任一实施方式所述的Web自动化测试方法。
本发明实施例提供的Web自动化测试方法及电子设备,在Web自动化测试中,通过判断页面加载状态,在页面加载成功后定位目标元素,在未定位出目标元素时通过识别待测试网页中是否存在浮层或弹窗,若识别出所述待测试网页中存在浮层或弹窗,则关闭所述浮层或弹窗后重新进行目标元素定位,可以解决由于页面中出现异常未知的弹层而导致测试脚本非功能性失败的问题,提高测试成功率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1为本发明提供的一种Web自动化测试方法实施例一的流程图;
图2为步骤102的优选实施方法流程图;
图3为加载网页的屏幕像素随访问时间的变化图;
图4为本发明提供的一种Web自动化测试方法实施例二的流程图;
图5为本发明提供的一种Web自动化测试装置实施例一的结构示意图;
图6为本发明提供的一种Web自动化测试装置实施例二的结构示意图;
图7为本发明提供的一种Web自动化测试装置实施例三的结构示意图;
图8为本发明提供的一种Web自动化测试装置实施例四的结构示意图;
图9为本发明提供的一种Web自动化测试装置实施例五的结构示意图;
图10为本发明提供的一种Web自动化测试装置实施例六的结构示意图;
图11为本发明提供的一种Web自动化测试装置实施例七的结构示意图;
图12为本发明提供的电子设备的一个实施例的结构示意图。
具体实施方式
下面结合附图对本发明实施例一种Web自动化测试方案进行详细描述。
应当明确,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
图1为本发明提供的一种Web自动化测试方法实施例一的流程图,如图1所示,本实施例的方法可以包括:
步骤101、访问待测试网页。
本实施例中,可以通过Web应用程序测试工具Selenium访问待测试网页。
步骤102、判断待测试网页是否加载成功,若是,则执行步骤103,否则,结束流程。
优选地,此步骤可以按预定周期截取所述待测试网页的屏幕截图,判断相邻两张屏幕截图的像素差异是否持续小于预定阈值;若相邻两张屏幕截图的像素差异持续小于所述预定阈值,则确定所述待测试网页加载成功。
步骤103、在待测试网页中进行目标元素定位。
此步骤中,若定位出目标元素,则执行步骤107,若未定位出目标元素,则执行步骤104。
其中,可以预先指定目标元素为按钮或输入框控件。
优选地,用xpath或css在待测试网页中进行目标元素定位。
步骤104、判断待测试网页中是否能识别出浮层或弹窗。
此步骤中,对待测试网页中是否存在浮层或弹窗进行识别,若识别出所述待测试网页中存在浮层或弹窗,则执行步骤105。
具体地,若未定位到目标元素,此步骤对待测试网页的预定区域进行图像识别,并根据所述图像识别的结果判断所述待测试网页中是否存在浮层或弹窗(如alert弹窗)。例如:将待测试网页页面高度的1/3~2/3范围设定为预定区域,在此预定区域内识别是否有形状为矩形且大小在26×26像素~100×100像素范围内的图像,若是,则将这种图像视为是浮层或弹窗。
步骤105、关闭所述浮层或弹窗。
例如:在识别出的图像(预先设定的视为浮层或弹窗的图像)上的随机点进行点击操作以关闭所述浮层或弹窗,还可以进一步记录日志。
步骤106、在待测试网页中重新进行目标元素定位。
本实施例中,关闭浮层或弹窗后在待测试网页中重新进行目标元素定位,这样的机制可以应对一次图像识别失败的情况。此步骤的实施方式和步骤103相同,此处不再赘述,若此步骤中在所述待测试网页中重新定位出目标元素,则执行步骤107。
步骤107、对定位出的目标元素进行操作测试。
此步骤中,对定位出的目标元素进行预先设定的测试脚本,例如:点击控件,点击后校验页面的跳转结果与预期是否一致。
本实施例提供的Web自动化测试方法及装置,在Web自动化测试中,通过判断页面加载状态,在页面加载成功后定位目标元素,在未定位出目标元素时通过识别待测试网页中是否存在浮层或弹窗,若识别出所述待测试网页中存在浮层或弹窗,则关闭所述浮层或弹窗后重新进行目标元素定位,可以解决由于页面中出现异常未知的弹层而导致测试脚本非功能性失败的问题,提高测试成功率。
在一可选实施例中,为了应对页面的连续弹窗对测试的影响,在图1所示实施例中,若步骤106在所述待测试网页中未重新定位出目标元素,则步骤106之后还可再次对所述待测试网页中是否存在浮层或弹窗进行识别;若经过所述再次识别,识别出待测试网页中存在浮层或弹窗,则关闭所述浮层或弹窗后,在所述待测试网页中再次重新进行目标元素定位;若在所述待测试网页中再次重新定位出目标元素,则对所述目标元素进行操作测试。此实施例中,当目标元素定位失败后,通过识别浮层或弹窗后,重复目标元素定位过程,直至重复三次定位目标元素仍失败,则确定本次测试异常。
图2为步骤102的优选实施方法流程图,包括以下步骤201-204:
步骤201、按预定周期截取待测试网页的屏幕截图。
例如,以100ms为预定周期,从访问所述待测试网页的时刻开始每隔100ms截取待测试网页的屏幕截图。
步骤202、判断按预定周期截取的相邻两张屏幕截图的像素差异是否小于预定阈值,若是,则执行步骤203。
例如,若以100ms为预定周期,从访问所述待测试网页的时刻开始每隔100ms截取待测试网页的屏幕截图,在每次截取一张待测试网页的屏幕截图时,将本次截取的屏幕截图和上一次截取的屏幕截图进行像素比较,若本次截取的屏幕截图和上一次截取的屏幕截图的像素差异小于预定阈值,如小于1%,则执行下一步骤203。
步骤203、在第一预设时长内继续按预定周期截取待测试网页的屏幕截图。
例如:若以100ms为预定周期,从访问所述待测试网页的时刻开始每隔100ms截取待测试网页的屏幕截图,在截取的相邻两张屏幕截图的像素差异首次小于预定阈值时,此步骤中继续按预定周期截取待测试网页的屏幕截图500ms,(第一预设时长为500ms),即:在截取的相邻两张屏幕截图的像素差异首次小于预定阈值时刻开始,每隔100ms截取一次待测试网页的屏幕截图,继续截取5张待测试网页的屏幕截图。
步骤204、判断在第一预设时长内继续按预定周期截取的相邻两张屏幕截图的像素差异是否均小于预定阈值。
此步骤中,若判断结果为是,则确定待测试网页加载成功,随后执行步骤103,若判断结果为否,则确定待测试网页加载不成功,结束流程。如图3所示,X轴表示时间(单位:秒),Y轴表示屏幕截图的像素差异值,在页面没有加载完成时,屏幕是剧烈变化的,一旦完成加载图片像素差异值就接近0,基于这个数据,判断页面加载在一段时间内不变化,就认为页面加载完成了。
例如:若以100ms为预定周期,从访问所述待测试网页的时刻开始每隔100ms截取待测试网页的屏幕截图,在截取的相邻两张屏幕截图的像素差异首次小于预定阈值时,继续按预定周期截取5张待测试网页的屏幕截图,并将这5张待测试网页的屏幕截图中第1、2张屏幕截图,第2、3张屏幕截图,第3、4张屏幕截图,第4、5张屏幕截图分别进行图像像素比较,查看所有相邻两张屏幕截图的像素差异是否小于1%,若第1、2张屏幕截图,第2、3张屏幕截图,第3、4张屏幕截图,第4、5张屏幕截图的像素差异均小于1%,则确定所述待测试网页加载成功,若有任意两张相邻两张屏幕截图的像素差异不小于1%,则认为待测试网页加载失败。
优选地,为了防止某些特殊情况下,待测试网页加载不成功,屏幕一直剧烈变化的情况下(即按预定周期截取的相邻两张屏幕截图的像素差异一直不小于预定阈值),步骤201-202无止尽执行下去,图2所示方法中,可以设定步骤201是在访问所述待测试网页第二预设时长之内按预定周期截取所述待测试网页的屏幕截图,步骤202相应地判断在访问所述待测试网页第二预设时长之内按所述预定周期截取的相邻两张屏幕截图的像素差异是否小于预定阈值。例如:可以设定第二预设时长为10s,在访问待测试网页10s内按预定周期截取待测试网页的屏幕截图,若在这10s内首次出现相邻两张屏幕截图的像素差异小于所述预定阈值,则执行步骤203,若在这10s内相邻两张屏幕截图的像素差异始终不小于预定阈值,则确定待测试网页加载不成功。
图4为本发明提供的一种Web自动化测试方法实施例二的流程图,如图4所示,本实施例的方法可以包括:
步骤401、通过Selenium访问待测试网页。
步骤402、判断待测试网页是否加载成功,若是,则执行步骤403,否则结束流程。
本实施例中,此步骤可以采用图2所示方法实施,此处不再赘述。
步骤403、判断用xpath或css在待测试网页中是否能定位出目标元素,若定位出目标元素,则执行步骤404,若不能定位出目标元素,则执行步骤405。
步骤404、对定位出的目标元素进行操作测试。
步骤405、令N=N+1。
其中,N的初始值为0,N用于表征本轮流程中在待测试网页中进行目标元素定位的次数。
步骤406、判断N是否等于3,若是,则执行步骤407,否则(即N小于3时),继续执行步骤408。
步骤407、生成异常报告并记录日志。
步骤408、通过图像识别待测试网页中的浮层或弹窗。
步骤409、根据所述图像识别的结果判断待测试网页中是否存在浮层或弹窗。
本步骤中,若判断结果为是,则执行步骤410,否则执行步骤411。
本实施例中,步骤408-409的过程和上述方法实施例的步骤104类似,此处不再赘述。
步骤410、对识别出的浮层或弹窗进行截屏并保存在日志中,随后关闭所述浮层或弹窗,返回执行步骤403。
步骤411、对待测试网页进行截屏并生成测试错误报告,返回执行步骤403。
本实施例中,当识别不出任何图像或报错时,当作是被测系统的异常,是正常的测试结果,进行截屏和错误报告。
本实施例二中,把图像识别技术运用在web自动化测试中来判定页面加载状态和识别页面元素,不需要任何预先参数条件,而是更灵活和真实的模拟人的视觉下进行的操作,来对页面中的内容和图像进行判定,更高效地帮助识别那些会影响测试执行的非功能性异常情况,能够提升测试执行成功率。
对应于本发明提供的Web自动化测试方法,本发明还提供Web自动化测试装置。图5为本发明提供的一种Web自动化测试装置实施例一的结构示意图,如图5所示,本实施例的装置可以包括:访问模块11、判断模块12、首次定位模块13、首次识别模块14、二次定位模块15、测试模块16;其中,访问模块11,用于访问待测试网页;判断模块12,用于判断访问模块11访问的待测试网页是否加载成功;首次定位模块13,用于在判断模块12判断出待测试网页加载成功时,在待测试网页中进行目标元素定位;首次识别模块14,用于在首次定位模块13未定位出目标元素时,对待测试网页中是否存在浮层或弹窗进行识别;二次定位模块15,用于在首次识别模块14识别出待测试网页中存在浮层或弹窗时,关闭浮层或弹窗后,在待测试网页中重新进行目标元素定位;测试模块16,用于在首次定位模块13在待测试网页中定位出目标元素或二次定位模块15在待测试网页中重新定位出目标元素时,对目标元素进行操作测试。
本实施例的装置,可以用于执行图1所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图6为本发明提供的一种Web自动化测试装置实施例二的结构示意图,如图6所示,本实施例的装置在图5所示装置结构的基础上,进一步地,判断模块12包括截图判断子模块121和第一确定子模块122;其中,截图判断子模块121,用于按预定周期截取待测试网页的屏幕截图,并判断相邻两张屏幕截图的像素差异是否持续小于预定阈值;第一确定子模块122,用于在截图判断子模块121判断出相邻两张屏幕截图的像素差异持续小于预定阈值时,确定待测试网页加载成功,或者在截图判断子模块121判断出相邻两张屏幕截图的像素差异不持续小于预定阈值时,确定待测试网页加载失败。
本实施例的装置,可以用于执行图1所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图7为本发明提供的一种Web自动化测试装置实施例三的结构示意图,如图7所示,本实施例的装置在图6所示装置结构的基础上,进一步地,截图判断子模块121包括第一截图判断单元1211和第二截图判断单元1212;其中,第一截图判断单元1211,用于按预定周期截取待测试网页的屏幕截图,判断按预定周期截取的相邻两张屏幕截图的像素差异是否小于预定阈值;第二截图判断单元1212,用于在第一截图判断单元1211判断出按预定周期截取的相邻两张屏幕截图的像素差异小于预定阈值时,在第一预设时长内继续按预定周期截取待测试网页的屏幕截图,并判断在第一预设时长内继续按预定周期截取的相邻两张屏幕截图的像素差异是否均小于预定阈值;本实施例中,第一确定子模块122,具体用于在第二截图判断单元1212判断出在第一预设时长内继续按预定周期截取的相邻两张屏幕截图的像素差异均小于预定阈值时,确定待测试网页加载成功,反之,确定待测试网页加载失败。
本实施例的装置,可以用于执行图1和图2所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
在一优选实施例中,图7所示的第一截图判断单元1211,具体用于在访问模块11访问待测试网页第二预设时长之内按预定周期截取待测试网页的屏幕截图,并判断在访问待测试网页第二预设时长之内按预定周期截取的相邻两张屏幕截图的像素差异是否小于预定阈值。
图8为本发明提供的一种Web自动化测试装置实施例四的结构示意图,如图8所示,本实施例的装置在图5所示装置结构的基础上,进一步地,首次识别模块14包括图像识别子模块141和判断子模块142;其中,图像识别子模块141,用于在首次定位模块未定位出目标元素时,对待测试网页的预定区域进行图像识别;判断子模块142,用于根据图像识别子模块141进行图像识别的结果,判断待测试网页中是否存在浮层或弹窗。
本实施例的装置,可以用于执行图1或图4所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图9为本发明提供的一种Web自动化测试装置实施例五的结构示意图,如图9所示,本实施例的装置在图5所示装置结构的基础上,进一步地,还包括记录模块17,用于在首次识别模块14识别出待测试网页中存在浮层或弹窗时,对浮层或弹窗进行截屏并保存在日志中。
本实施例的装置,可以用于执行图1或图4所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图10为本发明提供的一种Web自动化测试装置实施例六的结构示意图,如图10所示,本实施例的装置在图5所示装置结构的基础上,进一步地,还包括二次识别模块18和三次定位模块19;其中,二次识别模块18,用于在二次定位模块15在待测试网页中未重新定位出目标元素时,再次对待测试网页中是否存在浮层或弹窗进行识别;三次定位模块19,用于在二次识别模块18识别出待测试网页中存在浮层或弹窗时,关闭浮层或弹窗后,在待测试网页中再次重新进行目标元素定位;本实施例中,测试模块16还用于在三次定位模块19在待测试网页中再次重新定位出目标元素时,对目标元素进行操作测试。
本实施例的装置,可以用于执行图4所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图11为本发明提供的一种Web自动化测试装置实施例七的结构示意图,如图11所示,本实施例的装置在图10所示装置结构的基础上,进一步地,还包括:报告模块20,用于在三次定位模块19在待测试网页中未再次重新定位出目标元素时,生成异常报告并记录日志。
本实施例的装置,可以用于执行图4所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
在一优选实施例中,图11中的报告模块20,还用于在首次识别模块14或二次识别模块18识别不出待测试网页中存在浮层或弹窗时,对待测试网页进行截屏并生成测试错误报告。本实施例的装置,可以用于执行图4所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
在一优选实施例中,上述方案中的首次识别模块14、二次识别模块18也可以实施为同一功能模块,例如简称为“识别模块”;首次定位模块13、二次定位模块15、三次定位模块19也可以实施为同一模块,例如简称为“定位模块”,该定位模块用于在判断模块12判断出待测试网页加载成功时,在待测试网页中进行目标元素定位,若定位不到目标元素,则第二次在待测试网页中进行目标元素定位,若第二次还定位不到目标元素,则第三次在待测试网页中进行目标元素定位;若重复三次在待测试网页中都定位不到目标元素,则测试异常;若定位到目标元素,则测试模块16对其定位出的目标元素进行操作测试;识别模块定位模块在第一、第二次定位不到目标元素时,对对待测试网页中是否存在浮层或弹窗进行识别,此处不再赘述。
本发明实施例还提供一种电子设备。图12为本发明提供的电子设备的一个实施例的结构示意图,可以实现本发明图1或图4所示实施例的流程,如图12所示,上述电子设备可以包括:壳体21、处理器22、存储器23、电路板24和电源电路25,其中,电路板24安置在壳体21围成的空间内部,处理器22和存储器23设置在电路板24上;电源电路25,用于为上述电子设备的各个电路或器件供电;存储器23用于存储可执行程序代码;处理器22通过读取存储器23中存储的可执行程序代码来运行与可执行程序代码对应的程序,用于执行前述任一实施例所述的Web自动化测试方法。
该电子设备以多种形式存在,包括但不限于:
(1)移动通信设备:这类设备的特点是具备移动通信功能,并且以提供话音、数据通信为主要目标。这类终端包括:智能手机(例如iPhone)、多媒体手机、功能性手机,以及低端手机等。
(2)超移动个人计算机设备:这类设备属于个人计算机的范畴,有计算和处理功能,一般也具备移动上网特性。这类终端包括:PDA、MID和UMPC设备等,例如iPad。
(3)便携式娱乐设备:这类设备可以显示和播放多媒体内容。该类设备包括:音频、视频播放模块(例如iPod),掌上游戏机,电子书,以及智能玩具和便携式车载导航设备。
(4)服务器:提供计算服务的设备,服务器的构成包括处理器、硬盘、内存、系统总线等,服务器和通用的计算机架构类似,但是由于需要提供高可靠的服务,因此在处理能力、稳定性、可靠性、安全性、可扩展性、可管理性等方面要求较高。
(5)其他具有数据交互功能的电子设备。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将
一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些
实体或操作之间存在任何这种实际的关系或者顺序。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

Claims (10)

1.一种Web自动化测试方法,其特征在于,包括如下步骤:
访问待测试网页;
判断所述待测试网页是否加载成功;
若所述待测试网页加载成功,在所述待测试网页中进行目标元素定位;
若未定位出目标元素,则对所述待测试网页中是否存在浮层或弹窗进行识别;
若识别出所述待测试网页中存在浮层或弹窗,则关闭所述浮层或弹窗后,在所述待测试网页中重新进行目标元素定位;
若在所述待测试网页中重新定位出目标元素,则对所述目标元素进行操作测试。
2.根据权利要求1所述的Web自动化测试方法,其特征在于,所述判断所述待测试网页是否加载成功,包括:
按预定周期截取所述待测试网页的屏幕截图,判断相邻两张屏幕截图的像素差异是否持续小于预定阈值;
若相邻两张屏幕截图的像素差异持续小于所述预定阈值,则确定所述待测试网页加载成功。
3.根据权利要求2所述的Web自动化测试方法,其特征在于,所述按预定周期截取所述待测试网页的屏幕截图,判断相邻两张屏幕截图的像素差异是否持续小于预定阈值,包括:
按预定周期截取所述待测试网页的屏幕截图,判断按所述预定周期截取的相邻两张屏幕截图的像素差异是否小于预定阈值;
若按所述预定周期截取的相邻两张屏幕截图的像素差异小于所述预定阈值,则在第一预设时长内继续按所述预定周期截取所述待测试网页的屏幕截图,判断在第一预设时长内继续按所述预定周期截取的相邻两张屏幕截图的像素差异是否均小于所述预定阈值;
其中,所述若相邻两张屏幕截图的像素差异持续小于所述预定阈值,则确定所述待测试网页加载成功,包括:
若在第一预设时长内继续按所述预定周期截取的相邻两张屏幕截图的像素差异均小于所述预定阈值,则确定所述待测试网页加载成功。
4.根据权利要求3所述的Web自动化测试方法,其特征在于,所述按预定周期截取所述待测试网页的屏幕截图,判断按所述预定周期截取的相邻两张屏幕截图的像素差异是否小于预定阈值,包括:
在访问所述待测试网页第二预设时长之内按预定周期截取所述待测试网页的屏幕截图,判断在访问所述待测试网页第二预设时长之内按所述预定周期截取的相邻两张屏幕截图的像素差异是否小于预定阈值。
5.根据权利要求1所述的Web自动化测试方法,其特征在于,所述若未定位出目标元素,则对所述待测试网页中是否存在浮层或弹窗进行识别,包括:
若未定位到目标元素,则对所述待测试网页的预定区域进行图像识别;
根据所述图像识别的结果,判断所述待测试网页中是否存在浮层或弹窗。
6.根据权利要求1所述的Web自动化测试方法,其特征在于,所述目标元素为按钮或输入框控件。
7.根据权利要求1所述的Web自动化测试方法,其特征在于,还包括:
若识别出所述待测试网页中存在浮层或弹窗,则对所述浮层或弹窗进行截屏并保存在日志中。
8.根据权利要求1所述的Web自动化测试方法,其特征在于,若在所述待测试网页中未重新定位出目标元素,则再次对所述待测试网页中是否存在浮层或弹窗进行识别;
经过所述再次识别,若识别出所述待测试网页中存在浮层或弹窗,则关闭所述浮层或弹窗后,在所述待测试网页中再次重新进行目标元素定位;
若在所述待测试网页中再次重新定位出目标元素,则对所述目标元素进行操作测试。
9.根据权利要求8所述的Web自动化测试方法,其特征在于,若在所述待测试网页中未再次重新定位出目标元素,则生成异常报告并记录日志;和/或,
若识别不出所述待测试网页中存在浮层或弹窗,则对所述待测试网页进行截屏并生成测试错误报告。
10.一种电子设备,其特征在于,所述电子设备包括:壳体、处理器、存储器、电路板和电源电路,其中,电路板安置在壳体围成的空间内部,处理器和存储器设置在电路板上;电源电路,用于为上述电子设备的各个电路或器件供电;存储器用于存储可执行程序代码;处理器通过读取存储器中存储的可执行程序代码来运行与可执行程序代码对应的程序,用于执行前述任一权利要求1-9所述的Web自动化测试方法。
CN201710350356.1A 2017-05-17 2017-05-17 一种web自动化测试方法及电子设备 Pending CN107239397A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710350356.1A CN107239397A (zh) 2017-05-17 2017-05-17 一种web自动化测试方法及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710350356.1A CN107239397A (zh) 2017-05-17 2017-05-17 一种web自动化测试方法及电子设备

Publications (1)

Publication Number Publication Date
CN107239397A true CN107239397A (zh) 2017-10-10

Family

ID=59984483

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710350356.1A Pending CN107239397A (zh) 2017-05-17 2017-05-17 一种web自动化测试方法及电子设备

Country Status (1)

Country Link
CN (1) CN107239397A (zh)

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109165625A (zh) * 2018-09-11 2019-01-08 国网山东省电力公司莱芜供电公司 一种基于图像识别的试验报告智能生成方法
CN109656645A (zh) * 2017-10-11 2019-04-19 阿里巴巴集团控股有限公司 展现时间确定方法和页面渲染完成时间的确定方法及装置
CN109766252A (zh) * 2018-12-15 2019-05-17 深圳壹账通智能科技有限公司 提示框元素处理方法、装置、计算机设备及存储介质
CN111090375A (zh) * 2019-11-21 2020-05-01 深圳前海环融联易信息科技服务有限公司 一种智能网页截图方法、装置、计算机设备及存储介质
CN111858289A (zh) * 2019-04-29 2020-10-30 深圳兆日科技股份有限公司 图形用户界面的测试方法、装置和计算机可读存储介质
CN111949510A (zh) * 2019-05-17 2020-11-17 百度在线网络技术(北京)有限公司 测试处理方法、装置、电子设备及可读存储介质
CN112286781A (zh) * 2019-07-23 2021-01-29 百度时代网络技术(北京)有限公司 自动化测试方法、装置、设备和存储介质
CN112506600A (zh) * 2020-12-11 2021-03-16 上海依图网络科技有限公司 用户界面的元素定位方法及其装置、介质和电子设备
CN113010412A (zh) * 2021-02-05 2021-06-22 成都库珀区块链科技有限公司 一种自动化回归测试方法及装置
CN113110991A (zh) * 2021-03-29 2021-07-13 青岛海尔科技有限公司 页面元素的定位方法及装置、存储介质及电子装置
CN113377671A (zh) * 2021-06-29 2021-09-10 山东派盟网络科技有限公司 一种群控方法、装置以及设备
CN113535542A (zh) * 2021-06-04 2021-10-22 北京房江湖科技有限公司 控件定位方法、装置、电子设备及可读存储介质
CN115766450A (zh) * 2022-11-18 2023-03-07 惠州同为数码科技有限公司 摄像机反复升级测试方法、装置、计算机设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102624576A (zh) * 2011-01-27 2012-08-01 腾讯科技(深圳)有限公司 一种自动测试浏览器的网页下载时间的方法和系统
CN103309802A (zh) * 2012-03-16 2013-09-18 百度在线网络技术(北京)有限公司 一种移动终端中系统稳定性测试的方法及装置
US9355015B2 (en) * 2012-09-26 2016-05-31 Dynatrace Llc Technique for simulating an orientation change event in a test environment
CN106383783A (zh) * 2016-09-14 2017-02-08 上海斐讯数据通信技术有限公司 一种android系统测试方法及系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102624576A (zh) * 2011-01-27 2012-08-01 腾讯科技(深圳)有限公司 一种自动测试浏览器的网页下载时间的方法和系统
CN103309802A (zh) * 2012-03-16 2013-09-18 百度在线网络技术(北京)有限公司 一种移动终端中系统稳定性测试的方法及装置
US9355015B2 (en) * 2012-09-26 2016-05-31 Dynatrace Llc Technique for simulating an orientation change event in a test environment
CN106383783A (zh) * 2016-09-14 2017-02-08 上海斐讯数据通信技术有限公司 一种android系统测试方法及系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
MINGZHU_USTC: ""android测量网页加载时间"", 《HTTPS://BLOG.CSDN.NET/U010037124/ARTICLE/DETAILS/38468657》 *

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109656645A (zh) * 2017-10-11 2019-04-19 阿里巴巴集团控股有限公司 展现时间确定方法和页面渲染完成时间的确定方法及装置
CN109165625A (zh) * 2018-09-11 2019-01-08 国网山东省电力公司莱芜供电公司 一种基于图像识别的试验报告智能生成方法
CN109766252A (zh) * 2018-12-15 2019-05-17 深圳壹账通智能科技有限公司 提示框元素处理方法、装置、计算机设备及存储介质
CN111858289B (zh) * 2019-04-29 2024-02-27 深圳兆日科技股份有限公司 图形用户界面的测试方法、装置和计算机可读存储介质
CN111858289A (zh) * 2019-04-29 2020-10-30 深圳兆日科技股份有限公司 图形用户界面的测试方法、装置和计算机可读存储介质
CN111949510A (zh) * 2019-05-17 2020-11-17 百度在线网络技术(北京)有限公司 测试处理方法、装置、电子设备及可读存储介质
CN111949510B (zh) * 2019-05-17 2024-05-14 百度在线网络技术(北京)有限公司 测试处理方法、装置、电子设备及可读存储介质
CN112286781A (zh) * 2019-07-23 2021-01-29 百度时代网络技术(北京)有限公司 自动化测试方法、装置、设备和存储介质
CN111090375A (zh) * 2019-11-21 2020-05-01 深圳前海环融联易信息科技服务有限公司 一种智能网页截图方法、装置、计算机设备及存储介质
CN112506600A (zh) * 2020-12-11 2021-03-16 上海依图网络科技有限公司 用户界面的元素定位方法及其装置、介质和电子设备
CN113010412A (zh) * 2021-02-05 2021-06-22 成都库珀区块链科技有限公司 一种自动化回归测试方法及装置
CN113110991A (zh) * 2021-03-29 2021-07-13 青岛海尔科技有限公司 页面元素的定位方法及装置、存储介质及电子装置
CN113535542A (zh) * 2021-06-04 2021-10-22 北京房江湖科技有限公司 控件定位方法、装置、电子设备及可读存储介质
CN113377671A (zh) * 2021-06-29 2021-09-10 山东派盟网络科技有限公司 一种群控方法、装置以及设备
CN115766450A (zh) * 2022-11-18 2023-03-07 惠州同为数码科技有限公司 摄像机反复升级测试方法、装置、计算机设备及存储介质

Similar Documents

Publication Publication Date Title
CN107239397A (zh) 一种web自动化测试方法及电子设备
CN109783350A (zh) 接口测试方法、装置及计算机可读存储介质
CN108717393A (zh) 一种应用程序测试方法及移动终端
CN112463580B (zh) 基于虚拟化装置的测试系统及其方法
CN104794049B (zh) 应用程序测试方法和装置
Méndez Porras et al. Automated testing of mobile applications: A systematic map and review
CN106326120B (zh) 一种应用软件的回归测试方法及装置、电子设备
CN108717391A (zh) 测试过程的监控装置、方法及计算机可读存储介质
CN109783351A (zh) 界面测试方法、装置及计算机可读存储介质
US20210224172A1 (en) Integrated circuit (ic) power-up testing method and device, and electronic equipment
US20230035104A1 (en) Verification method, apparatus and device, and storage medium
CN112433948A (zh) 一种基于网络数据分析的仿真测试系统及方法
CN103729293A (zh) 一种基于uml活动图的gui测试方法
US9501390B1 (en) Enhancing automated mobile application testing
CN110147314A (zh) 测试方法、装置及计算机可读存储介质
CN109446077A (zh) 一种数据库测试方法及装置
CN116719736A (zh) 一种用于测试软件界面的测试用例生成方法及装置
US11775419B2 (en) Performing software testing with best possible user experience
US20170206153A1 (en) Simulating process variable changes during process runtime
CN115509925A (zh) 一种接口自动化测试方法及相关装置
CN103778048B (zh) 移动终端测试方法和系统
CN112380127B (zh) 测试用例回归方法、装置、设备和存储介质
CN110806981A (zh) 一种应用程序测试方法、装置、设备和存储介质
US10248924B2 (en) Network change auditing system
CN116524986B (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

Application publication date: 20171010

RJ01 Rejection of invention patent application after publication