CN110515834B - 接口测试方法、装置、移动终端及存储介质 - Google Patents

接口测试方法、装置、移动终端及存储介质 Download PDF

Info

Publication number
CN110515834B
CN110515834B CN201910684469.4A CN201910684469A CN110515834B CN 110515834 B CN110515834 B CN 110515834B CN 201910684469 A CN201910684469 A CN 201910684469A CN 110515834 B CN110515834 B CN 110515834B
Authority
CN
China
Prior art keywords
pictures
tested
interface
interfaces
server
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.)
Active
Application number
CN201910684469.4A
Other languages
English (en)
Other versions
CN110515834A (zh
Inventor
方攀
陈岩
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangdong Oppo Mobile Telecommunications Corp Ltd
Original Assignee
Guangdong Oppo Mobile Telecommunications Corp 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 Guangdong Oppo Mobile Telecommunications Corp Ltd filed Critical Guangdong Oppo Mobile Telecommunications Corp Ltd
Priority to CN201910684469.4A priority Critical patent/CN110515834B/zh
Publication of CN110515834A publication Critical patent/CN110515834A/zh
Application granted granted Critical
Publication of CN110515834B publication Critical patent/CN110515834B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/3664Environments for testing or debugging software
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management

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)
  • Mobile Radio Communication Systems (AREA)

Abstract

本申请公开了一种接口测试方法、装置、移动终端及存储介质,该接口测试方法应用于移动终端,该接口测试方法包括:获取图片集合,所述图片集合包括多组图片,每组图片包括预设数量的不同图片;启动用于调用服务器的多个待测试接口的多个线程,多个线程与多个待测试接口一一对应,所述待测试接口用于对图片进行预设处理,所述服务器的每个待测试接口预先封装为相同的输入标准以及输出标准,所述输出标准包括异常时输出异常数据的标准;利用所述多个线程以及所述图片集合,对所述多个待测试接口进行测试,并获取测试结果,其中,每个线程对应一组图片。本方法可以利用移动终端对服务器的图像处理的接口进行测试。

Description

