一种测试中实现自动填充浏览器表单的方法和装置与流程

文档序号:11918446阅读:378来源:国知局
一种测试中实现自动填充浏览器表单的方法和装置与流程

本发明涉及计算机技术领域,具体涉及一种测试中实现自动填充浏览器表单的方法和装置。



背景技术:

在计算机领域中,用户在进行浏览器使用中,特别是用户进行测试的过程中,需要手动填写浏览器表单进行网页登陆、注册信息或者构造业务数据进行测试等,人工操作繁琐,影响用户体验。在现有技术的测试中,虽然可以部分实现浏览器表单自动填充的功能,但是都是基于录制回放的模式,即记录当前的访问地址,静态的保存人工填写的数据,当再次访问该网址时,回放人工保存的数据进行自动填充,这类填充数据不能动态变化,只针对相同访问网址才有效,当用户访问其他网址时仍然需要人工填充,无法实现该浏览器打开的所有网站的浏览器表单的自动填充,降低用户体验。



技术实现要素:

鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的测试中实现自动填充浏览器表单的方法和相应的装置。

依据本发明的一个方面,提供了一种测试中实现自动填充浏览器表单的方法,其中,该方法包括:

在应用测试过程中,对于待填充的浏览器表单,判断是否存在用户预设信息,以及确定浏览器表单中的各表单项的类型;

如果存在用户预设信息,则根据用户预设信息的类型和浏览器表单中的各表单项的类型,将用户预设信息作为测试数据填充到类型匹配的表单项中;

如果浏览器表单中还存在未填充的表单项,则根据各表单项的类型生成相应类型的测试数据进行填充。

可选地,该方法进一步包括:

如果浏览器表单中还存在类型未知的表单项,则根据类型未知的表单项的属性描述信息生成相匹配的测试数据进行填充。

可选地,所述表单项的属性描述信息包括:表单项的正则表达式;

所述根据类型未知的表单项的属性描述信息生成相匹配的测试数据进行填充包括:根据类型未知的表单项的正则表达式生成符合正则表达式的测试数据进行填充。

可选地,所述表单项的属性描述信息包括:表单项的标识和/或名称;

所述根据类型未知的表单项的属性描述信息生成相匹配的测试数据进行填充包括:根据类型未知的表单项的标识和/或名称生成符合所述标识和/或名称的文字含义的测试数据进行填充。

可选地,该方法进一步包括:

在浏览器页面上提供用户预设信息配置控件;

当该用户预设信息配置控件被触发时,输出用户预设信息配置界面,供用户输入用户预设信息;其中用户预设信息配置界面的各输入项对应不同的类型;

将用户预设信息配置界面上的各输入项中的输入内容与对应输入项的类型对应保存,得到用户预设信息。

可选地,该方法进一步包括:将用户预设信息与用户指定的URL进行绑定;

对于待填充的浏览器表单,判断是否存在用户预设信息包括:判断是否存在所绑定的URL与所述待填充的浏览器表单的URL匹配的用户预设信息,是则确定对于待填充的浏览器表单,存在用户预设信息。

可选地,所述确定浏览器表单中的各表单项的类型包括:

通过浏览器的控件识别功能,识别浏览器表单中的各表单项对应的控件的类型。

可选地,该方法进一步包括:

对于浏览器表单中的类型未知的表单项,根据最终填充到该表单项中内容学习该表单项的类型,并记录到表单项类型学习表中;

其中,最终填充到该表单项中的测试内容是用户手动填入的内容或者是随机生成并填入的内容。

可选地,所述确定浏览器表单中的各表单项的类型还包括:

根据表单项类型学习表确定浏览器表单中的各表单项的类型。

根据本发明的另一方面,提供了一种测试中实现自动填充浏览器表单的装置,其中,该装置包括:

预处理单元,适于在应用测试过程中,对于待填充的浏览器表单,判断是否存在用户预设信息,以及确定浏览器表单中的各表单项的类型;

填充处理单元,适于当存在用户预设信息时,根据用户预设信息的类型和浏览器表单中的各表单项的类型,将用户预设信息作为测试数据填充到类型匹配的表单项中;如果浏览器表单中还存在未填充的表单项,则根据各表单项的类型生成相应类型的测试数据进行填充。

