CN107247660A - 一种接口的测试方法和测试装置 - Google Patents

一种接口的测试方法和测试装置 Download PDF

Info

Publication number
CN107247660A
CN107247660A CN201710312870.6A CN201710312870A CN107247660A CN 107247660 A CN107247660 A CN 107247660A CN 201710312870 A CN201710312870 A CN 201710312870A CN 107247660 A CN107247660 A CN 107247660A
Authority
CN
China
Prior art keywords
interface
parameter
test
address
page
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
CN201710312870.6A
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 Qihoo Technology Co Ltd
Original Assignee
Beijing Qihoo 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 Qihoo Technology Co Ltd filed Critical Beijing Qihoo Technology Co Ltd
Priority to CN201710312870.6A priority Critical patent/CN107247660A/zh
Publication of CN107247660A publication Critical patent/CN107247660A/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/362Software debugging
    • G06F11/3648Software debugging using additional hardware
    • G06F11/3656Software debugging using additional hardware using a specific debug interface
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/366Software debugging using diagnostics

Abstract

本发明公开了一种接口的测试方法和测试装置。所述方法包括:响应于访问指定网址的请求,返回接口测试页面;获取在接口测试页面上输入的接口地址、测试参数和相应的参数取值;根据接口地址将测试参数和相应的参数取值发送给对应的接口,并接收对应的接口返回的结果数据;以及将结果数据通过接口测试页面进行展示。通过本发明的技术方案,用户只需要输入接口地址,以及参数和参数的取值即可实现接口的有效测试,节省了接口测试的时间并有效提高了测试效率。

Description