接口测试方法、装置、移动终端及存储介质
技术领域
本申请涉及互联网技术领域,更具体地,涉及一种接口测试方法、装置、移动终端及存储介质。
背景技术
随着科学技术的发展,计算机通信以及互联网技术的水平不断提升,开发的软件项目工程或软件也越来越多。在软件项目工程或软件中,接口压力性能测试是软件项目工程的测试中一项非常重要的测试环节。传统的接口测试主要利用专业测试工具在服务器进行测试,因此测试方案的便携性不足。
发明内容
鉴于上述问题,本申请提出了一种接口测试方法、装置、移动终端及存储介质,以改善上述问题。
第一方面,本申请实施例提供了一种接口测试方法,应用于移动终端,所述方法包括:获取图片集合,所述图片集合包括多组图片,每组图片包括预设数量的不同图片;启动用于调用服务器的多个待测试接口的多个线程,多个线程与多个待测试接口一一对应,所述待测试接口用于对图片进行预设处理,所述服务器的每个待测试接口预先封装为相同的输入标准以及输出标准,所述输出标准包括异常时输出异常数据的标准;利用所述多个线程以及所述图片集合,对所述多个待测试接口进行测试,并获取测试结果,其中,每个线程对应一组图片。
第二方面,本申请实施例提供了一种接口测试装置,应用于移动终端,所述装置包括:图片集获取模块、线程启动模块以及测试执行模块,其中,所述图片集获取模块用于获取图片集合,所述图片集合包括多组图片,每组图片包括预设数量的不同图片;所述线程启动模块用于启动用于调用服务器的多个待测试接口的多个线程,多个线程与多个待测试接口一一对应,所述待测试接口用于对图片进行预设处理,所述服务器的每个待测试接口预先封装为相同的输入标准以及输出标准,所述输出标准包括异常时输出异常数据的标准;所述测试执行模块用于利用所述多个线程以及所述图片集合,对所述多个待测试接口进行测试,并获取测试结果,其中,每个线程对应一组图片。
第三方面,本申请实施例提供了一种移动终端,包括:一个或多个处理器;存储器;一个或多个应用程序,其中所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序配置用于执行上述第一方面提供的接口测试方法。
第四方面,本申请实施例提供了一种计算机可读取存储介质,所述计算机可读取存储介质中存储有程序代码,所述程序代码可被处理器调用执行上述第一方面提供的接口测试方法。
本申请提供的方案,移动终端通过获取图片集合,图片集合包括多组图片,每组图片包括预设数量的不同图片,启动用于调用服务器的多个待测试接口的多个线程,多个线程与多个待测试接口一一对应,待测试接口用于对图片进行预设处理,服务器的每个待测试接口预先封装为相同的输入标准以及输出标准,输出标准包括异常时输出异常数据的标准,利用多个线程以及图片集合,对多个待测试接口进行测试,并获取测试结果,从而实现了移动终端利用图片集合,对服务器用于进行图像处理的多个接口进行压力测试,提升了对服务器的接口测试方案的便携性。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了根据本申请实施例提供的应用环境的示意图。
图2示出了根据本申请一个实施例的接口测试方法流程图。
图3示出了根据本申请另一个实施例的接口测试方法流程图。
图4示出了根据本申请另一个实施例提供的一种界面示意图。
图5示出了根据本申请另一个实施例提供的另一种界面示意图。
图6示出了根据本申请又一个实施例的接口测试方法流程图。
图7示出了根据本申请一个实施例的接口测试装置的一种框图。
图8示出了根据本申请一个实施例的接口测试装置的另一种框图。
图9示出了根据本申请一个实施例的接口测试装置中测试执行模块的框图。
图10示出了根据本申请一个实施例的接口测试装置中图片集获取模块的框图。
图11示出了根据本申请一个实施例的接口测试装置中线程启动模块的框图
图12是本申请实施例的用于执行根据本申请实施例的接口测试方法的移动终端的框图。
图13是本申请实施例的用于保存或者携带实现根据本申请实施例的接口测试方法的程序代码的存储单元。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。
在服务器的运行中,通常随着单位时间流量的不断增加,接口的压力不断增大,服务器的接口资源不断被消耗,接口容易出现异常的情况,例如网络中断、接口调用超时、服务器崩溃等。因此,在软件项目工程或软件中,接口压力性能测试是软件项目工程的测试中一项非常重要的测试环节。
通过测试软件项目工程对外提供的接口压力收集测试性能数据,可以测试开发的软件项目工程中的各接口的开发是否正确,接口运行是否稳定等接口性能,以及,通过收集的测试性能数据,可以判断服务器端应用软件的性能能否维持原有的标准,验证在大并发的情况下,服务器端应用软件是否可以正常处理业务逻辑,从而可以优化服务器端程序,找到服务器端的性能瓶颈,进而改进提升其性能指标。
发明人经过长时间的研究发现,传统的接口测试方案主要通过压力测试工具(例如Loadrunner工具、JMeter测试环境等),这些测试方案主要在服务器端进行测试。目前用于服务器接口压力测试的移动端工具很少,测试便携性问题突出,而且服务器端的专业测试工具(如Loadrunner等工具)操作复杂,需要录制脚本等操作。
针对上述问题,发明人提出了本申请实施例提供的接口测试方法、装置、移动终端以及存储介质,移动终端通过启用线程模拟用户,并利用大量图片对服务器的用于处理图片的接口进行测试,并获取测试结果,从而实现利用移动终端对服务器的接口进行测试,提升了服务器接口测试的便携性。
下面对本申请实施例提供的接口测试方法的应用环境进行介绍。
请参阅图1,图1示出了为本申请实施例应用场景的一种网络结构图,移动终端100与服务器200通信连接,移动终端100可以调用服务器200的用于处理图片的接口,向接口发送图片,以请求对图片进行处理,并且可以获取接口返回的数据,移动终端100可以根据返回的数据分析出接口的异常情况。
其中,移动终端100可以是手机、平板电脑等设备;服务器200可以是一个物理或逻辑服务器等。在本申请实施例中,移动终端100、服务器200的设备种类,以及移动终端100与服务器200之间通信网络的类型、协议等均不做限定。
下面对本申请实施例的接口测试方法进行详细介绍。
请参阅图2,图2示出了本申请一个实施例提供的接口测试方法的流程示意图。所述接口测试方法用于移动终端通过启用线程模拟用户,并利用大量图片对服务器的用于处理图片的接口进行测试,并获取测试结果,从而实现利用移动终端对服务器的接口进行测试,从而服务器接口测试的便携性。在具体的实施例中,所述接口测试方法应用于如图7所示的接口测试装置400以及配置有所述接口测试装置400的移动终端100(图12)。下面将以移动终端为例,说明本实施例的具体流程,当然,可以理解的,本实施例所应用的移动终端可以为智能手机、平板电脑、穿戴式电子设备等,在此不做限定。下面将针对图2所示的流程进行详细的阐述,所述接口测试方法具体可以包括以下步骤:
步骤S110:获取图片集合,所述图片集合包括多组图片,每组图片包括预设数量的不同图片。
在本申请实施例中,需进行接口压力测试的服务器可以是用于进行图片处理的服务器,并且服务器具有可以进行图片处理的接口。该图片处理可以是对图片进行预设处理,预设处理可以包括图像识别、对图像的特征进行提取、对图像进行指定转换、对图像进行指定更改等,具体的预设处理在可以不作为限定。
在一些实施方式中,移动终端可以获取图片集合,以便利用图片集合对服务器的用于进行图像处理的接口进行压力测试。其中,该图片集合中可以包括多组图片,每组图片中有预设数量的不同图片。每组图片可以用于对服务器的一个用于进行预设处理的接口进行压力测试。另外,为保证压力测试的效果,通常对于服务器的接口而言,其能在单位时间内处理的图片较多,因此想要对接口进行压力测试,则预设数量可以大于一定的数量,具体的预设数量在本申请实施例中可以不作为限定。另外,多组图片可以为多组不同的图片,也可以为同一组相同的图片,在此不作限定。
在一些实施方式中,移动终端可以通过多种方式获取图片集合。作为一种实施方式,移动终端可以从本地读取多组图片,即多组图片存储于移动终端本地,移动终端在需要对服务器的接口进行压力测试时,即可从本地读取图片集合。作为另一种实施方式,移动终端可以从网络图片库获取图片集合,即移动终端可以通过网络发送请求至网络图片库对应的服务器,从服务器获取图片集合。作为又一种实施方式,移动终端可以通过摄像头采集多张不同的图片,并根据多张不同的图片生成图片集合。当然,具体获取图片集合的方式在本申请实施例中可以不作为限定。
步骤S120:启动用于调用服务器的多个待测试接口的多个线程,多个线程与多个待测试接口一一对应,所述待测试接口用于对图片进行预设处理,所述服务器的每个待测试接口预先封装为相同的输入标准以及输出标准,所述输出标准包括异常时输出异常数据的标准。
在本申请实施例中,移动终端在对服务器的用于对图片进行预设处理的接口进行压力测试时,可以启动用于调用待测试接口的多个线程,待测试接口即为服务器的用于对图片进行预设处理的接口进行压力测试的接口。其中,线程是操作系统能够进行运算调度的最小单位,线程可以被包含在进程中,可以是进程中的实际运作单位;一条线程指进程中一个单一顺序的控制流,一个进程中可以并发多个线程,并且每个线程可以并行执行不同的任务。因此,移动终端启动的多个线程中每个线程可以分别调用不同的待测试接口,以对多个不同的待测试接口进行测试。
在一些实施方式中,移动终端启动线程的方式可以为多种。例如,移动终端可以通过继承Thread类创建线程类,来实现线程的创建和启动,具体的,可以定义一个继承Thread类的子类,并重写该类的run()方法,然后创建Thread子类的实例,实现创建线程对象,最后调用该线程对象的start()方法启动线程。又例如,移动终端可以通过实现Runnable接口创建线程类,具体的,可以定义Runnable接口的实现类,并重写该接口的run()方法,然后创建Runnable实现类的实例,并以该实例为Thread的target对象(即真正的线程对象),最后调用该线程对象的start()方法启动线程。当然,具体实现启动线程的方式在本申请实施例中可以不作为限定。
在一些实施方式中,服务器中的用于对图片进行预设处理的所有接口可以被预先封装为相同的输入标准以及输出标准,也就是说,上述待测试接口被预先进行了该封装。另外,这些接口出现异常时输出异常数据的标准也被封装为相同的输出。这样,其他设备则可以通过调用这些接口,并通过网络输入相同标准的图片至这些接口,并且这些接口会返回相同标准的数据至这些其他设备,其他设备可以根据接口返回的数据,获得对图片进行预设处理的结果、接口异常情况时的数据等。作为一种方式,服务器的用于对图片进行预设处理的接口,可以通过添加类库项目(例如SSOLib),对这些接口封装为一个类,并且对该类下的输入数据类型以及输出数据类型等进行规范,从而实现将这些接口封装为相同的输入标准和输出标准。
需要说明的是,步骤S110与步骤S120的执行先后顺序在本申请实施例中可以不作为限定。
步骤S130:利用所述多个线程以及所述图片集合,对所述多个待测试接口进行测试,并获取测试结果,其中,每个线程对应一组图片。
在本申请实施例中,移动终端在启动多个线程之后,则可以利用启动的多个线程以及获取的图片集合,调用多个待测试接口对多张图片进行预设处理,而实现测试。其中,移动终端的每个线程可以模拟一个用户,并对应调用一个不同待测试接口,对图片集合中一组图片进行预设处理。移动终端可以接收这些待测试接口返回的测试结果(即调用待测试接口对图片进行处理后的反馈数据),移动终端根据返回的测试结果,可分析出图片是否处理成功、接口是否异常等。接口异常可以包括网络中断、接口调用超时、服务器崩溃等,接口异常的具体情况可以不作为限定。
在本申请实施例中,在获得测试结果后,则可以判断服务器端应用软件的性能能否维持原有的标准,验证在大并发的情况下,服务器端应用软件是否可以正常处理业务逻辑,从而工作人员可以优化服务器端程序,找到服务器端的性能瓶颈,进而改进提升其性能指标。
本申请实施例提供的接口测试方法,移动终端通过获取图片集合,图片集合包括多组图片,每组图片包括预设数量的不同图片,启动用于调用服务器的多个待测试接口的多个线程,多个线程与多个待测试接口一一对应,待测试接口用于对图片进行预设处理,服务器的每个待测试接口预先封装为相同的输入标准以及输出标准,输出标准包括异常时输出异常数据的标准,利用多个线程以及图片集合,对多个待测试接口进行测试,并获取测试结果,从而实现了移动终端利用图片集合,对服务器用于进行图像处理的多个接口进行压力测试,提升了对服务器的接口测试方案的便携性。
请参阅图3,图3示出了本申请另一个实施例提供的接口测试方法的流程示意图。该接口测试方法应用于上述移动终端,下面将针对图3所示的流程进行详细的阐述,所述接口测试方法具体可以包括以下步骤:
步骤S210:获取多张不同的图片。
在本申请实施例中,移动终端在获取包括多组图片的图片集合时,可以获取多张不同的图片后,再根据这多张不同的图片,来生成包括多组图片的图片集合,从而无需事先准备大量的图片,减少测试接口的准备时间。
作为一种实施方式,移动终端可以包括摄像头,摄像头用于采集图像。移动终端可以通过获取摄像头实时采集的预览流图像,来获得多张不同的图片。具体的,移动终端可以开启摄像头,并获取实时采集的多张不同预览流图像。获取的预览流图像的数量可以与后续需要生成的多组图片的组数相同。
作为又一种实施方式,移动终端可以本地存储有多张不同的图片,因此,移动终端可以读取预先存储的多张不同的图片。其中,读取的图片的数量与后续需要生成的多组图片的组数相同。
当然,具体获取多张不同的图片的方式可以不作为限定。
步骤S220:将所述多张不同的图片中每张图片转换成预设数量的不同图片,获得所述每张图片对应的预设数量的不同图片。
本申请实施例中,移动终端在获取到多张不同的图片之后,则可以针对每张图片进行转换,以生成每张图片对应的预设数量的不同图片,而每张图片所对应的预设数量的不同图片,则可以作为用于对一个待测试接口进行压力测试的一组图片。
在一些实施方式中,针对一张图片进行转换,获得的预设数量的不同图片之间的不同程度可以满足设定条件,以便后续可以作为用于对待测试接口进行压力测试的图片。其中,设定条件可以包括:图片之间不同的区域占图片总区域的占比大于指定比例、图片之间不同的区域的像素的差异值大于设定值等。其中,指定比例以及设定值的具体数值可以不作为限定。
在一些实施方式中,所述将所述多张不同的图片中每张图片转换成预设数量的不同图片,获得所述每张图片对应的预设数量的不同图片,包括:
对所述多张不同的图片中每张图片的像素内容进行所述预设次数的不同更改,获得所述每张图片对应的预设数量的不同图片,所述预设次数的值与所述预设数量的值相同。
可以理解的,针对上述多张不同的图片中每张图片,对每张图片的像素内容进行预设次数的不同更改,并且预设次数与预设数量相等,从而就可以得到上述多张不同的图片中每张图片所对应的预设数量的不同图片。
在该实施方式下,针对每张图片所做的预设次数的不同更改,可以是每次更改图片的相同位置区域的像素内容,也可以是每次更改图片的不同位置区域的像素内容,也可以是部分次数更改同一位置区域的像素内容,在此不作限定。
步骤S230:将所述每张图片对应的预设数量的不同图片作为一组图片,获得多组图片构成的图片集合。
在本申请实施例中,移动终端在对多张不同的图片中每张图片的像素内容进行预设次数的不同更改,获得每张图片对应的预设数量的不同图片之后,则可以根据这些预设数量的不同图片,生成图片集合。具体的,可以将每张图片对应的预设数量的不同图片作为一组图片,从而得到多组图片构成的图片集合。
在另外一些实施方式中,移动终端获取图片集合的方式也可以为,每组图片中部分图片由实时获取摄像头采集的预览流图像获取,另外一部分图片由固定图片做转换得到。
步骤S240:显示所述服务器的接口列表。
在本申请实施例中,待测试接口可以由用户进行选择。具体的,移动终端可以显示服务器的接口列表,接口列表中可以包括服务器的所有用于对图片进行预设处理的接口,从而便于用户可以从接口列表中选取需要进行测试的待测试接口。
在一些实施方式中,请参阅图4,移动终端100可以运行接口测试的应用程序,并展示应用程序的接口选择界面A1,接口选择界面A1中可以包括接口列表。当然,接口列表的具体显示方式可以不作为限定。
步骤S250:根据检测到的对所述接口列表中多个接口的选取操作,确定所述服务器的多个待测试接口。
在本申请实施例中,移动终端在显示服务器的接口列表后,可以检测用户于接口列表的操作,并在检测到对接口列表中多个接口的选取操作时,响应选取操作,将选取的多个接口确定为需要进行压力测试的多个待测试接口。从而,实现了具体的待测试接口可以由用户选取,待测试接口的数量也可以由用户选取,满足用户的需求。
步骤S260:启动用于调用服务器的多个待测试接口的多个线程,多个线程与多个待测试接口一一对应,所述待测试接口用于对图片进行预设处理,所述服务器的每个待测试接口预先封装为相同的输入标准以及输出标准,所述输出标准包括异常时输出异常数据的标准。
在本申请实施例中,步骤S260可以参阅前述实施例的内容,在此不再赘述。
步骤S270:利用所述多个线程以及所述图片集合,对所述多个待测试接口进行测试,并获取测试结果,其中,每个线程对应一组图片。
在本申请实施例中,步骤S270可以参阅前述实施例的内容,在此不再赘述。
步骤S280:根据所述测试结果,生成测试报告并将所述测试报告进行显示,所述测试报告包括异常接口的数量占所述服务器的接口总数的异常比例、异常接口以及异常类型中的至少一种。
在本申请实施例中,移动终端在利用线程以及图片集合,对多个待测试接口进行测试并获得测试结果之后,移动终端还可以根据测试结果,生成测试报告,以便用户直观的察看测试结果。
在一些实施方式中,移动终端可以根据测试结果,从测试结果中获取出现异常的接口以及异常类型,另外,可以计算异常接口的数量占服务器的接口总数的异常比例,然后根据该比例、异常的接口以及异常类型中的一种或者多种,生成测试报告,并将测试报告进行显示。例如,请参阅图5,移动终端100生成并显示的测试报告可以显示于报告展示界面A2,并且测试报告可以同时包括异常接口的数量占服务器的接口总数的异常比例、异常接口以及异常类型。当然,具体测试报告的内容在本申请实施例中可以不作为限定。
本申请实施例提供的接口测试方法,通过移动终端获取多张不同的图片,然后对每张图片转成预设数量的不同图片,再根据转换的预设数量的图片,生成图片集合,实现移动终端来生成包括多组图片的图片集合,从而无需事先准备大量的图片,减少测试接口的准备时间。移动终端在确定待测试接口时,显示服务器的接口列表,然后根据用户对接口的选取操作,确定待测试接口,然后再启动相应的线程,利用线程以及图片集合对待测试接口进行测试,并得到测试结果,实现了对用户需求的待测试接口的测试。另外,移动终端还可以根据测试结果生成测试报告并将测试报告进行显示,能便于用户直观的察看测试结果,提升了用户体验。
请参阅图6,图6示出了本申请另一个实施例提供的接口测试方法的流程示意图。该接口测试方法应用于上述移动终端,下面将针对图6所示的流程进行详细的阐述,所述接口测试方法具体可以包括以下步骤:
步骤S310:获取图片集合,所述图片集合包括多组图片,每组图片包括预设数量的不同图片。
在本申请实施例中,步骤S310可以参阅前述实施例的内容,在此不再赘述。
步骤S320:获取所述移动终端的处理器的剩余资源参数。
在本申请实施例中,由于移动终端在对服务器的多个接口进行测试时,需要启动多个线程,而多个线程的启动会占用处理器的资源,如果多个线程启动后处理器的负载过高时,则会导致移动终端运行缓慢,甚至系统崩溃。因此,移动终端可以获取移动终端的处理器的剩余资源参数,以确定移动终端是否可以启动多个线程。
在一些实施方式中,移动终端可以检测处理器的使用情况,以获得处理器的剩余资源。例如,移动终端的操作系统为Android系统时,可以通过Android系统中的ProcessStats类,获取系统的使用情况及进程时间。其具体实现原理是读取/proc目录下的文件,系统运行时,内核会去更新/proc目录下的文件,将PID的运行情况写入相应的文件中,根据上述运行情况即可获取到中央处理器的剩余资源。处理器的剩余资源可以为处理器的剩余使用率、剩余使用空间等,在此不作限定。
步骤S330:判断所述剩余资源参数是否大于指定阈值,所述指定阈值与所述多个线程对应。
在本申请实施例中,移动终端在获取到处理器的剩余资源参数后,则可以判断剩余资源参数是否大于指定阈值,以根据判断结果确定是否可以启动多个线程。其中,指定阈值与需要启动的多个线程的数量对应,指定阈值可以大于多个线程所占的处理器资源一定大小,因此,需要启动的线程的数量越多,则指定阈值的数值越大。
在一些实施方式中,指定阈值可以由处理器的属性参数决定,例如,当处理器A的最大工作频率大于处理器B的最大工作频率,则处理器A以及处理器B同时启动相同数量的线程,根据处理器A设置的指定阈值可以小于根据处理器B设置的指定阈值。当然,具体的指定阈值可以不作为限定。
步骤S340:如果大于所述指定阈值,则启动用于调用服务器的多个待测试接口的多个线程。
在本申请实施例中,移动终端在判断处理器的剩余资源参数是否大于指定阈值之后,则可以根据判断结果确定是否启动用于调用服务器的多个待测试接口的多个线程。如果判断结果为处理器的剩余资源参数大于指定阈值,则表示当前处理器的剩余资源能够满足多个线程的运行,并且处理器运行多个线程的情况下,能够保证移动终端能正常运行。因此,当处理器的剩余资源参数大于指定阈值时,则启动用于调用服务器的多个待测试接口的多个线程,并执行步骤S360-S380的步骤。
步骤S360:获取多个用户身份标识,所述多个用户身份标识与所述多个线程一一对应。
在本申请实施例中,移动终端在利用多个线程以及图片集合,对多个待测试接口进行测试时,可以每个线程模拟一个用户,并利用图片集合中的一组图片对一个待测试接口进行测试。因此,移动终端可以获取多个不同的用户身份标识,每个用户身份标识对应一个用户,以便不同的线程可以利用不同的用户身份标识,调用待测试接口进行测试。其中,用户身份标识可以是用户账号等,在此不作限定。获取的多个用户身份标识,可以逐一分配给多个线程,从而使多个用户身份标识与多个线程一一对应,即不同线程对应一个不同的用户身份标识。
在一些实施方式中,移动终端可以从测试应用程序对应的服务器获取用户身份标识;用户身份标识也可以存储于移动终端本地,移动终端可以直接读取用户身份标识。
步骤S370:所述多个线程中每个线程利用其对应的用户身份标识,调用每个待测试接口对所述图片集合中的一组图片进行所述预设处理,并获取所述待测试接口返回的结果。
在本申请实施例中,每个线程模拟一个用户,并利用图片集合中的一组图片对一个待测试接口进行测试时,每个线程则可以其对应的用户身份标识,调用与该线程对应的一个待测试接口对图片集合中的一组图片进行预设处理,并获取待测试接口返回的结果,从而可以得到多个待测试接口返回的结果。待测试接口返回的结果可以包括图片处理结果、接口异常、异常类型等,在此不做限定。
在一些实施方式中,每个线程模拟用户调用待测试接口对图片进行预设处理时,可以在单位时间内调用待测试接口处理每组图片中预设数量的图片,以实现对待测试接口进行压力测试的效果,预设数量的具体数值可以不作为限定。在一个线程调用待测试结果处理完单位时间内的图片后,则可以继续从该线程对应的一组图片中取出图片进行测试,从而保证同一时间内容接口测试数量稳定。
步骤S380:根据所述待测试接口返回的结果,获得测试结果。
在本申请实施例中,移动终端在测试完成后,则可以对所有待测试接口返回的结果进行分析,从而得到可分析出图片是否处理成功、接口是否异常等。接口异常可以包括网络中断、接口调用超时、服务器崩溃等,接口异常的具体类型可以不作为限定。
步骤S350:如果小于或者等于所述指定阈值,则不执行启动用于调用服务器的多个待测试接口的多个线程的步骤。
在本申请实施例中,如果判断结果为处理器的剩余资源参数小于或者指定阈值,则表示当前处理器的剩余资源不能够满足多个线程的运行,或者处理器运行多个线程的情况下,不能够保证移动终端能正常运行。因此,当处理器的剩余资源参数小于或者等于指定阈值时,则不执行启动用于调用服务器的多个待测试接口的多个线程。
在一些实施方式中,当处理器的剩余资源参数小于或者等于指定阈值时,移动终端还可以生成提示内容并将提示内容进行显示,提示内容可以用于提示处理器的剩余资源不足,以便用户清理处理器的空间,使处理器的剩余资源参数满足可以启动用于调用服务器的多个待测试接口的多个线程。并且,在用户清理处理器的空间后,移动终端检测到处理器的剩余资源参数大于指定阈值时,则可以继续执行启动用于调用服务器的多个待测试接口的多个线程。
本申请实施例提供的接口测试方法,移动终端通过获取包括多组图片的图片集合,在启动用于调用服务器的多个待测试接口的多个线程之前,确定处理器的剩余资源参数是否大于指定阈值,在处理器的剩余资源参数大于指定阈值时,才启动多个线程,以保证移动终端的顺畅运行。移动终端在利用启动的多个线程以及图片集合,对多个待测试接口进行测试时,每个线程通过一个不同的用户身份标识,调用一个待测试接口对图片进行预设处理,即每个线程模拟一个用户调用待测试接口对图片进行预设处理,从而实现了利用移动终端对待测试接口的压力测试,提升了对服务器的接口测试方案的便携性。
在另外一些实施例中,对服务器的多个待测试接口进行压力测试的方案,还可以是多个移动终端同时按照前述实施例中的方式进行同时测试,从而可以增大极限并发。
请参阅图7,其示出了本申请实施例提供的一种接口测试装置400的结构框图。该接口测试装置400应用上述的移动终端,接口测试装置400包括:图片集获取模块410、线程启动模块420以及测试执行模块430。其中,所述图片集获取模块410用于获取图片集合,所述图片集合包括多组图片,每组图片包括预设数量的不同图片;所述线程启动模块420用于启动用于调用服务器的多个待测试接口的多个线程,多个线程与多个待测试接口一一对应,所述待测试接口用于对图片进行预设处理,所述服务器的每个待测试接口预先封装为相同的输入标准以及输出标准,所述输出标准包括异常时输出异常数据的标准;所述测试执行模块430用于利用所述多个线程以及所述图片集合,对所述多个待测试接口进行测试,并获取测试结果,其中,每个线程对应一组图片。
在一些实施方式中,请参阅图8,该接口测试装置400还可以包括列表显示模块440以及接口选取模块450。列表显示模块440用于在所述启动用于调用服务器的多个待测试接口的多个线程之前,显示所述服务器的接口列表;接口选取模块450用于根据检测到的对所述接口列表中多个接口的选取操作,确定所述服务器的多个待测试接口。
在一些实施方式中,请参阅图9,测试执行模块430可以包括身份获取单元431、接口调用单元432以及结果获取单元433。其中,身份获取单元431用于获取多个用户身份标识,所述多个用户身份标识与所述多个线程一一对应;接口调用单元432用于所述多个线程中每个线程利用其对应的用户身份标识,调用每个待测试接口对所述图片集合中的一组图片进行所述预设处理,并获取所述待测试接口返回的结果;结果获取单元433用于根据所述待测试接口返回的结果,获得测试结果。
在一些实施方式中,请参阅图10,图片集获取模块410可以包括图片获取单元411、图片转换单元412以及图片集生成单元413。图片获取单元411用于获取多张不同的图片;图片转换单元412用于将所述多张不同的图片中每张图片转换成预设数量的不同图片,获得所述每张图片对应的预设数量的不同图片;图片集生成单元413用于将所述每张图片对应的预设数量的不同图片作为一组图片,获得多组图片构成的图片集合。
在该实施方式下,图片转换单元412可以具体用于:对所述多张不同的图片中每张图片的像素内容进行所述预设次数的不同更改,获得所述每张图片对应的预设数量的不同图片,所述预设次数的值与所述预设数量的值相同。
在该实施方式下,上述移动终端可以包括摄像头。图片获取单元411可以具体用于:获取所述摄像头实时采集的多张不同预览流图片;或者读取预先存储的多张不同的图片。
在一些实施方式中,请参阅图11,线程启动模块420可以包括资源获取单元421、资源判断单元422以及启动执行单元423。其中,资源获取单元421用于获取所述移动终端的处理器的剩余资源参数;资源判断单元422用于判断所述剩余资源参数是否大于指定阈值,所述指定阈值与所述多个线程对应;启动执行单元423用于如果大于所述指定阈值,则启动用于调用服务器的多个待测试接口的多个线程。
在一些实施方式中,请再次参阅图8,该接口测试装置400还可以包括报告生成模块460。报告生成模块460用于根据所述测试结果,生成测试报告并将所述测试报告进行显示,所述测试报告包括异常接口的数量占所述服务器的接口总数的异常比例、异常接口以及异常类型中的至少一种。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述装置和模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,模块相互之间的耦合可以是电性,机械或其它形式的耦合。
另外,在本申请各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
综上所述,本申请提供的方案,移动终端通过获取图片集合,图片集合包括多组图片,每组图片包括预设数量的不同图片,启动用于调用服务器的多个待测试接口的多个线程,多个线程与多个待测试接口一一对应,待测试接口用于对图片进行预设处理,服务器的每个待测试接口预先封装为相同的输入标准以及输出标准,输出标准包括异常时输出异常数据的标准,利用多个线程以及图片集合,对多个待测试接口进行测试,并获取测试结果,从而实现了移动终端利用图片集合,对服务器用于进行图像处理的多个接口进行压力测试,提升了对服务器的接口测试方案的便携性。
请参考图12,其示出了本申请实施例提供的一种移动终端的结构框图。该移动终端100可以是智能手机、平板电脑、电子书等能够运行应用程序的移动终端。本申请中的移动终端100可以包括一个或多个如下部件:处理器110、存储器120、以及一个或多个应用程序,其中一个或多个应用程序可以被存储在存储器120中并被配置为由一个或多个处理器110执行,一个或多个程序配置用于执行如前述方法实施例所描述的方法。
处理器110可以包括一个或者多个处理核。处理器110利用各种接口和线路连接整个移动终端100内的各个部分,通过运行或执行存储在存储器120内的指令、程序、代码集或指令集,以及调用存储在存储器120内的数据,执行移动终端100的各种功能和处理数据。可选地,处理器110可以采用数字信号处理(Digital Signal Processing,DSP)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、可编程逻辑阵列(Programmable LogicArray,PLA)中的至少一种硬件形式来实现。处理器110可集成中央处理器(CentralProcessing Unit,CPU)、图像处理器(Graphics Processing Unit,GPU)和调制解调器等中的一种或几种的组合。其中,CPU主要处理操作系统、用户界面和应用程序等;GPU用于负责显示内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器110中,单独通过一块通信芯片进行实现。
存储器120可以包括随机存储器(Random Access Memory,RAM),也可以包括只读存储器(Read-Only Memory)。存储器120可用于存储指令、程序、代码、代码集或指令集。存储器120可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于实现至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等)、用于实现下述各个方法实施例的指令等。存储数据区还可以存储终端100在使用中所创建的数据(比如电话本、音视频数据、聊天记录数据)等。
请参考图13,其示出了本申请实施例提供的一种计算机可读存储介质的结构框图。该计算机可读介质800中存储有程序代码,所述程序代码可被处理器调用执行上述方法实施例中所描述的方法。
计算机可读存储介质800可以是诸如闪存、EEPROM(电可擦除可编程只读存储器)、EPROM、硬盘或者ROM之类的电子存储器。可选地,计算机可读存储介质800包括非易失性计算机可读介质(non-transitory computer-readable storage medium)。计算机可读存储介质800具有执行上述方法中的任何方法步骤的程序代码810的存储空间。这些程序代码可以从一个或者多个计算机程序产品中读出或者写入到这一个或者多个计算机程序产品中。程序代码810可以例如以适当形式进行压缩。
最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不驱使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