可选地,所述填充处理单元,进一步适于如果浏览器表单中还存在类型未知的表单项,则根据类型未知的表单项的属性描述信息生成相匹配的测试数据进行填充。

可选地,所述表单项的属性描述信息包括:表单项的正则表达式;

所述填充处理单元,适于根据类型未知的表单项的正则表达式生成符合正则表达式的测试数据进行填充。

可选地,所述表单项的属性描述信息包括:表单项的标识和/或名称;

所述填充处理单元,适于根据类型未知的表单项的标识和/或名称生成符合所述标识和/或名称的文字含义的测试数据进行填充。

可选地,该装置进一步包括:

用户预设信息处理单元,适于在浏览器页面上提供用户预设信息配置控件;当该用户预设信息配置控件被触发时,输出用户预设信息配置界面,供用户输入用户预设信息;其中用户预设信息配置界面的各输入项对应不同的类型;将用户预设信息配置界面上的各输入项中的输入内容与对应输入项的类型对应保存,得到用户预设信息。

可选地,用户预设信息处理单元,适于将用户预设信息与用户指定的URL进行绑定;

所述预处理单元,适于判断是否存在所绑定的URL与所述待填充的浏览器表单的URL匹配的用户预设信息,是则确定对于待填充的浏览器表单,存在用户预设信息。

可选地,所述预处理单元,适于通过浏览器的控件识别功能,识别浏览器表单中的各表单项对应的控件的类型。

可选地,该装置进一步包括:

类型学习单元,适于对于浏览器表单中的类型未知的表单项,根据最终填充到该表单项中内容学习该表单项的类型,并记录到表单项类型学习表中;

其中,最终填充到该表单项中的测试内容是用户手动填入的内容或者是随机生成并填入的内容。

可选地,所述预处理单元,还适于根据表单项类型学习表确定浏览器表单中的各表单项的类型。

根据本发明的技术方案,在应用测试过程中,用户可以通过浏览器中插件在该浏览器中预设自动填充的信息,当用户测试该浏览器时,对于待填充的浏览器表单,判断是否存在用户预设信息,以及确定浏览器表单中的各表单项的类型;如果存在用户预设信息,则根据用户预设信息的类型和浏览器表单中的各表单项的类型,将用户预设信息填充到类型匹配的表单项中;如果浏览器表单中还存在未填充的表单项,则根据各表单项的类型生成相应类型的数据进行填充。综上所述,本发明改善现有技术的测试中录制回放的模式,通过用户预设填充信息作为测试数据,对该浏览器打开的网址的浏览器表单均可实现自动填充的功能,省去人工填充的繁琐操作,增强用户的体验。

上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。

附图说明

通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:

图1示出了根据本发明一个实施例的一种实现自动填充浏览器表单的方法的流程图;

图2示出了根据本发明一个实施例的一种实现自动填充浏览器表单的装置的示意图;

图3示出了根据本发明另一个实施例的一种实现自动填充浏览器表单的装置的示意图。

具体实施方式

下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。

图1示出了根据本发明一个实施例的一种测试中实现自动填充浏览器表单的方法的流程图。如图1所示,该方法包括:

步骤S110,在应用测试过程中,对于待填充的浏览器表单,判断是否存在用户预设信息,以及确定浏览器表单中的各表单项的类型。

本步骤中的浏览器表单,就是指在应用测试过程中,用户使用浏览器时,在浏览器中进行填充信息时的填充框,因为是在浏览器中形成的填充表格,在浏览器打开情况下出现的填充表格就称为浏览器表单。例如,用户需要通过用户名、密码、验证码登录某一网站时,登陆界面上用户进行信息填充的表格就是浏览器表单;或者用户在进行某网站账号的注册时进行基本信息填充时的长表格,也被称为浏览器表单。

如果没有自动填充功能,则需要用户进行人工填充,对于浏览器短表单,需要填充的内容较少,不会引起用户的负面情绪;但是对于浏览器长表单,例如注册时填充的信息量较大,通过人工填充就会大大降低用户体验。