一种接口的测试方法和测试装置
技术领域
本发明涉及计算机技术领域,具体涉及一种接口的测试方法和测试装置。
背景技术
Web服务技术通过使用一系列的标准规范,为用户之间的应用交互从局部范围发展到全球范围提供了可能。利用Web服务技术进行交互的应用只需遵从相应的Web服务接口,而不需考虑各自的内部实现,从而极大地降低了交互应用之间的耦合度,增加了用户应用的灵活性。但是,在实际运行过程中,如果要保证应用交互的稳定性,需要保证服务接口的性能的稳定性。
在服务接口面向用户提供服务前,对接口进行测试是影响该接口使用性能的重要环节。现有技术中的接口测试方法中,每次接口测试之前都需要用户逐项手动填写完整的接口地址、选择参数并完成参数设定,然后才可以进行参数下的接口测试。但是,这样的方案使得接口测试的整个过程耗时较长,效率较低,用户体验差。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的接口的测试方法和相应的测试装置。
依据本发明的一个方面,提供了一种接口的测试方法,包括:响应于访问指定网址的请求,返回接口测试页面;获取在所述接口测试页面上输入的接口地址、测试参数和相应的参数取值;根据所述接口地址将所述测试参数和相应的参数取值发送给对应的接口,并接收对应的接口返回的结果数据;以及,将所述结果数据通过所述接口测试页面进行展示。
可选地,进一步包括:确定所述测试参数的其他可能的参数取值;根据所述接口地址将所述测试参数和其他可能的参数取值分别发送给对应的接口,并接收对应的接口返回的对应的结果数据;以及,将所述测试参数的其他可能的参数取值对应的结果数据,通过所述接口测试页面进行展示。
可选地,所述确定所述测试参数的其他可能的参数取值包括如下中的一种或多种:如果所述测试参数的类型为数值类型,则确定0和Null是所述测试参数的其他可能的取值参数;根据所述接口地址确定所述测试参数的取值范围,根据所述测试参数的取值范围确定所述测试参数的其他可能的取值;如果所述测试参数为两个以上的参数,确定该两个以上的参数的其他可能的参数取值组合。
可选地,根据所述接口地址确定所述测试参数的取值的范围包括:根据所述接口地址查询接口参数列表,从接口参数列表获取所述测试参数的取值范围;其中,所述接口参数列表中对应保存了接口地址、接口地址中的参数和参数对应的取值范围。
可选地,所述将所述测试参数和相应的参数取值发送给对应的接口包括:分别以Post方式和Get方式将所述测试参数和相应的参数取值发送给对应的接口。
可选地,进一步包括:获取在所述接口测试页面上输入的加密方法;将所述测试参数和相应的参数取值按照所述加密方法进行加密处理,得到加密后的参数数据;以及,根据所述接口地址将所述加密后的参数数据发送给对应的接口。
可选地,进一步包括:将用户的测试页面登录信息以及所输入的接口地址、测试参数和相应的参数取值对应保存到存档数据库中;以及,当一个用户登录时,判断存档数据库中是否保存了该用户的测试页面登录信息,若是,则将相应的接口地址、测试参数和相应的参数取值预先填写到返回给该用户的接口测试页面中;当该用户进一步在接口测试页面中填写接口地址时,判断存档数据库中是否保存了与该用户的测试页面登录信息和该接口地址对应的相关信息,若是,则将与该用户的测试页面登录信息和该接口地址对应的测试参数和相应的参数取值填写到接口测试页面中。
可选地,进一步包括:获取在所述接口测试页面上输入的接口登录信息;以及,根据所述接口地址将接口登录信息发送给对应的接口进行登录后,再将所述测试参数和相应的参数取值发送给对应的接口。
根据本发明的另一方面,提供了一种接口的测试装置,包括:测试页面处理单元,适于响应于访问指定网址的请求,返回接口测试页面;以及适于获取在所述接口测试页面上输入的接口地址、测试参数和相应的参数取值;接口测试单元,适于根据所述接口地址将所述测试参数和相应的参数取值发送给对应的接口,并接收对应的接口返回的结果数据;结果展示单元,适于将所述结果数据通过所述接口测试页面进行展示。
可选地,所述接口测试单元,进一步适于确定所述测试参数的其他可能的参数取值,根据所述接口地址将所述测试参数和其他可能的参数取值分别发送给对应的接口,并接收对应的接口返回的对应的结果数据;所述结果展示单元,进一步适于将所述测试参数的其他可能的参数取值对应的结果数据,通过所述接口测试页面进行展示。
可选地,所述接口测试单元,适于根据如下中的一种或多种确定所述测试参数的其他可能的参数取值:如果所述测试参数的类型为数值类型,则确定0和Null是所述测试参数的其他可能的取值参数;根据所述接口地址确定所述测试参数的取值范围,根据所述测试参数的取值范围确定所述测试参数的其他可能的取值;如果所述测试参数为两个以上的参数,确定该两个以上的参数的其他可能的参数取值组合。
可选地,所述接口测试单元,适于根据所述接口地址查询接口参数列表,从接口参数列表获取所述测试参数的取值范围;其中,所述接口参数列表中对应保存了接口地址、接口地址中的参数和参数对应的取值范围。
可选地,所述接口测试单元,适于分别以Post方式和Get方式将所述测试参数和相应的参数取值发送给对应的接口。
可选地,所述测试页面处理单元,进一步适于获取在所述接口测试页面上输入的加密方法;所述接口测试单元,进一步适于将所述测试参数和相应的参数取值按照所述加密方法进行加密处理,得到加密后的参数数据,根据所述接口地址将所述加密后的参数数据发送给对应的接口。
可选地,所述测试页面处理单元,进一步适于将用户的测试页面登录信息以及所输入的接口地址、测试参数和相应的参数取值对应保存到存档数据库中;以及,当一个用户登录时,判断存档数据库中是否保存了该用户的测试页面登录信息,若是,则将相应的接口地址、测试参数和相应的参数取值预先填写到返回给该用户的接口测试页面中;当该用户进一步在接口测试页面中填写接口地址时,判断存档数据库中是否保存了与该用户的测试页面登录信息和该接口地址对应的相关信息,若是,则将与该用户的测试页面登录信息和该接口地址对应的测试参数和相应的参数取值填写到接口测试页面中。
可选地,所述测试页面处理单元,进一步适于获取在所述接口测试页面上输入的接口登录信息;
所述接口测试单元,进一步适于根据所述接口地址将接口登录信息发送给对应的接口进行登录后,再将所述测试参数和相应的参数取值发送给对应的接口。
根据本发明的技术方案,当用户需要进行接口测试时,可访问接口测试的指定网址,响应于用户访问指定网址的请求后,向用户返回接口测试页面,并获取用户在测试页面中输入的需要测试的接口地址、测试参数和相应的参数取值;根据接口地址将测试参数和相应的参数取值发送给对应的接口,并接收对应的接口返回的结果数据;将结果数据通过接口测试页面进行展示,实现接口的自动化测试。在本发明中,用户只需要输入接口地址,以及参数和参数的取值即可,相比于现有技术,可实现接口的有效测试,节省了接口测试的时间并有效提高了测试效率。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了根据本发明一个实施例的接口的测试方法的流程示意图;
图2示出了根据本发明一个实施例的接口的测试装置的结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
图1示出了根据本发明一个实施例的接口的测试方法的流程示意图。如图1所示,该方法包括:
步骤S110,响应于访问指定网址的请求,返回接口测试页面。
该指定网址是接口测试页面所对应的网址。如果用户需要进行接口测试,可以访问该指定网址。当测试装置(例如测试服务器)响应于用户访问该指定网址的请求后,会返回一接口测试页面,展示给用户。也就是说,本实施例是基于Web页面实现接口的自动化测试的。
步骤S120,获取在接口测试页面上输入的接口地址、测试参数和相应的参数取值。
当接口测试时输入的接口地址(URL)是不包含参数的,所以当接口测试页面返回给用户时,用户通过接口测试页面输入需要测试的接口地址,还需要输入测试参数和相应的参数值。例如,进行接口http://360.com/user/infor在参数a=1,b=3下的测试,那么用户在接口测试页面上的接口地址栏输入的是“http://360.com/user/infor”,参数设定为a=1,b=3。
步骤S130,根据接口地址将测试参数和相应的参数取值发送给对应的接口,并接收对应的接口返回的结果数据。
步骤S140,将结果数据通过接口测试页面进行展示。
在本发明中,用户只需要输入接口地址,以及参数和参数对应的取值即可,相比于现有技术,可实现接口的有效测试,节省了接口测试的时间并有效提高了测试效率。
在本发明的一个实施例中,图1所示的方法进一步包括:
确定测试参数的其他可能的参数取值;根据接口地址将测试参数和其他可能的参数取值分别发送给对应的接口,并接收对应的接口返回的对应的结果数据;以及,将测试参数的其他可能的参数取值对应的结果数据,通过接口测试页面进行展示。
本实施例中,当用户输入对应测试接口的测试参数和相应的参数取值后,还可以进行接口在测试参数的其他可能的参数取值下的测试。用户通过本实施例的方案就可获得测试接口的更多测试数据,实现对测试接口的综合评估。
具体地,上述的确定测试参数的其他可能的参数取值包括如下中的一种或多种:
(1)如果测试参数的类型为数值类型,则确定0和Null是测试参数的其他可能的取值参数。
一般情况下,进行接口测试时,在参数取值为0和null的情况下的测试是反应接口性能的最基本的要求,为了提高测试效率,用户可以根据测试需要直接输入测试参数相应的取值,而在参数为0和null下的取值,该接口测试页面会自动将0和null的参数取值发送给相应的测试接口地址进行接口测试,并返回测试结果。
例如,用户输入参数a=1,那么用户最终得到的测试结果是分别在参数a=0、1、null下的测试结果。
(2)根据接口地址确定测试参数的取值范围,根据测试参数的取值范围确定测试参数的其他可能的取值。
虽然用户在进行接口测试时,只输入了其需要进行测试的参数取值,但在接口实际应用中,该测试参数可能在一定的取值范围内,为了全面地进行接口测试,同时又减少用户操作步骤,在进行该测试参数下的接口测试时,还确定该测试参数的取值范围,在该取值范围内,选取其他可能的取值,或者根据该测试参数的取值要求,选取其他可能的取值,然后和用户输入的该测试参数对应的取值分别发送给相应的接口地址,以进行分别的测试。
例如,用户输入的测试参数a=3,确定该测试参数a的取值范围是1-10,那么就根据该取值范围,从1-10(不包括3)中选取其他可能的取值1、2、4、5、6、7、8、9、10等可能的取值;或者,该测试参数的取值要求是奇数,那么根据取值范围就在选取1、5、7、9。
为更加适应用户的需求,可以在接口测试页面中提供“是否需要确定取值范围”的选项,用户可以根据测试需求进行选择,进一步提升用户体验。
(3)如果测试参数为两个以上的参数,确定该两个以上的参数的其他可能的参数取值组合。
如果用户输入的测试参数不止一个,那么将在参数不同取值的组合下的接口测试结果提供给用户,同样可以减少用户的操作步骤,让用户对该接口进行综合评估,提升用户体验。
例如,用户输入的测试参数是a=1,b=3,基于上文(1)提出的还需要确定0和Null是测试参数的其他可能的取值参数,那么,最终进行接口测试时,a=0、1、null;b=0、3、null,组合后会有9种不同的情况,分别是:a=0,b=0;a=1,b=0;a=null,b=0;a=0,b=3;a=1,b=3;a=null,b=3;a=0,b=null;a=1,b=null;a=null,b=null。
三个以及三个以上的测试参数的实施方式同两个测试参数的实施方式类似。
同样地,如果同时将a和b的取值范围下可能的取值也考虑到,也可以进行这两个参数在所有的取值下的组合的确定。具体实施方式,同上述例子中的方式相同。
进一步地,上述(2)中的根据接口地址确定测试参数的取值的范围包括:根据接口地址查询接口参数列表,从接口参数列表获取测试参数的取值范围;其中,接口参数列表中对应保存了接口地址、接口地址中的参数和参数对应的取值范围。
进行接口测试时,还有提交方式的区分,在不同的提交方式下,得到的测试结果可能是不同的,为了保证接口自动化测试的全面性。在本发明的一个实施例中,图1所示的步骤S130中的将测试参数和相应的参数取值发送给对应的接口包括:分别以Post方式和Get方式将测试参数和相应的参数取值发送给对应的接口。
本实施例中的Post方式和Get方式就是接口测试的两种不同的提交方式。因为是两种提交方式,对应相同的参数以及参数取值,每一种提交方式均会返回相应的测试结果,例如,在测试参数a=1下的接口测试,分别以Post方式和Get方式提交,那么就会得到两个测试结果,分别对应Post方式和Get方式。又如,测试参数为两个的参数a和b,取值组合有9种,那么就会分别得到对应Post方式的9个测试结果和Get方式的9个测试结果。
在本发明的一个实施例中,图1所示的方法进一步包括:获取在接口测试页面上输入的加密方法;将测试参数和相应的参数取值按照加密方法进行加密处理,得到加密后的参数数据;以及,根据接口地址将加密后的参数数据发送给对应的接口。
需要进行测试的接口可能是加密的,利用接口测试页面进行接口的测试是无法通过直接访问该测试接口完成的,需要按照接口相应的加密方式将数据加密后,并和接口加密的结果一致,该接口才允许被访问。在本实施例中,针对加密的接口进行测试时,用户可以在接口测试页面中输入需要测试的接口相应的key,根据用户提供的key,将测试参数和相应的参数取值进行加密后发送给对应的接口,以完成测试。
如果用户需要经常性利用本发明中的接口测试页面进行接口测试,为了给用户提供最大的便利,用户可以申请该接口测试页面的账号,设置登录用户名以及登录密码,每次进行接口测试时,均在该账号下完成。在本发明的一个实施例中,图1所示的方法进一步包括:
将用户的测试页面登录信息以及所输入的接口地址、测试参数和相应的参数取值对应保存到存档数据库中,以记录该用户的测试记录;以及,当一个用户登录时,判断存档数据库中是否保存了该用户的测试页面登录信息,若是,则将相应的接口地址、测试参数和相应的参数取值预先填写到返回给该用户的接口测试页面中,方便用户查询;当该用户进一步在接口测试页面中填写接口地址时,判断存档数据库中是否保存了与该用户的测试页面登录信息和该接口地址对应的相关信息,若是,则将与该用户的测试页面登录信息和该接口地址对应的测试参数和相应的参数取值填写到接口测试页面中,这样用户就可以直接进行测试,或者根据本次测试需要进行测试参数的修改,减少用户操作步骤,提高测试效率,提升用户体验。
在本发明的一个实施例中,图1所示的方法进一步包括:获取在接口测试页面上输入的接口登录信息;以及,根据接口地址将接口登录信息发送给对应的接口进行登录后,再将测试参数和相应的参数取值发送给对应的接口。
进行测试的接口时,可能会存在需要进行账号和密码登录的情况的测试,那么用户可以在接口测试页面中输入相应的登录信息,以便在进行该接口测试时,利用用户输入的登录信息进行模拟登录。例如,在进行淘宝接口的测试时,需要进行淘宝网的登录,用户可以在接口测试页面提供的选项“是否需要模拟登录”中选择“是”,然后输入相应的淘宝网登录信息。
在这里,用户输入登录信息时,登录账号可以直接输入,登录密码可以输入MD5的值,根据登录账号和登录密码,在进行接口测试时,就可以进行模拟登录,以完成测试。
需要说明的是,在进行模拟登录的情况的测试时,同样可以采用Post方式和Get方式进行提交。
图2示出了根据本发明一个实施例的接口的测试装置的结构示意图。如图2所示,该接口的测试装置200包括:
测试页面处理单元210,适于响应于访问指定网址的请求,返回接口测试页面;以及适于获取在接口测试页面上输入的接口地址、测试参数和相应的参数取值。
该指定网址是接口测试页面所对应的网址。如果用户需要进行接口测试,可以访问该指定网址。当测试装置(例如服务器)响应于用户访问该指定网址的请求后,会返回一接口测试页面,展示给用户。也就是说,本实施例是基于Web页面实现接口的自动化测试的。
当接口测试时输入的接口地址(URL)是不包含参数的,所以当接口测试页面返回给用户时,用户通过接口测试页面输入需要测试的接口地址,还需要输入测试参数和相应的参数值。例如,进行接口http://360.com/user/infor在参数a=1&b=3下的测试,那么用户在接口测试页面上的接口地址栏输入的是“http://360.com/user/infor”,参数设定为a=1,b=3。
接口测试单元220,适于根据接口地址将测试参数和相应的参数取值发送给对应的接口,并接收对应的接口返回的结果数据。
结果展示单元230,适于将结果数据通过接口测试页面进行展示。
在本发明中,用户只需要输入接口地址,以及参数和参数对应的取值即可,相比于现有技术,可实现接口的有效测试,节省了接口测试的时间并有效提高了测试效率。
在本发明的一个实施例中,接口测试单元220,进一步适于确定测试参数的其他可能的参数取值,根据接口地址将测试参数和其他可能的参数取值分别发送给对应的接口,并接收对应的接口返回的对应的结果数据。
结果展示单元230,进一步适于将测试参数的其他可能的参数取值对应的结果数据,通过接口测试页面进行展示。
本实施例中,当用户输入对应测试接口的测试参数和相应的参数取值后,还可以进行接口在测试参数的其他可能的参数取值下的测试。用户通过本实施例的方案就可获得测试接口的更多测试数据,实现对测试接口的综合评估。
具体地,接口测试单元220,适于根据如下中的一种或多种确定测试参数的其他可能的参数取值:
(1)如果测试参数的类型为数值类型,则确定0和Null是测试参数的其他可能的取值参数。
一般情况下,进行接口测试时,在参数取值为0和null的情况下的测试是反应接口性能的最基本的要求,为了提高测试效率,用户可以根据测试需要直接输入测试参数相应的取值,而在参数为0和null下的取值,该接口测试页面会自动将0和null的参数取值发送给相应的测试接口地址进行接口测试,并返回测试结果。
例如,用户输入参数a=1,那么用户最终得到的测试结果是分别在参数a=0、1、null下的测试结果。
(2)根据接口地址确定测试参数的取值范围,根据测试参数的取值范围确定测试参数的其他可能的取值;
虽然用户在进行接口测试时,只输入了其需要进行测试的参数取值,但在接口实际应用中,该测试参数可能在一定的取值范围内,为了全面地进行接口测试,同时又减少用户操作步骤,在进行该测试参数下的接口测试时,还确定该测试参数的取值范围,在该取值范围内,选取其他可能的取值,或者根据该测试参数的取值要求,选取其他可能的取值,然后和用户输入的该测试参数对应的取值分别发送给相应的接口地址,以进行分别的测试。
例如,用户输入的测试参数a=3,确定该测试参数a的取值范围是1-10,那么就根据该取值范围,从1-10(不包括3)中选取其他可能的取值1、2、4、5、6、7、8、9、10等可能的取值;或者,该测试参数的取值要求是奇数,那么根据取值范围就在选取1、5、7、9。
为更加适应用户的需求,可以在接口测试页面中提供“是否需要确定取值范围”的选项,用户可以根据测试需求进行选择,进一步提升用户体验。
(3)如果测试参数为两个以上的参数,确定该两个以上的参数的其他可能的参数取值组合。
如果用户输入的测试参数不止一个,那么将在参数不同取值的组合下的接口测试结果提供给用户,同样可以减少用户的操作步骤,让用户对该接口进行综合评估,提升用户体验。
例如,用户输入的测试参数是a=1,b=3,基于上文(1)提出的还需要确定0和Null是测试参数的其他可能的取值参数,那么,最终进行接口测试时,a=0、1、null;b=0、3、null,组合后会有9种不同的情况,分别是:a=0,b=0;a=1,b=0;a=null,b=0;a=0,b=3;a=1,b=3;a=null,b=3;a=0,b=null;a=1,b=null;a=null,b=null。
三个以及三个以上的测试参数的实施方式同两个测试参数的实施方式类似。
同样地,如果同时将a和b的取值范围下可能的取值也考虑到,也可以进行这两个参数在所有的取值下的组合的确定。具体实施方式,同上述例子中的方式相同。
进一步地,接口测试单元220,适于根据接口地址查询接口参数列表,从接口参数列表获取测试参数的取值范围;其中,接口参数列表中对应保存了接口地址、接口地址中的参数和参数对应的取值范围。
进行接口测试时,还有提交方式的区分,在不同的提交方式下,得到的测试结果可能是不同的,为了保证接口自动化测试的全面性。在本发明的一个实施例中,接口测试单元220,适于分别以Post方式和Get方式将测试参数和相应的参数取值发送给对应的接口。
本实施例中的Post方式和Get方式就是接口测试的两种不同的提交方式。因为是两种提交方式,对应相同的参数以及参数取值,每一种提交方式均会返回相应的测试结果,例如,在测试参数a=1下的接口测试,分别以Post方式和Get方式提交,那么就会得到两个测试结果,分别对应Post方式和Get方式。又如,测试参数为两个的参数a和b,取值组合有9种,那么就会分别得到对应Post方式的9个测试结果和Get方式的9个测试结果。
在本发明的一个实施例中,测试页面处理单元210,进一步适于获取在接口测试页面上输入的加密方法。
接口测试单元220,进一步适于将测试参数和相应的参数取值按照加密方法进行加密处理,得到加密后的参数数据,根据接口地址将加密后的参数数据发送给对应的接口。
需要进行测试的接口可能是加密的,利用接口测试页面进行接口的测试是无法通过直接访问该测试接口完成的,需要按照接口相应的加密方式将数据加密后,并和接口加密的结果一致,该接口才允许被访问。在本实施例中,针对加密的接口进行测试时,用户可以在接口测试页面中输入需要测试的接口相应的key,根据用户提供的key,将测试参数和相应的参数取值进行加密后发送给对应的接口,以完成测试。
如果用户需要经常性利用本发明中的接口测试页面进行接口测试,为了给用户提供最大的便利,用户可以申请该接口测试页面的账号,设置登录用户名以及登录密码,每次进行接口测试时,均在该账号下完成。在本发明的一个实施例中,测试页面处理单元,进一步适于将用户的测试页面登录信息以及所输入的接口地址、测试参数和相应的参数取值对应保存到存档数据库中,以记录该用户的测试记录;以及,当一个用户登录时,判断存档数据库中是否保存了该用户的测试页面登录信息,若是,则将相应的接口地址、测试参数和相应的参数取值预先填写到返回给该用户的接口测试页面中,方便用户查询;当该用户进一步在接口测试页面中填写接口地址时,判断存档数据库中是否保存了与该用户的测试页面登录信息和该接口地址对应的相关信息,若是,则将与该用户的测试页面登录信息和该接口地址对应的测试参数和相应的参数取值填写到接口测试页面中,这样用户就可以直接进行测试,或者根据本次测试需要进行测试参数的修改,减少用户操作步骤,提高测试效率,提升用户体验。
在本发明的一个实施例中,测试页面处理单元210,进一步适于获取在接口测试页面上输入的接口登录信息。
接口测试单元220,进一步适于根据接口地址将接口登录信息发送给对应的接口进行登录后,再将测试参数和相应的参数取值发送给对应的接口。
进行测试的接口时,可能会存在需要进行账号和密码登录的情况的测试,那么用户可以在接口测试页面中输入相应的登录信息,以便在进行该接口测试时,利用用户输入的登录信息进行模拟登录。例如,在进行淘宝接口的测试时,需要进行淘宝网的登录,用户可以在接口测试页面提供的选项“是否需要模拟登录”中选择“是”,然后输入相应的淘宝登录信息。
在这里,用户输入登录信息时,登录账号可以直接输入,登录密码可以输入MD5的值,根据登录账号和登录密码,在进行接口测试时,就可以进行模拟登录,以完成测试。
需要说明的是,在进行模拟登录的情况的测试时,同样可以采用Post方式和Get方式进行提交。
综合所述,根据本发明的技术方案,当用户需要进行接口测试时,可访问接口测试的指定网址,响应于用户访问指定网址的请求后,向用户返回接口测试页面,并获取用户在测试页面中输入的需要测试的接口地址、测试参数和相应的参数取值;根据接口地址将测试参数和相应的参数取值发送给对应的接口,并接收对应的接口返回的结果数据;将结果数据通过接口测试页面进行展示,实现接口的自动化测试。在本发明中,用户只需要输入接口地址,以及参数和参数的取值即可,相比于现有技术,可实现接口的有效测试,节省了接口测试的时间并有效提高了测试效率。
需要说明的是:
在此提供的算法和显示不与任何特定计算机、虚拟装置或者其它设备固有相关。各种通用装置也可以与基于在此的示教一起使用。根据上面的描述,构造这类装置所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的接口的测试装置中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
本发明公开了A1、一种接口的测试方法,包括:
响应于访问指定网址的请求,返回接口测试页面;
获取在所述接口测试页面上输入的接口地址、测试参数和相应的参数取值;
根据所述接口地址将所述测试参数和相应的参数取值发送给对应的接口,并接收对应的接口返回的结果数据;以及
将所述结果数据通过所述接口测试页面进行展示。
A2、如A1所述的方法,进一步包括:
确定所述测试参数的其他可能的参数取值;
根据所述接口地址将所述测试参数和其他可能的参数取值分别发送给对应的接口,并接收对应的接口返回的对应的结果数据;以及
将所述测试参数的其他可能的参数取值对应的结果数据,通过所述接口测试页面进行展示。
A3、如A2所述的方法,其中,所述确定所述测试参数的其他可能的参数取值包括如下中的一种或多种:
如果所述测试参数的类型为数值类型,则确定0和Null是所述测试参数的其他可能的取值参数;
根据所述接口地址确定所述测试参数的取值范围,根据所述测试参数的取值范围确定所述测试参数的其他可能的取值;
如果所述测试参数为两个以上的参数,确定该两个以上的参数的其他可能的参数取值组合。
A4、如A3所述的方法,其中,根据所述接口地址确定所述测试参数的取值的范围包括:
根据所述接口地址查询接口参数列表,从接口参数列表获取所述测试参数的取值范围;其中,所述接口参数列表中对应保存了接口地址、接口地址中的参数和参数对应的取值范围。
A5、如A1所述的方法,其中,所述将所述测试参数和相应的参数取值发送给对应的接口包括:
分别以Post方式和Get方式将所述测试参数和相应的参数取值发送给对应的接口。
A6、如A1所述的方法,进一步包括:
获取在所述接口测试页面上输入的加密方法;
将所述测试参数和相应的参数取值按照所述加密方法进行加密处理,得到加密后的参数数据;以及
根据所述接口地址将所述加密后的参数数据发送给对应的接口。
A7、如A1-A6中任一项所述的方法,进一步包括:
将用户的测试页面登录信息以及所输入的接口地址、测试参数和相应的参数取值对应保存到存档数据库中;以及
当一个用户登录时,判断存档数据库中是否保存了该用户的测试页面登录信息,若是,则将相应的接口地址、测试参数和相应的参数取值预先填写到返回给该用户的接口测试页面中;当该用户进一步在接口测试页面中填写接口地址时,判断存档数据库中是否保存了与该用户的测试页面登录信息和该接口地址对应的相关信息,若是,则将与该用户的测试页面登录信息和该接口地址对应的测试参数和相应的参数取值填写到接口测试页面中。
A8、如A1-A6中任一项所述的方法,进一步包括:
获取在所述接口测试页面上输入的接口登录信息;以及
根据所述接口地址将接口登录信息发送给对应的接口进行登录后,再将所述测试参数和相应的参数取值发送给对应的接口。
本发明还公开了B9、一种接口的测试装置,包括:
测试页面处理单元,适于响应于访问指定网址的请求,返回接口测试页面;以及适于获取在所述接口测试页面上输入的接口地址、测试参数和相应的参数取值;
接口测试单元,适于根据所述接口地址将所述测试参数和相应的参数取值发送给对应的接口,并接收对应的接口返回的结果数据;
结果展示单元,适于将所述结果数据通过所述接口测试页面进行展示。
B10、如B9所述的装置,其中,
所述接口测试单元,进一步适于确定所述测试参数的其他可能的参数取值,根据所述接口地址将所述测试参数和其他可能的参数取值分别发送给对应的接口,并接收对应的接口返回的对应的结果数据;
所述结果展示单元,进一步适于将所述测试参数的其他可能的参数取值对应的结果数据,通过所述接口测试页面进行展示。
B11、如B10所述的装置,其中,
所述接口测试单元,适于根据如下中的一种或多种确定所述测试参数的其他可能的参数取值:
如果所述测试参数的类型为数值类型,则确定0和Null是所述测试参数的其他可能的取值参数;
根据所述接口地址确定所述测试参数的取值范围,根据所述测试参数的取值范围确定所述测试参数的其他可能的取值;
如果所述测试参数为两个以上的参数,确定该两个以上的参数的其他可能的参数取值组合。
B12、如B11所述的装置,其中,
所述接口测试单元,适于根据所述接口地址查询接口参数列表,从接口参数列表获取所述测试参数的取值范围;其中,所述接口参数列表中对应保存了接口地址、接口地址中的参数和参数对应的取值范围。
B13、如B9所述的装置,其中,
所述接口测试单元,适于分别以Post方式和Get方式将所述测试参数和相应的参数取值发送给对应的接口。
B14、如B9所述的装置,其中,
所述测试页面处理单元,进一步适于获取在所述接口测试页面上输入的加密方法;
所述接口测试单元,进一步适于将所述测试参数和相应的参数取值按照所述加密方法进行加密处理,得到加密后的参数数据,根据所述接口地址将所述加密后的参数数据发送给对应的接口。
B15、如B9-B14中任一项所述的装置,其中,
所述测试页面处理单元,进一步适于将用户的测试页面登录信息以及所输入的接口地址、测试参数和相应的参数取值对应保存到存档数据库中;以及,当一个用户登录时,判断存档数据库中是否保存了该用户的测试页面登录信息,若是,则将相应的接口地址、测试参数和相应的参数取值预先填写到返回给该用户的接口测试页面中;当该用户进一步在接口测试页面中填写接口地址时,判断存档数据库中是否保存了与该用户的测试页面登录信息和该接口地址对应的相关信息,若是,则将与该用户的测试页面登录信息和该接口地址对应的测试参数和相应的参数取值填写到接口测试页面中。
B16、如B9-B14中任一项所述的装置,其中,
所述测试页面处理单元,进一步适于获取在所述接口测试页面上输入的接口登录信息;
所述接口测试单元,进一步适于根据所述接口地址将接口登录信息发送给对应的接口进行登录后,再将所述测试参数和相应的参数取值发送给对应的接口。

