CN113535589A - 界面测试方法、装置、电子设备和存储介质 - Google Patents
界面测试方法、装置、电子设备和存储介质 Download PDFInfo
- Publication number
- CN113535589A CN113535589A CN202110961074.1A CN202110961074A CN113535589A CN 113535589 A CN113535589 A CN 113535589A CN 202110961074 A CN202110961074 A CN 202110961074A CN 113535589 A CN113535589 A CN 113535589A
- Authority
- CN
- China
- Prior art keywords
- unit
- test
- code
- interface
- test result
- 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
- 238000010998 test method Methods 0.000 title description 6
- 238000012360 testing method Methods 0.000 claims abstract description 255
- 230000004044 response Effects 0.000 claims abstract description 50
- 230000006870 function Effects 0.000 claims description 53
- 238000011990 functional testing Methods 0.000 claims description 19
- 238000000034 method Methods 0.000 claims description 17
- 238000004590 computer program Methods 0.000 claims description 11
- 238000001514 detection method Methods 0.000 claims description 7
- 238000004088 simulation Methods 0.000 claims description 3
- 238000009434 installation Methods 0.000 claims description 2
- 238000013522 software testing Methods 0.000 abstract description 4
- 238000010586 diagram Methods 0.000 description 9
- 238000004891 communication Methods 0.000 description 8
- 238000012545 processing Methods 0.000 description 6
- 238000013139 quantization Methods 0.000 description 5
- 239000003795 chemical substances by application Substances 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 241000208306 Apium Species 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000009191 jumping Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 238000006467 substitution reaction 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本公开提供了界面测试方法、装置、电子设备和存储介质,涉及软件测试领域,尤其涉及界面测试技术。具体实现方案为:接收测试代码,测试代码包括单元代码,单元代码对应模拟用户操作;执行单元代码,并检测单元代码对应的响应界面中的界面元素;根据界面元素,确定功能测试结果。本公开实施例可以提高测试效率,降低测试人工成本。
Description
技术领域
本公开涉及软件测试领域,尤其涉及界面测试技术,具体涉及一种界面测试方法、装置、电子设备和存储介质。
背景技术
软件测试用于发现程序中的错误,保证软件正确地实现了一些特定功能的一系列活动。
设备的软件测试是保障设备应用的质量必不可少的环节。
发明内容
本公开提供了一种界面测试方法、装置、电子设备和存储介质。
根据本公开的一方面,提供了一种界面测试方法,包括:
接收测试代码,测试代码包括单元代码,单元代码对应模拟用户操作;
执行单元代码,并检测单元代码对应的响应界面中的界面元素;
根据界面元素,确定功能测试结果。
根据本公开的另一方面,提供了一种界面测试装置,包括:
接收测试代码模块,用于接收测试代码,测试代码包括单元代码,单元代码对应模拟用户操作;
界面元素检测模块,用于执行单元代码,并检测单元代码对应的响应界面中的界面元素;
测试结果获取模块,用于根据界面元素,确定功能测试结果。
根据本公开的另一方面,提供了一种电子设备,包括:
至少一个处理器;以及
与至少一个处理器通信连接的存储器;其中,
存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行本公开任一实施例的界面测试方法。
根据本公开的另一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,计算机指令用于使计算机执行本公开任一实施例的界面测试方法。
根据本公开的另一方面,提供了一种计算机程序产品,包括计算机程序,计算机程序在被处理器执行时实现本公开任一实施例的界面测试方法。
本公开实施例可以提高测试效率,降低测试人工成本。
应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
附图用于更好地理解本方案,不构成对本公开的限定。其中:
图1是根据本公开实施例的一种界面测试方法的示意图;
图2是根据本公开实施例的一种界面测试方法的示意图;
图3是根据本公开实施例的一种界面测试方法的示意图;
图4是根据本公开实施例的一种界面测试方法的场景图;
图5是根据本公开实施例的一种界面测试装置的示意图;
图6是用来实现本公开实施例的界面测试方法的电子设备的框图。
具体实施方式
以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
图1是根据本公开实施例公开的一种界面测试方法的流程图,本实施例可以适用于界面测试的情况。本实施例方法可以由界面测试装置来执行,该装置可采用软件和/或硬件的方式实现,并具体配置于具有一定数据运算能力的电子设备中,该电子设备可以是客户端设备,客户端设备例如手机、平板电脑、车载终端和台式电脑等。
S101,接收测试代码,测试代码包括单元代码,单元代码对应模拟用户操作。
测试代码用于测试电子设备的用户界面的功能,具体是测试在检测到用户在用户界面上输入的操作的情况下电子设备是否正确响应。其中,测试代码可以是人工编写的代码,还可以是自动生成。测试代码包括模拟用户操作输入的指令。
测试代码包括单元代码。单元代码包括指一个模拟用户操作输入的指令。一个单元代码对应一个模拟用户操作。模拟用户操作是指模拟用户在用户界面上的操作,例如,点击操作、按压操作或手势操作等。测试代码包括多个单元代码,对应多个模拟用户操作。单元代码可以用于测试一个功能,也即执行模拟用户操作输入的指令所实现的功能。测试代码用于测试多个功能。示例性的,测试代码为电子设备的用户界面的全功能测试的代码。其中,本公开实施例的执行主体为该电子设备,示例性的,可以是手机,例如IOS操作系统的手机。
S102,执行单元代码,并检测单元代码对应的响应界面中的界面元素。
执行单元代码,相当于执行测试任务,用于测试单元代码对应的功能是否符合预期功能以及功能是否正确执行等。响应界面可以是指对单元代码进行响应,得到的用户界面。执行单元代码实际是模拟用户操作,并作用于当前用户界面,在需要切换界面或者跳转界面的情况下,将显示的新的用户界面确定为响应界面;在不需要切换界面或者跳转界面,仍保持原有当前用户界面的情况下,将当前用户界面,确定为响应界面。
界面元素可以是指响应界面包括的元素,例如,界面元素可以包括文本、图像、按钮、区域框或控件等。执行单元代码,界面切换,引起界面元素发生变化;界面不切换,单元代码对应的模拟用户操作作用的界面元素会发生变化。界面元素发生变化,实际是指界面元素的属性发生变化,属性可以包括下述至少一项内容、样式、在界面中的布局位置、绝对路径或标识信息等。
S103,根据界面元素,确定功能测试结果。
界面元素的数量为至少一个。功能测试结果用于确定待测试设备针对测试代码对应的功能是否测试成功。功能测试结果包括待测试设备针对各单元代码对应的功能是否测试成功的结果。具体可以针对每个单元代码配置测试条件,检测通过执行单元代码确定的响应界面中界面元素是否满足该单元代码的测试条件,以确定功能测试结果。测试条件中包括执行单元代码得到的预期结果,在至少一个界面元素中,查询是否存在预期结果,根据查询结果,确定功能测试结果。预期结果可以是指执行单元代码所响应成功得到的结果,该预期结果通常体现在元素的属性上。界面元素中存在基于单元代码得到的预期结果,表明单元代码对应的功能实现正确且为预期功能。在界面元素中存在单元代码对应的至少一个预期结果的情况下,确定单元代码对应的功能测试成功。在界面元素中不存在单元代码对应的任意一个预期结果的情况下,确定单元代码对应的功能测试失败。
现有技术中,应用程序的测试过程中,需要对全功能进行测试,但全功能的用例场景较多,人工执行耗时较长。
根据本公开的技术方案,通过接收测试代码、执行单元代码,并检测基于单元代码的执行所产生或更新的界面元素,根据界面元素,确定功能测试结果,可以根据单元代码的响应结果,检测测试成败,同时降低测试的人工成本,提高测试效率,并且,简化测试过程,增加测试的功能覆盖范围,提高测试的准确率。
图2是根据本公开实施例公开的另一种界面测试方法的流程图,基于上述技术方案进一步优化与扩展,并可以与上述各个可选实施方式进行结合。根据界面元素,确定功能测试结果,具体化为:根据单元代码对应的标准元素和对应的界面元素,确定单元代码对应的单元测试结果;根据测试代码包括的单元代码对应的单元测试结果,确定功能测试结果。
S201,接收测试代码,测试代码包括单元代码,单元代码对应模拟用户操作。
S202,执行单元代码,并检测单元代码对应的响应界面中的界面元素。
S203,根据单元代码对应的测试条件和对应的界面元素,确定单元代码对应的单元测试结果。
测试条件用于检测界面元素是否满足测试条件,以检测单元代码的功能是否成功实现。单元测试结果可以是指单元代码对应的功能是否正确实现以及是否符合预期功能,具体可以通过检测单元代码的执行结果是否与预期结果相同,即通过检测单元代码执行得到的界面元素中是否满足测试条件,以确定单元测试结果。其中,测试条件具体配置了通过执行单元代码所产生的预期结果。
可选的,根据单元代码对应的测试条件和对应的界面元素,确定单元代码对应的单元测试结果,包括:获取单元代码对应的测试条件包括的标准元素;在单元代码对应的界面元素包括标准元素的情况下,确定单元代码对应的单元测试结果为测试通过;在单元代码对应的界面元素不包括标准元素的情况下,确定单元代码对应的单元测试结果为测试不通过,并确定与界面元素不同的标准元素,添加到测试不通过的单元测试结果中。
标准元素是指执行单元代码得到的预期结果。响应界面中的界面元素包括标准元素是指,响应界面中存在标准元素,从而表明执行单元代码,响应界面中出现预期结果,即单元代码对应的功能正确实现以及符合预期功能,确定单元测试结果为测试通过。测试条件包括的标准元素的数量为至少一个。响应界面中的界面元素包括标准元素,具体是指相应界面中的界面元素中包括全部的标准元素。
响应界面中的界面元素不包括标准元素是指,响应界面中不存在标准元素,从而表明执行单元代码,响应界面中未出现预期结果,即单元代码对应的功能没有正确实现或者不符合预期功能,确定单元测试结果为测试不通过。
在一个具体的例子中,单元代码对应的模拟用户操作为对应用程序的图标进行移动的操作,例如,从A位置移动到B位置,响应界面为当前用户界面,标准元素为处于B位置的应用程序图标,即应用程序图标的元素的属性中位置信息为B位置。
又如,单元代码对应的模拟用户操作为对应用程序的图标进行点击的操作,响应界面为应用程序的界面,标准元素为应用程序的界面中包括的元素,例如,标准元素为应用程序的名称文本和应用程序的指定控件等。
又如,单元代码对应的模拟用户操作为对应用程序的关闭控件进行点击的操作,响应界面为主界面,标准元素为主界面中包括的元素,例如,标准元素为多个应用程序的图标等。
又如,单元代码对应的模拟用户操作为对滑动窗口进行滑动的操作,响应界面为滑动窗口滑动后的视图,标准元素为滑动窗口滑动后的视图包括的元素,例如,标准元素为指定图像等。
又如,单元代码对应的模拟用户操作为对滑动窗口进行缩放的操作,响应界面为滑动窗口缩放后的视图,标准元素为滑动窗口缩放后的视图包括的元素,例如,标准元素为与缩放匹配的指定尺寸的图像等。此外还有其他实例,对此不作具体限定。
通过配置元素级别的预期结果作为测试条件,检测响应界面包括的界面元素中是否存在标准元素,以确定单元测试结果,可以提高测试准确率。
可选的,标准元素包括下述至少一项:文本、指定标识信息的控件和指定路径的控件。
标准元素可以是指定内容的文本,例如,单元代码对应的模拟用户操作为页面跳转的触发操作,响应界面为跳转后的界面或弹窗,标准元素为跳转后的界面或弹窗中出现的文本,例如,登陆页面中账号文本或密码文本。
标准元素为指定标识信息的控件。例如,单元代码对应的模拟用户操作为页面跳转的触发操作,响应界面为跳转后的界面或弹窗,标准元素为跳转后的界面或弹窗中出现的控件,例如,该控件的ID信息为指定标识信息。
标准元素为指定路径的控件。例如,单元代码对应的模拟用户操作为页面滑动的操作,响应界面为滑动后的界面,标准元素为滑动后的界面中出现的控件,例如,该控件的路径为指定路径。
通过配置标准元素的具体内容,可以增加测试条件的内容,提高测试准确率,同时增加测试条件的多样性,适配不同功能的检测,提高功能测试的精准性,以及功能测试的灵活性。
S204,根据测试代码包括的单元代码对应的单元测试结果,确定功能测试结果。
功能测试结果可以是指测试代码的测试结果,具体是指测试代码对应的多个功能的测试结果。测试代码包括多个单元代码,可以根据每个单元代码对应的单元测试结果确定功能测试结果。示例性的,在全部单元测试结果均为测试通过的情况下,将功能测试结果确定为测试通过;在存在至少一个单元测试结果为测试不通过的情况下,将功能测试结果确定为测试不通过。或者还可以是,在单元测试结果为测试通过的单元代码的数量大于等于预设数量阈值的情况下,将功能测试结果确定为测试通过;在单元测试结果为测试通过的单元代码的数量小于该数量阈值的情况下,将功能测试结果确定为测试不通过。
根据本公开的技术方案,通过为每个单元代码配置对应的测试条件,并检测执行单元代码得到的界面元素是否满足测试条件,以检测单元代码对应的单元测试结果,实现对每个功能进行针对性测试,提高功能测试的精准性,同时可以对多个功能进行测试,增加测试功能的覆盖范围,实现兼顾提高功能测试的准确率和覆盖率。
图3是根据本公开实施例公开的另一种界面测试方法的流程图,基于上述技术方案进一步优化与扩展,并可以与上述各个可选实施方式进行结合。接收测试代码,具体化为:通过与控制端之间的连接,接收控制端发送的网页驱动服务模块并安装;通过网页驱动服务模块接收控制端中网页驱动代理模块发送的测试代码,网页驱动服务模块运行于IOS操作系统中。
S301,通过与控制端之间的连接,接收控制端发送的网页驱动服务模块并安装。
控制端用于向待测试的电子设备发送测试代码,并控制电子设备进行功能测试。其中,待测试的电子设备与控制端之间存在连接,该连接可以是数据线,通过该连接,控制端可以向电子设备发送数据。待测试的电子设备的操作系统为IOS系统。
网页驱动服务模块(Web Driver server),用于建立控制端和电子设备之间的测试通道,用户可以控制端远程控制待测试的电子设备进行测试。网页驱动服务模块接收控制端发送的测试代码,并转发给待测试的电子设备。在需要测试的情况下,控制端运行网页驱动代理模块(Web Driver Agent,WDA),并将网页驱动服务模块下发到待测试的电子设备中,以使待测试的电子设备安装网页驱动服务模块,以实现控制端控制测试电子设备。
S302,通过网页驱动服务模块接收控制端中网页驱动代理模块发送的测试代码,网页驱动服务模块运行于IOS操作系统中,测试代码包括单元代码,单元代码对应模拟用户操作。
控制端的WDA向iOS电子设备的网页驱动服务模块发送测试代码,iOS电子设备的网页驱动服务模块接收到测试代码并逐个单元代码进行执行,获取功能测试结果。控制端的WDA在iOS电子设备实现了一个网页驱动服务模块,通过网页驱动服务模块可以远程控制iOS电子设备,具体可以控制启动或杀死iOS电子设备中应用程序,在iOS电子设备中点击或滚动视图,或者确定iOS电子设备中的页面展示是否正确等。
S303,执行单元代码,并检测单元代码对应的响应界面中的界面元素。
可选的,执行单元代码,并检测单元代码对应的响应界面上的界面元素,包括:执行单元代码;生成对应的模拟用户操作的指令,并作用于用户界面,确定单元代码对应的响应界面;获取响应界面中界面元素。
单元代码可以表示作用于用户界面的操作。模拟用户操作的指令是用户对用户界面的输入指令。作用于用户界面,是指基于模拟用户操作的指令对用户界面进行操作。响应界面是指在执行单元代码的情况下,当前显示的界面。界面元素为响应界面包括的元素。可以查询响应界面包括的全部界面元素。
通过执行单元代码,以生成模拟用户操作的指令并作用于用户界面,确定响应界面,可以针对单元代码进行独立测试,并获取响应界面的界面元素,可以获取单元代码执行得到的响应结果,从而根据界面元素,对模拟用户操作的功能进行测试,提高功能测试的精准性。
S304,根据界面元素,确定功能测试结果。
根据本公开的技术方案,通过码率计算历史时间段的期望编码数据总量,并根据实际的编码帧数,计算以码率进行编码的一个视频帧的数据量,从而计算得到码率进行编码的期望编码数据量,并根据期望编码数据量对量化参数进行调整,实现基于调整后的量化参数的编码方式可以确保码率恒定。
图4是根据本公开实施例公开的一种编码器和处理器之间的信令图。
S401,接收控制端发送的网页驱动服务模块并安装运行。
具体的,控制端可以运行Appium应用程序,该Appium应用程序用于在控制端提供控制测试电子设备的环境。Appium应用程序接收测试代码,并发送至WDA,通过WDA发送至待测试的电子设备的网页驱动服务模块。
S402,通过网页驱动服务模块接收测试代码。
S403,通过网页驱动服务模块逐行执行测试代码包括的单元代码。
每个单元代码对应模拟用户操作的指令。
S404,针对每个单元代码,判断响应界面包括的界面元素中是否存在指定的标准元素,如果是,则执行S405;否则,执行S406。
S405,确定该单元代码的单元测试结果为测试通过。
S406,确定该单元代码的单元测试结果为测试不通过。
通过接收到测试代码并执行,以及根据执行得到的响应界面包括的界面元素与预期的标准元素的比较结果,确定每个单元代码表示的控制指令的功能测试结果,可以提高客户端全功能用例场景的测试效率。
根据本公开的实施例,图5是本公开实施例中的界面测试装置的结构图,本公开实施例适用于界面测试的情况。该装置采用软件和/或硬件实现,并具体配置于具备一定数据运算能力的电子设备中。
如图5所示的一种界面测试装置500,包括:接收测试代码模块501、界面元素检测模块502和测试结果获取模块503;其中,
接收测试代码模块501,用于接收测试代码,测试代码包括单元代码,单元代码对应模拟用户操作;
界面元素检测模块502,用于执行单元代码,并检测单元代码对应的响应界面中的界面元素;
测试结果获取模块503,用于根据界面元素,确定功能测试结果。
根据本公开的技术方案,通过接收测试代码、执行单元代码,并检测基于单元代码的执行所产生或更新的界面元素,根据界面元素,确定功能测试结果,可以根据单元代码的响应结果,检测测试成败,同时降低测试的人工成本,提高测试效率,并且,简化测试过程,增加测试的功能覆盖范围,提高测试的准确率。
进一步的,量化参数调整模块503,包括:调整数值计算单元,用于计算实际编码数据量和期望编码数据量之间的差值,并确定调整数值;调整符号确定单元,用于根据实际编码数据量和期望编码数据量的数值比较关系,确定调整数值的符号;量化参数调整单元,用于根据调整数值和调整数值的符号,调整编码器的量化参数。
进一步的,测试结果获取模块503,包括:单元测试结果获取单元,用于根据单元代码对应的测试条件和对应的界面元素,确定单元代码对应的单元测试结果;功能测试结果单元,用于根据测试代码包括的单元代码对应的单元测试结果,确定功能测试结果。
进一步的,功能测试结果单元,包括:标准元素获取子单元,用于获取单元代码对应的测试条件包括的标准元素;测试通过结果获取子单元,用于在单元代码对应的界面元素包括标准元素的情况下,确定单元代码对应的单元测试结果为测试通过;测试不通过结果获取子单元,用于在单元代码对应的界面元素不包括标准元素的情况下,确定单元代码对应的单元测试结果为测试不通过,并确定与界面元素不同的标准元素,添加到测试不通过的单元测试结果中。
进一步的,标准元素包括下述至少一项:文本、指定标识信息的控件和指定路径的控件。
进一步的,界面元素检测模块502,包括:单元代码执行单元,用于执行单元代码;模拟用户操作生成单元,用于生成对应的模拟用户操作的指令,并作用于用户界面,确定单元代码对应的响应界面;界面元素查询单元,用于获取响应界面中界面元素。
进一步的,接收测试代码模块501,包括:网页驱动服务模块安装单元,用于通过与控制端之间的连接,接收控制端发送的网页驱动服务模块并安装;网页驱动服务模块,用于通过网页驱动服务模块接收控制端中网页驱动代理模块发送的测试代码,网页驱动服务模块运行于IOS操作系统中。
上述界面测试装置可执行本公开任意实施例所提供的界面测试方法,具备执行界面测试方法相应的功能模块和有益效果。
本公开的技术方案中,所涉及的用户个人信息或车辆信息的获取,存储和应用等,均符合相关法律法规的规定,且不违背公序良俗。
根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
图6示出了可以用来实施本公开的实施例的示例电子设备600的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
如图6所示,设备600包括计算单元601,其可以根据存储在只读存储器(ROM)602中的计算机程序或者从存储单元608加载到随机访问存储器(RAM)603中的计算机程序,来执行各种适当的动作和处理。在RAM 603中,还可存储设备600操作所需的各种程序和数据。计算单元601、ROM 602以及RAM 603通过总线604彼此相连。输入/输出(I/O)接口605也连接至总线604。
设备600中的多个部件连接至I/O接口605,包括:输入单元606,例如键盘、鼠标等;输出单元607,例如各种类型的显示器、扬声器等;存储单元608,例如磁盘、光盘等;以及通信单元609,例如网卡、调制解调器、无线通信收发机等。通信单元609允许设备600通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
计算单元601可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元601的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元601执行上文所描述的各个方法和处理,例如界面测试方法。例如,在一些实施例中,界面测试方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元608。在一些实施例中,计算机程序的部分或者全部可以经由ROM 602和/或通信单元609而被载入和/或安装到设备600上。当计算机程序加载到RAM 603并由计算单元601执行时,可以执行上文描述的界面测试方法的一个或多个步骤。备选地,在其他实施例中,计算单元601可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行界面测试方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,也可以为分布式系统的服务器,或者是结合了区块链的服务器。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开提供的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。
Claims (15)
1.一种界面测试方法,包括:
接收测试代码,所述测试代码包括单元代码,所述单元代码对应模拟用户操作;
执行所述单元代码,并检测所述单元代码对应的响应界面中的界面元素;
根据所述界面元素,确定功能测试结果。
2.根据权利要求1所述的方法,其中,所述根据所述界面元素,确定功能测试结果,包括:
根据所述单元代码对应的测试条件和对应的界面元素,确定所述单元代码对应的单元测试结果;
根据所述测试代码包括的单元代码对应的单元测试结果,确定功能测试结果。
3.根据权利要求2所述的方法,其中,所述根据所述单元代码对应的测试条件和对应的界面元素,确定所述单元代码对应的单元测试结果,包括:
获取所述单元代码对应的测试条件包括的标准元素;
在所述单元代码对应的界面元素包括所述标准元素的情况下,确定所述单元代码对应的单元测试结果为测试通过;
在所述单元代码对应的界面元素不包括所述标准元素的情况下,确定所述单元代码对应的单元测试结果为测试不通过,并确定与所述界面元素不同的标准元素,添加到所述测试不通过的单元测试结果中。
4.根据权利要求3所述的方法,其中,所述标准元素包括下述至少一项:文本、指定标识信息的控件和指定路径的控件。
5.根据权利要求1所述的方法,其中,所述执行所述单元代码,并检测所述单元代码对应的响应界面上的界面元素,包括:
执行所述单元代码;
生成对应的模拟用户操作的指令,并作用于用户界面,确定所述单元代码对应的响应界面;
获取所述响应界面中界面元素。
6.根据权利要求1所述的方法,其中,所述接收测试代码,包括:
通过与控制端之间的连接,接收所述控制端发送的网页驱动服务模块并安装;
通过所述网页驱动服务模块接收所述控制端中网页驱动代理模块发送的测试代码,所述网页驱动服务模块运行于IOS操作系统中。
7.一种界面测试装置,包括:
接收测试代码模块,用于接收测试代码,所述测试代码包括单元代码,所述单元代码对应模拟用户操作;
界面元素检测模块,用于执行所述单元代码,并检测所述单元代码对应的响应界面中的界面元素;
测试结果获取模块,用于根据所述界面元素,确定功能测试结果。
8.根据权利要求7所述的装置,其中,所述测试结果获取模块,包括:
单元测试结果获取单元,用于根据所述单元代码对应的测试条件和对应的界面元素,确定所述单元代码对应的单元测试结果;
功能测试结果单元,用于根据所述测试代码包括的单元代码对应的单元测试结果,确定功能测试结果。
9.根据权利要求8所述的装置,其中,所述功能测试结果单元,包括:
标准元素获取子单元,用于获取所述单元代码对应的测试条件包括的标准元素;
测试通过结果获取子单元,用于在所述单元代码对应的界面元素包括所述标准元素的情况下,确定所述单元代码对应的单元测试结果为测试通过;
测试不通过结果获取子单元,用于在所述单元代码对应的界面元素不包括所述标准元素的情况下,确定所述单元代码对应的单元测试结果为测试不通过,并确定与所述界面元素不同的标准元素,添加到所述测试不通过的单元测试结果中。
10.根据权利要求9所述的装置,其中,所述标准元素包括下述至少一项:文本、指定标识信息的控件和指定路径的控件。
11.根据权利要求7所述的装置,其中,所述界面元素检测模块,包括:
单元代码执行单元,用于执行所述单元代码;
模拟用户操作生成单元,用于生成对应的模拟用户操作的指令,并作用于用户界面,确定所述单元代码对应的响应界面;
界面元素查询单元,用于获取所述响应界面中界面元素。
12.根据权利要求7所述的装置,其中,所述接收测试代码模块,包括:
网页驱动服务模块安装单元,用于通过与控制端之间的连接,接收所述控制端发送的网页驱动服务模块并安装;
所述网页驱动服务模块,用于通过所述网页驱动服务模块接收所述控制端中网页驱动代理模块发送的测试代码,所述网页驱动服务模块运行于IOS操作系统中。
13.一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-6中任一项所述的界面测试方法。
14.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据权利要求1-6中任一项所述的界面测试方法。
15.一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现根据权利要求1-6中任一项所述的界面测试方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110961074.1A CN113535589A (zh) | 2021-08-20 | 2021-08-20 | 界面测试方法、装置、电子设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110961074.1A CN113535589A (zh) | 2021-08-20 | 2021-08-20 | 界面测试方法、装置、电子设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113535589A true CN113535589A (zh) | 2021-10-22 |
Family
ID=78122688
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110961074.1A Pending CN113535589A (zh) | 2021-08-20 | 2021-08-20 | 界面测试方法、装置、电子设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113535589A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118069538A (zh) * | 2024-04-18 | 2024-05-24 | 深圳市爱都科技有限公司 | 用户界面的测试方法、装置、电子设备及介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150324275A1 (en) * | 2013-01-29 | 2015-11-12 | Jinfeng Luan | Generating test code to test executable code |
CN108959068A (zh) * | 2018-06-04 | 2018-12-07 | 广州视源电子科技股份有限公司 | 软件界面测试方法、设备及存储介质 |
CN110413529A (zh) * | 2019-07-31 | 2019-11-05 | 中国工商银行股份有限公司 | 应用于电子设备的测试方法、装置、计算设备以及介质 |
-
2021
- 2021-08-20 CN CN202110961074.1A patent/CN113535589A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150324275A1 (en) * | 2013-01-29 | 2015-11-12 | Jinfeng Luan | Generating test code to test executable code |
CN108959068A (zh) * | 2018-06-04 | 2018-12-07 | 广州视源电子科技股份有限公司 | 软件界面测试方法、设备及存储介质 |
CN110413529A (zh) * | 2019-07-31 | 2019-11-05 | 中国工商银行股份有限公司 | 应用于电子设备的测试方法、装置、计算设备以及介质 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118069538A (zh) * | 2024-04-18 | 2024-05-24 | 深圳市爱都科技有限公司 | 用户界面的测试方法、装置、电子设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113704063B (zh) | 一种云手机的性能监控方法、装置、设备及存储介质 | |
US10768947B2 (en) | Method for interface refresh synchronization,terminal device, and non-transitory computer-readable storage medium | |
CN114157701A (zh) | 一种任务测试方法、装置、设备以及存储介质 | |
CN113655975B (zh) | 图像显示方法、装置、电子设备和介质 | |
CN114389969A (zh) | 客户端的测试方法、装置、电子设备和存储介质 | |
CN112783731A (zh) | 异常设备检测方法、装置、设备和存储介质 | |
CN113821433A (zh) | 云手机应用程序的测试方法、装置、设备、介质及产品 | |
CN114417780B (zh) | 状态同步方法、装置、电子设备及存储介质 | |
CN113535589A (zh) | 界面测试方法、装置、电子设备和存储介质 | |
CN113205189A (zh) | 训练预测模型的方法、预测方法及装置 | |
CN113704058A (zh) | 一种业务模型的监控方法、装置及电子设备 | |
CN112966201A (zh) | 对象处理方法、装置、电子设备以及存储介质 | |
CN116107680A (zh) | 一种移动终端的操作引导方法和装置、电子设备 | |
CN113448668B (zh) | 一种跳过弹窗的方法、装置及电子设备 | |
CN114419403A (zh) | 用于检测模型的方法和装置 | |
CN114398017A (zh) | 时延检测方法、装置和电子设备 | |
CN114091909A (zh) | 一种协同开发的方法、系统、装置及电子设备 | |
CN113760431A (zh) | 应用程序的控制方法、装置、电子设备及可读存储介质 | |
CN114138358A (zh) | 应用程序的启动优化方法、装置、设备和存储介质 | |
CN113535020A (zh) | 用于生成应用图标的方法、装置、设备、介质和产品 | |
CN112966607A (zh) | 模型训练方法、人脸视频生成方法、装置、设备和介质 | |
CN111913855A (zh) | 确定目标任务计算量的方法和装置 | |
CN114125135A (zh) | 一种视频内容呈现方法、装置、电子设备和存储介质 | |
CN113327602A (zh) | 语音识别的方法、装置、电子设备和可读存储介质 | |
CN115328597A (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 |