在本步骤中,用户可以在浏览器中预设信息,在用户使用浏览器时,就可以将用户已经预设的信息自动填入待填充的浏览器表单中。在对待填充的浏览器表单进行填充之前,首先判断是否存在针对该待填充的浏览器表单的用户预设信息,如果存在的话,会优先从预设信息中选择与浏览器表单中的各表单项的类型相匹配的信息填入该待填充的浏览器表单中。

在用户预设信息的表单里包括:表单项的名字、对应各表单项的数据类型、匹配字符串、用户预设信息等内容,用户可以通过该预设信息的表单项的名字进行信息的预设,例如,表单项的名字可以是用户名、密码、手机号码、身份证号码、邮箱、地址等。

这里对应各表单项的数据类型可以是:password,密码域,跟文本框类似,但输入的内容显示圆点;radio,单选按钮,比如男或女;checkbox,复选框;file:上传域(视难易程度解决此类型);color,定义调色板;tel,定义电话号码的输入域;email,定义email的输入域;url,定义包含URl地址的输入域;search,定义搜索域;number,定义包含数值的输入域;range,定义包含一定范围内数字值的输入;date,定义选取日、月、年的输入域;month,定义选取月、年的输入域;week,定义选取周、年的输入域;time,定义选取时、秒的输入域;datetime,定义选取时间、日月、年的输入域(UTC时间);datatime-local,定义选取时间、日月、年的输入域(本地时间)。

需要说明的是,如果在预设信息的表单中,用户对手机号码等涉密信息不进行预设,则可以随机产生与表单项的数据类型相对应的信息,例如,用户没有对手机号码进行预设,则随机产生以1开头的11为有效数字。同时,用户还可以通过预设信息的表单进行自定义信息的预设,且用户还可以进行置顶操作,则会优先处理用户自定义预设信息。

为了保证自动填入待填充的表单中的信息的正确性,在自动填充的时候还需要确定待填充的浏览器表单中的各表单项的类型,只有类型相匹配的预设信息才可以自动填充。

步骤S120,如果存在用户预设信息,则根据用户预设信息的类型和浏览器表单中的各表单项的类型,将用户预设信息作为测试数据填充到类型匹配的表单项中。

用户的预设信息可以作为浏览器表单中的测试数据,但是判断浏览器中存在用户预设信息后,还需要判断待填充的浏览器中的表单的各表单项的类型与存在预设信息的类型是否匹配,只有两者相匹配的情况下,才可以进行自动填充。例如,某一待填充的浏览器表单中有“电话号码”的表单项,其类型是电话号码的输入域,如果在用户预设信息中,有与该“电话号码”表单项相匹配的预设信息类型,则自动填充;如果没有与该“电话号码”表单项相匹配的预设信息类型,则不能自动填充。

步骤S130,如果浏览器表单中还存在未填充的表单项,则根据各表单项的类型生成相应类型的测试数据进行填充。

如果浏览器表单中还存在与预设信息的类型不匹配的表单项,没有被自动填充,则可以根据未填充的各表单项的类型随机生成与之相匹配的测试数据进行随机填充。因为对于测试过程来说,浏览器表单中填入的一些信息不一定是真实的,只要是数据格式正确即可。例如,这里的随机生成可以是:(1)生成手机号码:第一位是1;第二位是3/4/5/7/8的任意一位;后面9位随机生成0-9的数字即可。(2)生成身份证号码(ABCDEFYYYYMMDDXXXR):六位数字地址码;八位数字出生日期码;三位数字顺序码;一位数字校验码。(3)生成邮箱:随机生成用户名;用户名+随机邮箱后缀数组。(4)随机生成url:http:www+小写随机字符串+随机域名。

如果随机填充正确,用户可以直接确定,如果填充不正确,用户可以取消再次进行随机生成,或者用户直接手动填入正确的数据。

可见,本发明改善现有技术的测试中录制回放的模式,通过用户预设填充信息作为测试数据,对该浏览器打开的网址的浏览器表单均可实现自动填充的功能,省去人工填充的繁琐操作,增强用户的体验。