Claims (10)

1.一种接口的测试方法,包括:
响应于访问指定网址的请求,返回接口测试页面;
获取在所述接口测试页面上输入的接口地址、测试参数和相应的参数取值;
根据所述接口地址将所述测试参数和相应的参数取值发送给对应的接口,并接收对应的接口返回的结果数据;以及
将所述结果数据通过所述接口测试页面进行展示。
2.如权利要求1所述的方法,进一步包括:
确定所述测试参数的其他可能的参数取值;
根据所述接口地址将所述测试参数和其他可能的参数取值分别发送给对应的接口,并接收对应的接口返回的对应的结果数据;以及
将所述测试参数的其他可能的参数取值对应的结果数据,通过所述接口测试页面进行展示。
3.如权利要求2所述的方法,其中,所述确定所述测试参数的其他可能的参数取值包括如下中的一种或多种:
如果所述测试参数的类型为数值类型,则确定0和Null是所述测试参数的其他可能的取值参数;
根据所述接口地址确定所述测试参数的取值范围,根据所述测试参数的取值范围确定所述测试参数的其他可能的取值;
如果所述测试参数为两个以上的参数,确定该两个以上的参数的其他可能的参数取值组合。
4.如权利要求3所述的方法,其中,根据所述接口地址确定所述测试参数的取值的范围包括:
根据所述接口地址查询接口参数列表,从接口参数列表获取所述测试参数的取值范围;其中,所述接口参数列表中对应保存了接口地址、接口地址中的参数和参数对应的取值范围。
5.如权利要求1所述的方法,其中,所述将所述测试参数和相应的参数取值发送给对应的接口包括:
分别以Post方式和Get方式将所述测试参数和相应的参数取值发送给对应的接口。
6.如权利要求1所述的方法,进一步包括:
获取在所述接口测试页面上输入的加密方法;
将所述测试参数和相应的参数取值按照所述加密方法进行加密处理,得到加密后的参数数据;以及
根据所述接口地址将所述加密后的参数数据发送给对应的接口。
7.如权利要求1-6中任一项所述的方法,进一步包括:
将用户的测试页面登录信息以及所输入的接口地址、测试参数和相应的参数取值对应保存到存档数据库中;以及
当一个用户登录时,判断存档数据库中是否保存了该用户的测试页面登录信息,若是,则将相应的接口地址、测试参数和相应的参数取值预先填写到返回给该用户的接口测试页面中;当该用户进一步在接口测试页面中填写接口地址时,判断存档数据库中是否保存了与该用户的测试页面登录信息和该接口地址对应的相关信息,若是,则将与该用户的测试页面登录信息和该接口地址对应的测试参数和相应的参数取值填写到接口测试页面中。
8.如权利要求1-6中任一项所述的方法,进一步包括:
获取在所述接口测试页面上输入的接口登录信息;以及
根据所述接口地址将接口登录信息发送给对应的接口进行登录后,再将所述测试参数和相应的参数取值发送给对应的接口。
9.一种接口的测试装置,包括:
测试页面处理单元,适于响应于访问指定网址的请求,返回接口测试页面;以及适于获取在所述接口测试页面上输入的接口地址、测试参数和相应的参数取值;
接口测试单元,适于根据所述接口地址将所述测试参数和相应的参数取值发送给对应的接口,并接收对应的接口返回的结果数据;
结果展示单元,适于将所述结果数据通过所述接口测试页面进行展示。
10.如权利要求9所述的装置,其中,
所述接口测试单元,进一步适于确定所述测试参数的其他可能的参数取值,根据所述接口地址将所述测试参数和其他可能的参数取值分别发送给对应的接口,并接收对应的接口返回的对应的结果数据;
所述结果展示单元,进一步适于将所述测试参数的其他可能的参数取值对应的结果数据,通过所述接口测试页面进行展示。
CN201710312870.6A 2017-05-05 2017-05-05 一种接口的测试方法和测试装置 Pending CN107247660A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710312870.6A CN107247660A (zh) 2017-05-05 2017-05-05 一种接口的测试方法和测试装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710312870.6A CN107247660A (zh) 2017-05-05 2017-05-05 一种接口的测试方法和测试装置