Claims (10)

1.一种接口测试方法,其特征在于,应用于移动终端,所述方法包括:
获取图片集合,所述图片集合包括多组图片,每组图片包括预设数量的不同图片;
启动用于调用服务器的多个待测试接口的多个线程,多个线程与多个待测试接口一一对应,所述待测试接口用于对图片进行预设处理,所述服务器的每个待测试接口预先封装为相同的输入标准以及输出标准,所述输出标准包括异常时输出异常数据的标准,所述异常至少包括网络中断、接口调用超时和服务器崩溃;
获取多个用户身份标识,所述多个用户身份标识与所述多个线程一一对应,每个所述用户身份标识对应一个用户;
所述多个线程中每个线程利用其对应的用户身份标识,调用每个待测试接口对所述图片集合中的一组图片进行所述预设处理,并获取所述待测试接口返回的结果;
根据所述待测试接口返回的结果,获得测试结果,其中,每个线程对应一组图片。
2.根据权利要求1所述的方法,其特征在于,在所述启动用于调用服务器的多个待测试接口的多个线程之前,所述方法还包括:
显示所述服务器的接口列表;
根据检测到的对所述接口列表中多个接口的选取操作,确定所述服务器的多个待测试接口。
3.根据权利要求1所述的方法,其特征在于,所述获取图片集合,包括:
获取多张不同的图片;
将所述多张不同的图片中每张图片转换成预设数量的不同图片,获得所述每张图片对应的预设数量的不同图片;
将所述每张图片对应的预设数量的不同图片作为一组图片,获得多组图片构成的图片集合。
4.根据权利要求3所述的方法,其特征在于,所述将所述多张不同的图片中每张图片转换成预设数量的不同图片,获得所述每张图片对应的预设数量的不同图片,包括:
对所述多张不同的图片中每张图片的像素内容进行预设次数的不同更改,获得所述每张图片对应的预设数量的不同图片,所述预设次数的值与所述预设数量的值相同。
5.根据权利要求3所述的方法,其特征在于,所述移动终端包括摄像头,所述获取多张不同的图片,包括:
获取所述摄像头实时采集的多张不同预览流图片;或者
读取预先存储的多张不同的图片。
6.根据权利要求1所述的方法,其特征在于,所述启动用于调用服务器的多个待测试接口的多个线程,包括:
获取所述移动终端的处理器的剩余资源参数;
判断所述剩余资源参数是否大于指定阈值,所述指定阈值与所述多个线程对应;
如果大于所述指定阈值,则启动用于调用服务器的多个待测试接口的多个线程。
7.根据权利要求1-6任一项所述的方法,其特征在于,所述方法还包括:
根据所述测试结果,生成测试报告并将所述测试报告进行显示,所述测试报告包括异常接口的数量占所述服务器的接口总数的异常比例、异常接口以及异常类型中的至少一种。
8.一种接口测试装置,其特征在于,应用于移动终端,所述装置包括:图片集获取模块、线程启动模块以及测试执行模块,其中,
所述图片集获取模块用于获取图片集合,所述图片集合包括多组图片,每组图片包括预设数量的不同图片;
所述线程启动模块用于启动用于调用服务器的多个待测试接口的多个线程,多个线程与多个待测试接口一一对应,所述待测试接口用于对图片进行预设处理,所述服务器的每个待测试接口预先封装为相同的输入标准以及输出标准,所述输出标准包括异常时输出异常数据的标准,所述异常至少包括网络中断、接口调用超时和服务器崩溃;
所述测试执行模块用于获取多个用户身份标识,所述多个用户身份标识与所述多个线程一一对应,每个所述用户身份标识对应一个用户;所述多个线程中每个线程利用其对应的用户身份标识,调用每个待测试接口对所述图片集合中的一组图片进行所述预设处理,并获取所述待测试接口返回的结果;根据所述待测试接口返回的结果,获得测试结果,其中,每个线程对应一组图片。
9.一种移动终端,其特征在于,包括:
一个或多个处理器;
存储器;
一个或多个应用程序,其中所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序配置用于执行如权利要求1-7任一项所述的方法。
10.一种计算机可读取存储介质,其特征在于,所述计算机可读取存储介质中存储有程序代码,所述程序代码可被处理器调用执行如权利要求1-7任一项所述的方法。
CN201910684469.4A 2019-07-26 2019-07-26 接口测试方法、装置、移动终端及存储介质 Active CN110515834B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910684469.4A CN110515834B (zh) 2019-07-26 2019-07-26 接口测试方法、装置、移动终端及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910684469.4A CN110515834B (zh) 2019-07-26 2019-07-26 接口测试方法、装置、移动终端及存储介质