待填充的浏览器表单经过自动填充和随机生成数据填充是在浏览器表单中的各表单项的类型已知的情况下,如果待填充的浏览器表单中还存在类型未知的表单项时,在本发明的一个实施例中,图1所示的方法进一步包括:如果浏览器表单中还存在类型未知的表单项,则根据类型未知的表单项的属性描述信息生成相匹配的测试数据进行填充。这里的属性描述信息可以是:表单项的正则表达式、以及表单项的标识和/或名称。其中,正则表达式,又称规则表达式,正则表达式通常被用来检索、替换那些符合某个模式(规则)的文本,在这里可以指表单项中填入的数据的规则,根据这个规则可以知道该填入该表单项中的数据形式。所以,当表单项的属性描述信息包括:

(1)表单项的正则表达式。

则根据类型未知的表单项的属性描述信息生成相匹配的测试数据进行填充包括:根据类型未知的表单项的正则表达式生成符合正则表达式的测试数据进行填充。这里可以通过randexp.js根据date_type生成符合正则表达式的数据。例如,某一表单项的正则表达式是D1,则生成一个数字;如果是S1,则生成一个字符;如果是S1-S9,则生成九个字符的字符串。

(2)表单项的标识和/或名称。

则根据类型未知的表单项的属性描述信息生成相匹配的测试数据进行填充包括:根据类型未知的表单项的标识和/或名称生成符合所述标识和/或名称的文字含义的测试数据进行填充。也就是说分析该表单项的名称等标识进行填充。例如,表单项的名称是“邮件”,则可以在该表单项中填入邮件格式的数据。

这里的表单项的标识可以是:用户名(name);密码(password);证件号码cardcode;邮箱email;手机号码mobileNO.;年龄age;公司company等。

本发明中用户可以预设信息进行该浏览器中的浏览器表单的自动填充,这里用户可以通过浏览器中的预设信息插件进行信息预设。在本发明的一个实施例中,图1所示的方法进一步包括:在浏览器页面上提供用户预设信息配置控件,例如在浏览器的“设置”选项里增加预设信息配置控件;当该用户预设信息配置控件被触发时,例如用户通过鼠标右键点击该配置控件,则输出用户预设信息配置界面,当用户再次通过鼠标左键点击相应的预设信息配置界面中的某一输入框时,供用户输入用户预设信息;其中用户预设信息配置界面的各输入项对应不同的类型;为了在自动填充时可以与待填充的浏览器表单中的各表单项的类型进行匹配,将用户预设信息配置界面上的各输入项中的输入内容与对应输入项的类型对应同时保存,得到用户预设信息。

如果用户不希望该浏览器中的所有网站的浏览器表单都可以通过预设信息进行自动填充,或者某些指定的预设信息需要自动填充到某些指定的网站中,则用户可以在预设信息时,对某些预设信息或者对所有预设信息进行网站地址URL的设定,那么,进一步地,上述方法进一步包括:将用户预设信息与用户指定的URL进行绑定;对于待填充的浏览器表单,判断是否存在用户预设信息包括:判断是否存在所绑定的URL与所述待填充的浏览器表单的URL匹配的用户预设信息,是则确定对于待填充的浏览器表单,存在用户预设信息。否则不存在用户预设信息。

在浏览器中,浏览器表单中的各表单项都有各自的控件,该控件可以控制各表单项的填充、内容的判断,且该控件记录有各表单项的类型。所以,在本发明的一个实施例中,在步骤S110中的确定浏览器表单中的各表单项的类型包括:通过浏览器的控件识别功能,识别浏览器表单中的各表单项对应的控件的类型。

为了防止浏览器中的其他待填充的浏览器表单再次出现未知类型的表单项,在本发明的一个实施例中,图1所示的方法进一步包括:对于浏览器表单中的类型未知的表单项,根据最终填充到该表单项中内容学习该表单项的类型,并记录到表单项类型学习表中。经过自动填充后,如果在待填充的浏览器表单里存在类型未知的表单项,则需要进行学习的过程,记录相应的表单项的最终填充数据等信息。这里最终填充的数据是最终确认正确的数据。类型未知的表单项填充可以是随机生成的,也可以是用户直接手动填入的,又或者是随机生成不正确后,用户又手动填充的,所以,最终填充到该表单项中的测试内容是用户手动填入的内容或者是随机生成并填入的内容。