Publications (1)

Publication Number Publication Date
CN107247660A true CN107247660A (zh) 2017-10-13

Family

ID=60017069

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710312870.6A Pending CN107247660A (zh) 2017-05-05 2017-05-05 一种接口的测试方法和测试装置

Country Status (1)

Country Link
CN (1) CN107247660A (zh)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107861870A (zh) * 2017-11-02 2018-03-30 平安科技(深圳)有限公司 接口测试及测试数据生成方法、装置、终端和存储介质
CN107885502A (zh) * 2017-11-10 2018-04-06 广州市千钧网络科技有限公司 接口处理方法、处理装置、接口管理方法和管理装置
CN108900369A (zh) * 2018-05-31 2018-11-27 武汉虹信技术服务有限责任公司 一种基于post请求的接口测试方法
CN109254908A (zh) * 2018-08-03 2019-01-22 北京达佳互联信息技术有限公司 可视化回归测试方法、装置、终端设备及可读存储介质
CN109460266A (zh) * 2018-10-29 2019-03-12 无锡华云数据技术服务有限公司 一种构造软件模拟数据的方法及装置
CN109992500A (zh) * 2017-12-29 2019-07-09 北京奇虎科技有限公司 应用的接口测试方法、装置和计算机可读存储介质
CN110674023A (zh) * 2018-07-02 2020-01-10 北京奇虎科技有限公司 一种接口测试方法和装置
CN110727596A (zh) * 2019-10-15 2020-01-24 北京弘远博学科技有限公司 一种app接口自动化测试方法
CN111444070A (zh) * 2020-03-13 2020-07-24 浙江大搜车软件技术有限公司 接口交互数据处理方法和用户终端
CN112685286A (zh) * 2019-10-18 2021-04-20 拉扎斯网络科技(上海)有限公司 测试对象生成方法、装置、电子设备及计算机存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101576843A (zh) * 2008-05-07 2009-11-11 阿里巴巴集团控股有限公司 一种测试应用程序接口的方法和装置
CN106339312A (zh) * 2015-07-17 2017-01-18 腾讯科技(深圳)有限公司 Api测试方法和系统
US9600405B1 (en) * 2008-10-03 2017-03-21 Federal Home Loan Mortgage Corporation (Freddie Mac) Systems and methods for testing a software application

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101576843A (zh) * 2008-05-07 2009-11-11 阿里巴巴集团控股有限公司 一种测试应用程序接口的方法和装置
US9600405B1 (en) * 2008-10-03 2017-03-21 Federal Home Loan Mortgage Corporation (Freddie Mac) Systems and methods for testing a software application
CN106339312A (zh) * 2015-07-17 2017-01-18 腾讯科技(深圳)有限公司 Api测试方法和系统

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107861870A (zh) * 2017-11-02 2018-03-30 平安科技(深圳)有限公司 接口测试及测试数据生成方法、装置、终端和存储介质
CN107885502A (zh) * 2017-11-10 2018-04-06 广州市千钧网络科技有限公司 接口处理方法、处理装置、接口管理方法和管理装置
CN109992500A (zh) * 2017-12-29 2019-07-09 北京奇虎科技有限公司 应用的接口测试方法、装置和计算机可读存储介质
CN108900369A (zh) * 2018-05-31 2018-11-27 武汉虹信技术服务有限责任公司 一种基于post请求的接口测试方法
CN110674023A (zh) * 2018-07-02 2020-01-10 北京奇虎科技有限公司 一种接口测试方法和装置
CN110674023B (zh) * 2018-07-02 2022-11-04 北京奇虎科技有限公司 一种接口测试方法和装置
CN109254908A (zh) * 2018-08-03 2019-01-22 北京达佳互联信息技术有限公司 可视化回归测试方法、装置、终端设备及可读存储介质
CN109460266A (zh) * 2018-10-29 2019-03-12 无锡华云数据技术服务有限公司 一种构造软件模拟数据的方法及装置
CN110727596A (zh) * 2019-10-15 2020-01-24 北京弘远博学科技有限公司 一种app接口自动化测试方法
CN112685286A (zh) * 2019-10-18 2021-04-20 拉扎斯网络科技(上海)有限公司 测试对象生成方法、装置、电子设备及计算机存储介质
CN111444070A (zh) * 2020-03-13 2020-07-24 浙江大搜车软件技术有限公司 接口交互数据处理方法和用户终端
CN111444070B (zh) * 2020-03-13 2023-11-21 浙江大搜车软件技术有限公司 接口交互数据处理方法和用户终端