Publications (2)

Publication Number Publication Date
CN110515834A CN110515834A (zh) 2019-11-29
CN110515834B true CN110515834B (zh) 2023-11-10

Family

ID=68624197

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910684469.4A Active CN110515834B (zh) 2019-07-26 2019-07-26 接口测试方法、装置、移动终端及存储介质

Country Status (1)

Country Link
CN (1) CN110515834B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114416604A (zh) * 2022-03-31 2022-04-29 深圳市爱图仕影像器材有限公司 串口调试方法、装置、电子设备及存储介质

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102141938A (zh) * 2010-12-03 2011-08-03 华为技术有限公司 多线程系统中软件负荷的调整方法及装置
CN103313289A (zh) * 2012-03-09 2013-09-18 腾讯科技(深圳)有限公司 Wap系统自动化测试系统和方法
CN105279061A (zh) * 2014-06-26 2016-01-27 西安Tcl软件开发有限公司 服务器接口并发测试的方法和装置
WO2016095554A1 (zh) * 2014-12-19 2016-06-23 广州博冠信息科技有限公司 应用程序的测试方法、设备及系统
CN107197475A (zh) * 2016-03-14 2017-09-22 重庆邮电大学 一种基于多线程的传感节点标识符解析测试方法及系统
WO2018014580A1 (zh) * 2016-07-20 2018-01-25 平安科技(深圳)有限公司 数据接口测试方法、装置、服务器和存储介质
CN108332423A (zh) * 2017-12-29 2018-07-27 深圳和而泰数据资源与云技术有限公司 信息控制方法、服务器及计算机可读介质
CN108512710A (zh) * 2017-02-24 2018-09-07 腾讯科技(深圳)有限公司 基于测试工具的测试方法和测试工具
CN109388532A (zh) * 2018-09-26 2019-02-26 Oppo广东移动通信有限公司 测试方法、装置、电子设备及计算机可读取存储介质
CN109656722A (zh) * 2019-01-04 2019-04-19 Oppo广东移动通信有限公司 内存优化方法、装置、移动终端及存储介质

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100242024A1 (en) * 2009-03-17 2010-09-23 Gonzales Ii Jesus Orlando User Interface System and Method for Controlling Conversion of a Source Job Control Language File into a Test Job Control Language File
WO2016018342A1 (en) * 2014-07-31 2016-02-04 Hewlett Packard Development Company, L.P. Remote session information based on process identifier

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102141938A (zh) * 2010-12-03 2011-08-03 华为技术有限公司 多线程系统中软件负荷的调整方法及装置
CN103313289A (zh) * 2012-03-09 2013-09-18 腾讯科技(深圳)有限公司 Wap系统自动化测试系统和方法
CN105279061A (zh) * 2014-06-26 2016-01-27 西安Tcl软件开发有限公司 服务器接口并发测试的方法和装置
WO2016095554A1 (zh) * 2014-12-19 2016-06-23 广州博冠信息科技有限公司 应用程序的测试方法、设备及系统
CN107197475A (zh) * 2016-03-14 2017-09-22 重庆邮电大学 一种基于多线程的传感节点标识符解析测试方法及系统
WO2018014580A1 (zh) * 2016-07-20 2018-01-25 平安科技(深圳)有限公司 数据接口测试方法、装置、服务器和存储介质
CN108512710A (zh) * 2017-02-24 2018-09-07 腾讯科技(深圳)有限公司 基于测试工具的测试方法和测试工具
CN108332423A (zh) * 2017-12-29 2018-07-27 深圳和而泰数据资源与云技术有限公司 信息控制方法、服务器及计算机可读介质
CN109388532A (zh) * 2018-09-26 2019-02-26 Oppo广东移动通信有限公司 测试方法、装置、电子设备及计算机可读取存储介质
CN109656722A (zh) * 2019-01-04 2019-04-19 Oppo广东移动通信有限公司 内存优化方法、装置、移动终端及存储介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Industrial Applicability of Visual GUI Testing for System and Acceptance Test Automation;Emil Borjesson;《2012 IEEE Fifth International Conference on Software Testing, Verification and Validation》;全文 *
V5接口互操作性测试及问题分析;彭红;《广东通信技术》;第第20卷卷(第第12期期);全文 *