那么,在步骤S110中的确定浏览器表单中的各表单项的类型还包括:根据表单项类型学习表确定浏览器表单中的各表单项的类型。

图2示出了根据本发明一个实施例的一种测试中实现自动填充浏览器表单的装置的示意图。如图2所示,该实现自动填充浏览器表单的装置200包括:

预处理单元210,适于在应用测试过程中,对于待填充的浏览器表单,判断是否存在用户预设信息,以及确定浏览器表单中的各表单项的类型。

其中,浏览器表单,就是指在应用测试过程中,用户使用浏览器时,在浏览器中进行填充信息时的填充框,因为是在浏览器中形成的填充表格,在浏览器打开情况下出现的填充表格就称为浏览器表单。例如,用户需要通过用户名、密码、验证码登录某一网站时,登陆界面上用户进行信息填充的表格就是浏览器表单;或者用户在进行某网站账号的注册时进行基本信息填充时的长表格,也被称为浏览器表单。

如果没有自动填充功能,则需要用户进行人工填充,对于浏览器短表单,需要填充的内容较少,不会引起用户的负面情绪;但是对于浏览器长表单,如注册时填充的信息量较大,通过人工填充就会大大降低用户体验。

在本单元中,用户可以在浏览器中预设信息,在用户使用浏览器时,就可以将用户已经预设的信息自动填入待填充的浏览器表单中。在对待填充的浏览器表单进行填充之前,首先判断是否存在针对该待填充的浏览器表单的用户预设信息,如果存在的话,会优先从预设信息中选择与浏览器表单中的各表单项的类型相匹配的信息填入该待填充的浏览器表单中。

在用户预设信息的表单里包括:表单项的名字、对应各表单项的数据类型、匹配字符串、用户预设信息等内容,用户可以通过该预设信息的表单项的名字进行信息的预设,例如,表单项的名字可以是用户名、密码、手机号码、身份证号码、邮箱、地址等。

这里对应各表单项的数据类型可以是:password,密码域,跟文本框类似,但输入的内容显示圆点;radio,单选按钮,比如男或女;checkbox,复选框;file:上传域(视难易程度解决此类型);color,定义调色板;tel,定义电话号码的输入域;email,定义email的输入域;url,定义包含URl地址的输入域;search,定义搜索域;number,定义包含数值的输入域;range,定义包含一定范围内数字值的输入;date,定义选取日、月、年的输入域;month,定义选取月、年的输入域;week,定义选取周、年的输入域;time,定义选取时、秒的输入域;datetime,定义选取时间、日月、年的输入域(UTC时间);datatime-local,定义选取时间、日月、年的输入域(本地时间)。

需要说明的是,如果在预设信息的表单中,用户对手机号码等涉密信息不进行预设,则可以随机产生与表单项的数据类型相对应的信息,例如,用户没有对手机号码进行预设,则随机产生以1开头的11为有效数字。同时,用户还可以通过预设信息的表单进行自定义信息的预设,且用户还可以进行置顶操作,则会优先处理用户自定义预设信息。

为了保证自动填入待填充的表单中的信息的正确性,在自动填充的时候还需要确定待填充的浏览器表单中的各表单项的类型,只有类型相匹配的预设信息才可以自动填充。

填充处理单元220,适于当存在用户预设信息时,根据用户预设信息的类型和浏览器表单中的各表单项的类型,将用户预设信息作为测试数据填充到类型匹配的表单项中;如果浏览器表单中还存在未填充的表单项,则根据各表单项的类型生成相应类型的测试数据进行填充。

用户的预设信息可以作为浏览器表单中的测试数据,但是判断浏览器中存在用户预设信息后,还需要判断待填充的浏览器中的表单的各表单项的类型与存在预设信息的类型是否匹配,只有两者相匹配的情况下,才可以进行自动填充。例如,某一待填充的浏览器表单中有“电话号码”的表单项,其类型是电话号码的输入域,如果在用户预设信息中,有与该“电话号码”表单项相匹配的预设信息类型,则自动填充;如果没有与该“电话号码”表单项相匹配的预设信息类型,则不能自动填充。

如果浏览器表单中还存在与预设信息的类型不匹配的表单项,没有被自动填充,则可以根据未填充的各表单项的类型随机生成与之相匹配的测试数据进行随机填充。因为对于测试过程来说,浏览器表单中填入的一些信息不一定是真实的,只要是数据格式正确即可。例如,这里的随机生成可以是:(1)生成手机号码:第一位是1;第二位是3/4/5/7/8的任意一位;后面9位随机生成0-9的数字即可。(2)生成身份证号码(ABCDEFYYYYMMDDXXXR):六位数字地址码;八位数字出生日期码;三位数字顺序码;一位数字校验码。(3)生成邮箱:随机生成用户名;用户名+随机邮箱后缀数组。(4)随机生成url:http:www+小写随机字符串+随机域名。

如果随机填充正确,用户可以直接确定,如果填充不正确,用户可以取消再次进行随机生成,或者用户直接手动填入正确的数据。

可见,本发明改善现有技术的测试中录制回放的模式,通过用户预设填充信息作为测试数据,对该浏览器打开的网址的浏览器表单均可实现自动填充的功能,省去人工填充的繁琐操作,增强用户的体验。

待填充的浏览器表单经过自动填充和随机生成数据填充是在浏览器表单中的各表单项的类型已知的情况下,如果待填充的浏览器表单中还存在类型未知的表单项时,在本发明的一个实施例中,所述填充处理单元220,进一步适于如果浏览器表单中还存在类型未知的表单项,则根据类型未知的表单项的属性描述信息生成相匹配的测试数据进行填充。这里的属性描述信息可以是:表单项的正则表达式、以及表单项的标识和/或名称。其中,正则表达式,又称规则表达式,正则表达式通常被用来检索、替换那些符合某个模式(规则)的文本,在这里可以指表单项中填入的数据的规则,根据这个规则可以知道该填入该表单项中的数据形式。所以,当表单项的属性描述信息包括:

(1)表单项的正则表达式。

所述填充处理单元220,适于根据类型未知的表单项的正则表达式生成符合正则表达式的测试数据进行填充。这里可以通过randexp.js根据date_type生成符合正则表达式的数据。例如,某一表单项的正则表达式是D1,则生成一个数字;如果是S1,则生成一个字符;如果是S1-S9,则生成九个字符的字符串。

(2)表单项的标识和/或名称。

所述填充处理单元220,适于根据类型未知的表单项的标识和/或名称生成符合所述标识和/或名称的文字含义的测试数据进行填充。也就是说分析该表单项的名称等标识进行填充。例如,表单项的名称是“邮件”,则可以在该表单项中填入邮件格式的数据。

这里的表单项的标识可以是:用户名(name);密码(password);证件号码cardcode;邮箱email;手机号码mobileNO.;年龄age;公司company等。

图3示出了根据本发明另一个实施例的一种实现自动填充浏览器表单的装置的示意图。如图3所示,该实现自动填充浏览器表单的装置300包括:预处理单元310、填充处理单元320、用户预设信息处理单元330和类型学习单元340。其中,预处理单元310、填充处理单元320与图2所示的预处理单元210、填充处理单元220具有对应相同的功能,相同的部分在此不再赘述。

本发明中用户可以预设信息进行该浏览器中的浏览器表单的自动填充,这里用户可以通过浏览器中的预设信息插件进行信息预设。所以,用户预设信息处理单元330,适于在浏览器页面上提供用户预设信息配置控件,例如在浏览器的“设置”选项里增加预设信息配置控件;当该用户预设信息配置控件被触发时,例如用户通过鼠标右键点击该配置控件,输出用户预设信息配置界面,当用户再次通过鼠标左键点击相应的预设信息配置界面中的某一输入框时,供用户输入用户预设信息;其中用户预设信息配置界面的各输入项对应不同的类型;将用户预设信息配置界面上的各输入项中的输入内容与对应输入项的类型对应保存,得到用户预设信息。

如果用户不希望该浏览器中的所有网站的浏览器表单都可以通过预设信息进行自动填充,或者某些指定的预设信息需要自动填充到某些指定的网站中,则用户可以在预设信息时,对某些预设信息或者对所有预设信息进行网站地址URL的设定,那么,进一步地,用户预设信息处理单元330,适于将用户预设信息与用户指定的URL进行绑定。

所述预处理单元310,适于判断是否存所绑定的URL与所述待填充的浏览器表单的URL匹配的用户预设信息,是则确定对于待填充的浏览器表单,存在用户预设信息。否则不存在用户预设信息。

在浏览器中,浏览器表单中的各表单项都有各自的控件,该控件可以控制各表单项的填充、内容的判断,且该控件记录有各表单项的类型。所以,在本发明的一个实施例中,所述预处理单元310,适于通过浏览器的控件识别功能,识别浏览器表单中的各表单项对应的控件的类型。

为了防止浏览器中的其他待填充的浏览器表单再次出现未知类型的表单项,在本发明的一个实施例中,实现自动填充浏览器表单的装置300中的类型学习单元340,适于对于浏览器表单中的类型未知的表单项,根据最终填充到该表单项中内容学习该表单项的类型,并记录到表单项类型学习表中。经过自动填充后,如果在待填充的浏览器表单里存在类型未知的表单项,则需要进行学习的过程,记录相应的表单项的最终填充数据等信息。这里最终填充的数据是最终确认正确的数据。

类型未知的表单项填充可以是随机生成的,也可以是用户直接手动填入的,又或者是随机生成不正确后,用户又手动填充的,所以,最终填充到该表单项中的内容是用户手动填入的测试内容或者是随机生成并填入的内容。

那么,在本发明的一个实施例中,所述预处理单元310,还适于根据表单项类型学习表确定浏览器表单中的各表单项的类型。

综上所述,根据本发明的技术方案,在应用测试过程中,用户可以通过浏览器中插件在该浏览器中预设自动填充的信息,当用户测试该浏览器时,对于待填充的浏览器表单,判断是否存在用户预设信息,以及确定浏览器表单中的各表单项的类型;如果存在用户预设信息,则根据用户预设信息的类型和浏览器表单中的各表单项的类型,将用户预设信息填充到类型匹配的表单项中;如果浏览器表单中还存在未填充的表单项,则根据各表单项的类型生成相应类型的数据进行填充。可见,本发明改善现有技术的测试中录制回放的模式,通过用户预设填充信息作为测试数据,对该浏览器打开的网址的浏览器表单均可实现自动填充的功能,省去人工填充的繁琐操作,增强用户的体验。

需要说明的是:

在此提供的算法和显示不与任何特定计算机、虚拟装置或者其它设备固有相关。各种通用装置也可以与基于在此的示教一起使用。根据上面的描述,构造这类装置所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。

在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。

类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。

本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。

此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。

本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的实现自动填充浏览器表单的装置中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。

应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。

本发明公开了A1、一种测试中实现自动填充浏览器表单的方法,其中,该方法包括:

在应用测试过程中,对于待填充的浏览器表单,判断是否存在用户预设信息,以及确定浏览器表单中的各表单项的类型;

如果存在用户预设信息,则根据用户预设信息的类型和浏览器表单中的各表单项的类型,将用户预设信息作为测试数据填充到类型匹配的表单项中;

如果浏览器表单中还存在未填充的表单项,则根据各表单项的类型生成相应类型的测试数据进行填充。

A2、如A1所述的方法,其中,该方法进一步包括:

如果浏览器表单中还存在类型未知的表单项,则根据类型未知的表单项的属性描述信息生成相匹配的测试数据进行填充。

A3、如A2所述的方法,其中,

所述表单项的属性描述信息包括:表单项的正则表达式;

所述根据类型未知的表单项的属性描述信息生成相匹配的测试数据进行填充包括:根据类型未知的表单项的正则表达式生成符合正则表达式的测试数据进行填充。

A4、如A2所述的方法,其中,

所述表单项的属性描述信息包括:表单项的标识和/或名称;

所述根据类型未知的表单项的属性描述信息生成相匹配的测试数据进行填充包括:根据类型未知的表单项的标识和/或名称生成符合所述标识和/或名称的文字含义的测试数据进行填充。

A5、如A1所述的方法,其中,该方法进一步包括:

在浏览器页面上提供用户预设信息配置控件;

当该用户预设信息配置控件被触发时,输出用户预设信息配置界面,供用户输入用户预设信息;其中用户预设信息配置界面的各输入项对应不同的类型;

将用户预设信息配置界面上的各输入项中的输入内容与对应输入项的类型对应保存,得到用户预设信息。

A6、如A5所述的方法,其中,

该方法进一步包括:将用户预设信息与用户指定的URL进行绑定;

对于待填充的浏览器表单,判断是否存在用户预设信息包括:判断是否存在所绑定的URL与所述待填充的浏览器表单的URL匹配的用户预设信息,是则确定对于待填充的浏览器表单,存在用户预设信息。

A7、如A1所述的方法,其中,所述确定浏览器表单中的各表单项的类型包括:

通过浏览器的控件识别功能,识别浏览器表单中的各表单项对应的控件的类型。

A8、如A1所述的方法,其中,该方法进一步包括:

对于浏览器表单中的类型未知的表单项,根据最终填充到该表单项中内容学习该表单项的类型,并记录到表单项类型学习表中;

其中,最终填充到该表单项中的测试内容是用户手动填入的内容或者是随机生成并填入的内容。

A9、如A8所述的方法,其中,所述确定浏览器表单中的各表单项的类型还包括:

根据表单项类型学习表确定浏览器表单中的各表单项的类型。

本发明还公开了B10、一种测试中实现自动填充浏览器表单的装置,其中,该装置包括:

预处理单元,适于在应用测试过程中,对于待填充的浏览器表单,判断是否存在用户预设信息,以及确定浏览器表单中的各表单项的类型;

填充处理单元,适于当存在用户预设信息时,根据用户预设信息的类型和浏览器表单中的各表单项的类型,将用户预设信息作为测试数据填充到类型匹配的表单项中;如果浏览器表单中还存在未填充的表单项,则根据各表单项的类型生成相应类型的测试数据进行填充。

B11、如B10所述的装置,其中,

所述填充处理单元,进一步适于如果浏览器表单中还存在类型未知的表单项,则根据类型未知的表单项的属性描述信息生成相匹配的测试数据进行填充。

B12、如B11所述的装置,其中,

所述表单项的属性描述信息包括:表单项的正则表达式;

所述填充处理单元,适于根据类型未知的表单项的正则表达式生成符合正则表达式的测试数据进行填充。

B13、如B11所述的装置,其中,

所述表单项的属性描述信息包括:表单项的标识和/或名称;

所述填充处理单元,适于根据类型未知的表单项的标识和/或名称生成符合所述标识和/或名称的文字含义的测试数据进行填充。

B14、如B10所述的装置,其中,该装置进一步包括:

用户预设信息处理单元,适于在浏览器页面上提供用户预设信息配置控件;当该用户预设信息配置控件被触发时,输出用户预设信息配置界面,供用户输入用户预设信息;其中用户预设信息配置界面的各输入项对应不同的类型;将用户预设信息配置界面上的各输入项中的输入内容与对应输入项的类型对应保存,得到用户预设信息。

B15、如B14所述的装置,其中,

用户预设信息处理单元,适于将用户预设信息与用户指定的URL进行绑定;

所述预处理单元,适于判断是否存所绑定的URL与所述待填充的浏览器表单的URL匹配的用户预设信息,是则确定对于待填充的浏览器表单,存在用户预设信息。

B16、如B10所述的装置,其中,

所述预处理单元,适于通过浏览器的控件识别功能,识别浏览器表单中的各表单项对应的控件的类型。

B17、如B10所述的装置,其中,该装置进一步包括:

类型学习单元,适于对于浏览器表单中的类型未知的表单项,根据最终填充到该表单项中内容学习该表单项的类型,并记录到表单项类型学习表中;

其中,最终填充到该表单项中的测试内容是用户手动填入的内容或者是随机生成并填入的内容。

B18、如B17所述的装置,其中,

所述预处理单元,还适于根据表单项类型学习表确定浏览器表单中的各表单项的类型。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1