Similar Documents

Publication Publication Date Title
CN107247660A (zh) 一种接口的测试方法和测试装置
CN104580451B (zh) 实现多平台间账号同步的方法和系统、及电子设备
CN107798038B (zh) 数据响应方法及数据响应设备
CN103324470B (zh) 一种Web系统生成的方法和装置
CN106681973B (zh) 一种测试中实现自动填充浏览器表单的方法和装置
CN103618698B (zh) cookie信息的处理方法及装置
CN103020826B (zh) 支付处理方法和服务器
CN103227786B (zh) 一种网站登录信息填入方法及装置
CN102957696B (zh) 一种数据处理方法和装置
CN104410546B (zh) 实时处理系统的测试方法和装置
CN106933871A (zh) 短链接处理方法、装置及短链接服务器
CN105871838A (zh) 一种第三方账号的登录控制方法及用户中心平台
CN103036993B (zh) 实现网站登录的浏览器客户端和方法
CN102981705B (zh) 服务器端浏览器实现方法及服务器
CN103036887B (zh) 实现网站登录的系统和方法
CN107508720A (zh) 一种自动化测试方法及装置
CN110033285A (zh) 房源信息发布方法、装置、设备及计算机可读存储介质
CN109669859A (zh) 服务测试方法、装置、计算机设备和存储介质
CN106059853A (zh) 一种网络连通性测试方法及装置
CN103020827B (zh) 支付处理方法和系统
US20140157383A1 (en) Access management system and method
WO2019026172A1 (ja) セキュリティ診断装置およびセキュリティ診断方法
CN106657358A (zh) 一种安卓应用的服务代理方法和装置
CN107590064A (zh) 一种应用升级测试方法、装置和系统
CN104468549B (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: 20171013

RJ01 Rejection of invention patent application after publication