Also Published As

Publication number Publication date
CN110515834A (zh) 2019-11-29

Similar Documents

Publication Publication Date Title
US9990209B2 (en) Digital assistance device for facilitating multi-stage setup
CN111045952B (zh) 软件测试方法、流量回放装置、终端设备及可读存储介质
CN107807841B (zh) 服务器模拟方法、装置、设备及可读存储介质
CN111258913A (zh) 算法自动测试方法、装置、计算机系统及可读存储介质
CN110320378B (zh) 质控测试申请方法、装置、设备及计算机可读存储介质
CN110716848A (zh) 数据收集方法、装置、电子设备及存储介质
CN110502414B (zh) 终端设备性能测试方法、装置、终端设备及存储介质
CN111831542B (zh) Api应用调测方法及装置、存储介质
CN112783761A (zh) 一种应用程序的冷启动时长测试方法、装置及系统
CN106919377B (zh) 确定应用程序的展示界面是否是白屏的方法及装置
CN107526623B (zh) 一种数据处理方法及装置
CN110795162B (zh) 生成容器镜像文件的方法和装置
CN112181749A (zh) 硬件测试方法、装置、电子设备和存储介质
CN110515834B (zh) 接口测试方法、装置、移动终端及存储介质
CN111061448A (zh) 日志信息的显示方法、装置、电子设备及存储介质
CN112363919B (zh) 用户界面ai自动化测试方法、装置、设备和存储介质
CN114040189A (zh) 多媒体测试方法、装置、存储介质及电子设备
CN106302011B (zh) 基于多端的测试方法及终端
CN111913743B (zh) 数据处理方法及装置
CN110012003B (zh) 一种云应用抓屏方法和装置
CN107797927B (zh) 应用自动化测试方法、装置、设备及可读存储介质
CN109684191B (zh) 应用包构建方法、装置、设备及可读存储介质
CN111949510B (zh) 测试处理方法、装置、电子设备及可读存储介质
CN109739752B (zh) 内置资源测试方法、装置、电子设备及可读存储介质
CN109150951B (zh) Android系统Activity的启动方法和装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant