CN105579976A - 网页自动化测试方法及装置 - Google Patents

网页自动化测试方法及装置 Download PDF

Info

Publication number
CN105579976A
CN105579976A CN201480045943.4A CN201480045943A CN105579976A CN 105579976 A CN105579976 A CN 105579976A CN 201480045943 A CN201480045943 A CN 201480045943A CN 105579976 A CN105579976 A CN 105579976A
Authority
CN
China
Prior art keywords
interaction data
network interaction
server
terminal
inquiry
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.)
Granted
Application number
CN201480045943.4A
Other languages
English (en)
Other versions
CN105579976B (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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of CN105579976A publication Critical patent/CN105579976A/zh
Application granted granted Critical
Publication of CN105579976B publication Critical patent/CN105579976B/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
    • 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
    • G06F11/3692Test management for test results analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/554Detecting local intrusion or implementing counter-measures involving event detection and direct action
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/577Assessing vulnerabilities and evaluating computer system security
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/03Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
    • G06F2221/033Test or assess software
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2119Authenticating web pages, e.g. with suspicious links
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1433Vulnerability analysis

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Quality & Reliability (AREA)
  • Software Systems (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computing Systems (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

提供了一种网页自动化测试方法及装置,所述网页自动化测试方法通过网络代理模块获取浏览器发送给服务器的目标网络交互数据。然后,由网页自动化测试工具对所述目标网络交互数据进行校验。从而实现对浏览器或网页与服务器之间的网络交互的校验,对所述目标网络交互数据中的网络请求进行校验,提高发现网页缺陷的能力;以及,对服务器返回的响应消息进行校验,提高对网页显示的校验结果的准确率。

Description

网页自动化测试方法及装置 技术领域
本发明涉及网页测试技术领域,尤其涉及网页自动化测试方法及装置。
背景技术
网页是网络信息交流的重要平台,由于它承载的内容和功能具有多样性和不确定性的特点,就需要根据不同的应用需求和网络环境设计它的内容,为保证网页性能的可靠,也需要对设计后的网页进行测试。
网页自动化测试是对被测试网页的输入、输出进行自动化验证。目前,网页自动化测试工作通过网页自动化测试工具完成,网页自动化测试工具的工作原理是录制和回放,其中,录制是指利用网页自动化测试工具按时间顺序记录用户对浏览器、网页的操作,形成可识别的脚本;回放就是网页自动化测试工具读取之前录制好的脚本,模拟之前用户的行为,对浏览器、网页进行操作。根据上述测试流程可知,用户对浏览器、网页的操作是输入,操作的结果是输出,而且,随着网页内容的不同,操作结果也会发生变化。可见,网页的自动化测试就是模拟用户的输入,验证输出,即验证输入操作的结果。
在具体的网络环境中,用户通常在网络终端处通过浏览器操作网页,而网页的内容和功能需要由服务器支撑。因此,对于浏览器和服务器之间的数据交互,也是网页的一部分输入和输出。其中,浏览器向服务器发送的网络请求是输出;服务器反馈的响应是输入。这个交互过程影响网页的展示结果,也是测试的一部分。但是,按照目前的网页自动化测试方法,只能记录用户通过浏览器对网页的操作,不能记录浏览器或网页与服务器之间的操作,也无法验证服务器的响应。
缺少对网络请求的校验,必然导致发现网页缺陷的能力较低,甚至无法发现部分缺陷。例如,用户在网页的搜索框中输入字符“abc”,然后点击网页上的搜索按钮,而网页发出的网络请求中的搜索字符是“abc+空格”,网页最终显示的是搜索“abc+空格”得到的搜索内容,比搜索“abc”得到的搜索内容的范围小很多,目前的网页自动化测试方法无法发现此类问题。缺少对服务器的响应消息的校验,必然导致对网页显示的校验结果准确率降低,甚至部分页面由于缺少判断依据导致无法校验。
综上所述,目前的网页自动化测试方法发现网页缺陷的能力较低,且网页显示的 校验结果准确率低。
发明内容
本发明实施例中提供了一种网页自动化测试方法及装置,以解决现有技术中发现网页缺陷能力低,且网页显示的校验结果准确率低的问题。
为了解决上述技术问题,本发明实施例公开了如下技术方案:
第一方面,本发明提供一种网页自动化测试方法,包括:
终端获取所述终端与服务器之间的目标网络交互数据;所述目标网络交互数据包括所述终端发送给所述服务器的网络请求,以及所述终端接收到的所述服务器返回的响应消息;所述响应消息为所述服务器对所述终端发送的网络请求的响应;
终端对所述目标网络交互数据进行校验。
结合第一方面,在第一方面的第一种可能的实现方式中,所述终端获取所述终端与服务器之间的目标网络交互数据,包括:
终端从所述终端获得的所述终端与所述服务器之间的网络交互数据中,获取指定网络交互数据,所述指定网络交互数据为包含过滤关键字的网络交互数据;
终端从所述指定网络交互数据中,获取包含查询关键字的网络交互数据,得到所述目标网络交互数据;所述查询关键字包含所述过滤关键字的字符。
结合第一方面,在第一方面的第二种可能的实现方式中,所述终端获取所述终端与服务器之间的目标网络交互数据,包括:
终端从所述终端获得的所述终端与所述服务器之间的网络交互数据中,获取包含所述查询关键字的网络交互数据,得到目标网络交互数据。
结合第一方面,在第一方面的第三种可能的实现方式中,所述终端获取所述终端与服务器之间的目标网络交互数据,包括:
终端向所述服务器发送过滤关键字,所述过滤关键字用于使所述服务器从获得的所述终端与服务器之间的网络交互数据中获取指定网络交互数据,所述指定网络交互数据为包含所述过滤关键字的网络交互数据;
终端向所述服务器发送查询关键字,所述查询关键字用于使所述服务器从所述指定网络交互数据中获取目标网络交互数据,所述目标网络交互数据为包含所述查询关键字的网络交互数据;所述查询关键字至少包含所述过滤关键字的字符;
终端接收所述服务器发送的所述目标网络交互数据。
结合第一方面,在第一方面的第四种可能的实现方式中,所述终端获取所述终端与服务器之间的目标网络交互数据,包括:
终端向所述服务器发送查询关键字,所述查询关键字用于使所述服务器从获得的所述终端与所述服务器之间的网络交互数据中,获取目标网络交互数据,所述目标网络交互数据为包含所述查询关键字的网络交互数据;
终端接收所述服务器发送的所述目标网络交互数据。
第二方面,本发明还提供一种网页自动化测试方法,包括:
服务器获取所述服务器与终端之间的目标网络交互数据;所述目标网络交互数据包括所述服务器接收的所述终端发送的网络请求,以及所述服务器向所述终端发送的响应消息;所述响应消息为所述服务器对所述终端发送的网络请求的响应;
所述服务器向所述终端发送所述目标网络交互数据,所述目标网络交互数据用于所述终端对所述目标网络交互数据进行校验。
结合第二方面,在第二方面的第一种可能的实现方式中,所述服务器获取所述服务器与终端之间的目标网络交互数据,包括:
所述服务器接收所述终端发送的查询关键字;
所述服务器从获得的所述服务器与所述终端之间的网络交互数据中获取目标网络交互数据,所述目标网络交互数据为包含所述查询关键字的网络交互数据。
结合第二方面,在第二方面的第二种可能的实现方式中,所述服务器获取所述服务器与终端之间的目标网络交互数据,包括:
所述服务器接收所述终端发送的过滤关键字;
所述服务器从获得的所述服务器与所述终端之间的网络交互数据中获取指定网络交互数据,所述指定网络交互数据为包含所述过滤关键字的网络交互数据;
所述服务器接收所述终端发送的查询关键字;所述查询关键字包含所述过滤关键字的字符;
所述服务器从所述指定网络交互数据中获取目标网络交互数据,所述目标网络交互数据为包含所述查询关键字的网络交互数据。
第三方面,本发明提供一种网页自动化测试装置,应用于终端,包括:
获取单元,用于获取终端与服务器之间的目标网络交互数据;所述目标网络交互数据包括所述终端发送给所述服务器的网络请求,以及所述终端接收到的所述服务器返回的响应消息;所述响应消息为所述服务器对所述终端发送的网络请求的响应;
校验单元,用于对所述获取单元获得的所述目标网络交互数据进行校验。
结合第三方面,在第三方面的第一种可能的实现方式中,所述获取单元包括:
第一获取子单元,用于从获得的所述终端与所述服务器之间的网络交互数据中, 获取指定网络交互数据,所述指定网络交互数据为包含过滤关键字的网络交互数据;
第二获取子单元,用于从所述第一获取子单元获得的所述指定网络交互数据中,获取包含查询关键字的网络交互数据,得到所述目标网络交互数据;所述查询关键字包含所述过滤关键字的字符。
结合第三方面,在第三方面的第二种可能的实现方式中,所述获取单元包括:
第三获取子单元,用于从获得的所述终端与所述服务器之间的网络交互数据中,获取包含所述查询关键字的网络交互数据,得到目标网络交互数据。
结合第三方面,在第三方面的第三种可能的实现方式中,所述获取单元包括:发送子单元和接收子单元;
所述发送子单元,用于向所述服务器发送过滤关键字,所述过滤关键字用于使所述服务器从获得的所述终端与服务器之间的网络交互数据中获取指定网络交互数据,所述指定网络交互数据为包含所述过滤关键字的网络交互数据;
所述发送子单元,还用于向所述服务器发送查询关键字,所述查询关键字用于使所述服务器从所述指定网络交互数据中获取目标网络交互数据,所述目标网络交互数据为包含所述查询关键字的网络交互数据;所述查询关键字至少包含所述过滤关键字的字符;
所示接收子单元,用于接收所述服务器发送的所述目标网络交互数据。
结合第三方面,在第三方面的第四种可能的实现方式中,所述获取单元包括:发送子单元和接收子单元;
所述发送子单元,用于向所述服务器发送查询关键字,所述查询关键字用于使所述服务器从获得的所述终端与所述服务器之间的网络交互数据中,获取目标网络交互数据,所述目标网络交互数据为包含所述查询关键字的网络交互数据;
所述接收子单元,用于接收所述服务器发送的所述目标网络交互数据。
第四方面,本发明还提供一种终端,包括:
处理器,用于获取所述终端与服务器之间的目标网络交互数据;所述目标网络交互数据包括所述终端发送给所述服务器的网络请求,以及所述终端接收的所述服务器返回的响应消息;所述响应消息为所述服务器对所述终端发送的网络请求的响应;
所述处理器,还用于对所述目标网络交互数据进行校验。
结合第四方面,在第四方面的第一种可能的实现方式中,所述处理器具体用于:
从所述终端获得的所述终端与所述服务器之间的网络交互数据中,获取指定网络交互数据,所述指定网络交互数据为包含过滤关键字的网络交互数据;
从所述指定网络交互数据中,获取包含查询关键字的网络交互数据,得到所述目标网络交互数据;所述查询关键字包含所述过滤关键字的字符。
结合第四方面,在第四方面的第二种可能的实现方式中,所述处理器具体用于:
从所述终端获得的所述终端与所述服务器之间的网络交互数据中,获取包含所述查询关键字的网络交互数据,得到目标网络交互数据。
结合第四方面,在第四方面的第三种可能的实现方式中,还包括:发送器和接收器;所述发送器与所述处理器连接;所述接收器与所述处理器连接;
所述发送器,用于向所述服务器发送过滤关键字,所述过滤关键字用于使所述服务器从获得的所述终端与服务器之间的网络交互数据中获取指定网络交互数据,所述指定网络交互数据为包含所述过滤关键字的网络交互数据;
所述发送器,还用于向所述服务器发送查询关键字,所述查询关键字用于使所述服务器从所述指定网络交互数据中获取目标网络交互数据,所述目标网络交互数据为包含所述查询关键字的网络交互数据;所述查询关键字至少包含所述过滤关键字的字符;
所述接收器,用于接收所述服务器发送的所述目标网络交互数据,并将所述目标网络交互数据发送给所述处理器。
结合第四方面,在第四方面的第四种可能的实现方式中,还包括:发送器和接收器,所述发送器与所述处理器连接,所述接收器与所述处理器连接;
所述发送器,用于向所述服务器发送查询关键字,所述查询关键字用于使所述服务器从获得的所述终端与所述服务器之间的网络交互数据中获取目标网络交互数据,所述目标网络交互数据为包含所述查询关键字的网络交互数据;
所述接收器,用于接收所述服务器发送的所述目标网络交互数据,并将所述目标网络交互数据提供给所述处理器。
第五方面,本发明提供一种网页自动化测试装置,包括:
获取单元,用于获取服务器与终端之间的目标网络交互数据;所述目标网络交互数据包括所述服务器接收的所述终端发送的网络请求,以及所述服务器向所述终端发送的响应消息;所述响应消息为所述服务器对所述终端发送的网络请求的响应;
发送单元,用于向所述终端发送所述获取单元获得的所述目标网络交互数据,所述目标网络交互数据用于所述终端对所述目标网络交互数据进行校验。
结合第五方面,在第五方面的第一种可能的实现方式中,所述获取单元包括:接收子单元和获取子单元;
接收子单元,用于接收所述终端发送的查询关键字;
获取子单元,用于从获得的所述服务器与所述终端之间的网络交互数据中获取目标网络交互数据,所述目标网络交互数据为包含所述接收子单元接收到的所述查询关键字的网络交互数据。
结合第五方面,在第五方面的第二种可能的实现方式中,所述获取单元包括:接收子单元和获取子单元;
所述接收子单元,用于接收所述终端发送的过滤关键字;
所述获取子单元,用于从获得的所述服务器与所述终端之间的网络交互数据中获取指定网络交互数据,所述指定网络交互数据为包含所述接收子单元接收到的所述过滤关键字的网络交互数据;
所述接收子单元,还用于接收所述终端发送的查询关键字;所述查询关键字包含所述过滤关键字的字符;
所述获取子单元,还用于从所述指定网络交互数据中获取目标网络交互数据,所述目标网络交互数据为包含所述接收子单元接收到的所述查询关键字的网络交互数据。
第六方面,本发明提供一种服务器,包括处理器和发送器,所述发送器与所述处理器连接:
所述处理器,用于获取所述服务器与终端之间的目标网络交互数据;所述目标网络交互数据包括所述服务器接收的所述终端发送的网络请求,以及所述服务器向所述终端发送的响应消息;所述响应消息为所述服务器对所述终端发送的网络请求的响应;
所述发送器,用于向所述终端发送所述处理器获得的所述目标网络交互数据,所述目标网络交互数据用于所述终端对所述目标网络交互数据进行校验。
结合第六方面,在第六方面的第一种可能的实现方式中,还包括:接收器,所述接收器与所述处理器连接;
所述接收器,用于接收所述终端发送的查询关键字;
所述处理器,具体用于从获得的所述服务器与所述终端之间的网络交互数据中获取目标网络交互数据,所述目标网络交互数据为包含所述接收器发送的所述查询关键字的网络交互数据。
结合第六方面,在第六方面的第二种可能的实现方式中,还包括:接收器,所述接收器与所述处理器连接;
所述接收器,用于接收所述终端发送的过滤关键字;
所述处理器,具体用于从获得的所述服务器与所述终端之间的网络交互数据中获取指定网络交互数据,所述指定网络交互数据为包含所述接收器发送的所述过滤关键字的网络交互数据;
所述接收器,还用于接收所述终端发送的查询关键字;所述查询关键字包含所述过滤关键字的字符;
所述处理器,具体用于从所述指定网络交互数据中获取目标网络交互数据,所述目标网络交互数据为包含所述接收器发送的所述查询关键字的网络交互数据。
第七方面,本发明还提供一种计算机存储介质,所述计算机存储介质可存储有程序,该程序执行时包括如第一方面的任一种可能的实现方式所述的步骤。
第八方面,本发明还提供一种计算机存储介质,所述计算机存储介质可存储有程序,该程序执行时包括如第二方面的任一种可能的实现方式所述的步骤。
由以上技术方案可见,本发明实施例提供的网页自动化测试方法,终端获取自身内的浏览器与服务器之间的指定网络交互数据。然后,从所述指定网络交互数据中确定目标网络交互数据,并解析目标网络交互数据中的网络请求的参数,校验终端发送的网络请求是否正确,提高了发现网页缺陷的能力。以及,解析服务器返回的响应消息的参数,校验浏览器上网页显示的内容是否准确,提高网页显示的校验结果的准确率。
附图说明
构成本申请的一部分的说明书附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1示出了本发明实施例一种网络代理模块框图;
图2示出了本发明实施例一种网页自动化测试方法的流程示意图;
图3示出了本发明实施例一种图2中的S110的方法流程示意图;
图4示出了本发明实施例另一种图2中的S110的方法流程示意图;
图5示出了本发明实施例再一种图2中的S110的方法流程示意图;
图6示出了本发明实施例另一种网页自动化测试方法的流程示意图;
图7示出了本发明实施例又一种网页自动化测试方法的流程示意图;
图8示出了本发明实施例再一种网页自动化测试方法的流程示意图;
图9示出了本发明实施例一种网页自动化测试装置的结构示意图;
图10示出了本发明实施例另一种网页自动化测试装置的结构示意图;
图11示出了本发明实施例一种终端的结构示意图;
图12示出了本发明实施例另一种终端的结构示意图;
图13示出了本发明实施例一种服务器的结构示意图;
图14示出了本发明实施例一种服务器的结构示意图。
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
具体实施方式
为了使本领域技术人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所述描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参见图1,示出了本申请实施例提供的网络代理模块的结构款图,如图1所示,与传统的网络代理模块不同的是,除包括接收单元1和发送单元2之外,还包括过滤单元3、存储单元4和开放接口5。
过滤单元3具有对网络交互数据进行初步过滤的功能。浏览器在加载网页的过程中,会产生很多请求,例如,CSS(Cascading Style Sheets,叠层样式表)、JS(JavaScript)、图片、音乐、业务数据请求(例如,网页的表格中所包含的数据)等。网络代理模块需要将网页测试工程师关注的网络请求和响应消息保存下来,具体的,可以通过过滤单元3过滤得到所述网络请求和响应消息。存储单元4用于存储网络请求和响应消息,并通过开放接口5提供给网页自动化测试工具。
请参见图2,示出了本发明实施例提供的网页自动化测试方法的流程示意图,该方法应用于终端中,所述终端可以是PC机、笔记本电脑、平板电脑、智能手机等能够浏览网页的终端设备。
本实施例中的所述终端集成有网页自动化测试工具,其中,图1所示的网络代理模块获取终端与服务器之间的网络交互数据,然后,将网络交互数据提供给网页自动化测试工具。最后,由网页自动化测试工具对所述网络交互数据进行校验。
如图2所示,所述方法包括步骤S110~S120:
S110,终端获取所述终端与服务器之间的目标网络交互数据。
所述目标网络交互数据包括终端发送给服务器的网络请求,以及所述终端接收到 的所述服务器返回的响应消息;其中,所述响应消息是所述服务器对所述终端发送的网络请求的响应。
终端内的网页自动化测试工具启动网络代理模块,然后调用浏览器,并给浏览器设置好网络代理模块的地址。网页自动化测试工具操作浏览器,浏览器通过终端发出相应的网络请求,网络代理模块接收所述网络请求,并将所述网络请求转发给服务器;网络代理模块接收所述服务器返回的响应所述网络请求的响应消息后,所述网络代理模块将所述响应消息发送给所述浏览器的同时,复制并存储终端和服务器之间的目标网络交互数据。
当所述网络代理模块集成在所述网页自动化测试工具中时,网络自动化测试工具通过初始化的方式启动网络代理模块。当所述网络代理模块集成在终端的其它软件中,所述网络自动化测试工具通过启动命令启动网络代理模块。
网络工程师真正想测试的网络交互数据可能仅是终端与服务器之间的网络交互数据中的某一类网络交互数据。因此,终端只需要获取网页测试工程师真正想测试的网络交互数据。
例如,网页测试工程师利用终端内的网页自动化测试工具设置一个或多个查询关键字,通过网络代理模块的开放接口将查询关键字传递给网络代理模块,由所述网络代理模块从获得的所述终端与服务器之间的网络交互数据中获取目标网络交互数据,所述目标网络交互数据为包含所述查询关键字的网络交互数据。
S120,终端对所述目标网络交互数据进行校验。
网页自动化测试工具获得目标网络交互数据后,判断对浏览器或网页的操作与所述网络请求中的参数是否一致,如果一致,则表明浏览器或网页发出的网络请求准确;否则,表明浏览器或网页发出的网络请求不准确。例如,用户在网页的搜索栏中输入字符“abc”,获取终端发送给服务器的网络请求,判断网络请求与用户对网页的操作是否一致;网页自动化测试工具解析响应消息,判断解析得到的消息与网页显示的内容是否一致,从而对网页显示内容是否准确进行校验。
本实施例提供的网页自动化测试方法,终端通过网络代理模块获取所述终端与服务器之间的目标网络交互数据。然后通过网页自动化测试工具对所述目标网络交互数据中的网络请求进行校验,提高发现网页缺陷的能力;以及,对服务器返回的响应消息进行校验,提高对网页显示的校验结果的准确率。
本发明提供的实施例中,根据网络代理模块的集成位置不同,图2中的终端获取所述终端与服务器之间的目标网络交互数据的具体过程可以分为以下两大类:
(1)网络代理模块集成在终端侧
请参见图3,示出了本发明实施例一种获取目标网络交互数据的方法流程示意图,该方法应用于终端中,该方法通过过滤关键字和查询关键字获得目标网络交互数据。如图3所示,所述方法包括以下步骤:
S1111,从终端获得的网络交互数据中获取指定网络交互数据,指定网络交互数据为包含过滤关键字的网络交互数据。
网络代理模块从接收到的终端与服务器之间的网络交互数据中,过滤得到包含过滤关键字的网络交互数据,得到指定网络交互数据。
网络测试工程师可以通过网页自动化测试工具设置一个或多个过滤关键字,并通过网络代理模块的开放接口将所述过滤关键字传递给网络代理模块。网络代理模块只获取包含过滤关键字的网络交互数据,得到指定网络交互数据。即指定网络交互数据是终端与服务器之间的网络交互数据中的一部分。
网络代理模块判断接收到的所述终端和所述服务器之间的网络交互数据中是否包含过滤关键字,如果包含过滤关键字,则将包含所述过滤关键字的网络交互数据复制并存储到存储单元中;如果不包含过滤关键字,则对网络交互数据不进行任何处理。然后,继续判断下一对网络交互数据中是否包含过滤关键字。例如,过滤关键字为“wd=”,网络代理模块从接收到的所述终端与服务器之间的网络交互数据中过滤得到以下两对网络交互并存储到存储单元中:
网络请求1:
http://www.baidu.com/s?wd=1&rsv_bp=0&tn=baidu&rsv_spt=3&ie=utf-8&rsv_enter=1&rsv_sug3=2&rsv_sug4=16&rsv_sug1=1&rsv_sug2=0&inputT=864&rsv_sug=2;
相应的响应消息中也包含过滤关键字“wd=”,此处未示出所述响应消息。
网络请求2:
http://suggestion.baidu.com/su?wd=&cb=window.bdsug.sugPreRequest&sid=4301_1425_4414_4261_4202_4450_4587&t=1387161319508;
响应消息2:
window.bdsug.sugPreRequest({q:"",p:false,s:[]})。
本实施例中,如果过滤关键字为空,则所有的网络交互数据都不存储。
需要说明的是,网页测试工程师可以随时设置过滤关键字,例如,可以在启动网络代理模块时设置,还可以在网络代理模块运行一段时间之后再设置过滤关键字,网络代理模块在接收到过滤关键字之后,才对网络交互数据进行过滤,复制并保存包含 过滤关键字的网络交互数据。
S1112,从所述指定网络交互数据中获取得到目标网络交互数据。
所述目标网络交互数据为包含查询关键字的网络交互数据;所述查询关键字包含所述过滤关键字的字符。
网络测试工程师可以通过网页自动化测试工具设置查询关键字,并通过网络代理模块的开放接口将所述查询关键字传递给网络代理模块。
所述网络代理模块判断存储单元中存储的指定网络交互数据中,是否存在包含查询关键字的网络交互数据;如果存在包含查询关键字的网络交互数据,则将包含所述查询关键字的网络交互数据反馈给所述网页自动化测试工具,得到目标网络交互数据;如果不存在包含所述查询关键字的网络交互数据,则向网页自动化测试工具返回空。由此可知,目标网络交互数据是所述指定网络交互数据中的一部分网络交互数据。
延用上述的实例,网络代理模块保存了两对包含过滤关键字“wd=”的网络交互数据。假设查询关键字为“wd=1”,网络代理模块查询到存储单元中的网络请求1和响应消息1中包含“wd=1”则将网络请求1和响应消息1反馈给网页自动化测试工具。
本实施例提供的获取目标网络交互数据的方法,设定过滤关键字,终端内的网络代理模块从接收到的终端与服务器之间的网络交互数据中,获取指定网络交互数据;然后,设定查询关键字,由终端内的网络代理模块从获得的指定网络交互数据中获取目标网络交互数据。这样,所述网络代理模块的存储单元只需存储包含过滤关键字的网络交互数据,大大节省了存储空间。
在本发明的另一个实施例中,所述终端从获得的网络交互数据中,获取包含所述查询关键字的网络交互数据,得到目标网络交互数据。即终端仅通过查询关键字获得目标网络交互数据。
具体实施时,终端内的网络代理模块获取所述终端与服务器之间的网络交互数据,以及,复制所述网络交互数据并存储到存储单元中,当接收到网页自动化测试工具传递的查询关键字后,从存储单元中获取包含查询关键字的网络交互数据发送给网页自动化测试工具,以使所述网页自动化测试工具对目标网络交互数据中的网络请求及对应的响应消息进行验证。
(2)网络代理模块集成在服务器侧
请参见图4,示出了本发明实施例另一种获取目标网络交互数据的方法流程图,该方法应用于终端中,该方法与图3所示的实施例相似,如图4所示,所述方法可以 包括以下步骤:
S1121,终端向所述服务器发送过滤关键字。
所述过滤关键字用于使所述服务器从获得的所述终端与服务器之间的网络交互数据中获取指定网络交互数据,所述指定网络交互数据为包含所述过滤关键字的网络交互数据。
S1122,终端向所述服务器发送查询关键字。
所述查询关键字用于使所述服务器从所述指定网络交互数据中获取目标网络交互数据,所述目标网络交互数据为包含所述查询关键字的网络交互数据;所述查询关键字至少包含所述过滤关键字的字符。
S1123,终端接收所述服务器发送的所述目标网络交互数据。
终端与服务器之间的全部网络交互数据中,包含过滤关键字的网络交互数据为指定网络交互数据;指定网络交互数据中包含查询关键字的网络交互数据为目标网络交互数据。目标网络交互数据是网页自动化测试工具需要验证的网络交互数据,因此,只需将目标网络交互数据发送给终端,不需要将指定网络交互数据发送给终端。
本实施例提供的获取目标网络交互数据的方法,终端向服务器传递过滤关键字,使服务器从接收到的终端与服务器之间的网络交互数据中,只获取指定网络交互数据;然后,终端向服务器传递查询关键字,由服务器从获得的指定网络交互数据中获取目标网络交互数据。这样,服务器侧只需存储指定网络交互数据,大大节省了存储空间。
在本发明的另一个实施例中,仅设置查询关键字,服务器中的网络代理模块将接收到的所述服务器与所述终端之间的网络交互数据过滤得到目标网络交互数据,所述目标网络交互数据为包含所述查询关键字的网络交互数据。如图5所示,获取目标网络交互数据的方法包括以下步骤:
S1131,终端向所述服务器发送查询关键字,所述查询关键字用于使所述服务器从获得的网络交互数据中查询目标网络交互数据,所述目标网络交互数据为包含所述查询关键字的网络交互数据。
S1132,终端接收所述服务器发送的所述目标网络交互数据。
本实施例提供的获取目标网络交互数据的方法,终端向服务器传递查询关键字,使服务器从终端与服务器之间的网络交互数据中获取包含查询关键字的网络交互数据,并将包含查询关键字的网络交互数据反馈给终端。
请参见图6,示出了本发明实施例另一种网页自动化测试方法的流程示意图,该 方法应用于终端中,所述方法在图2所示实施例的基础上还可以包括步骤S210~S220;其中,图6中的S110~S120与图2所示相同,此处不再赘述。
S210,终端删除包含特征字符的网络交互数据。
具体实施时,若网络代理模块集成在终端内,终端内的网页自动化测试工具通过开放接口向终端内的网络代理模块发送删除指令,所述删除指令包含特征字符。当网络代理模块接收到所述删除指令时,删除包含所述特征字符的网络交互数据。
所述特征字符可以是一次网络请求或响应消息中的任何一段字符串,例如,当网页自动化测试工具对浏览器或网页的重复进行两次完全相同的操作,且需要对第二次操作的网络交互数据进行校验时,在进行第二次操作之前,需要删除上一次的网络请求和响应消息。
S220,终端删除获得的自身与服务器之间的全部网络交互数据。
若网络代理模块集成于终端内,终端内的网页自动化测试工具通过开放接口向网络代理模块发送清空指令,网络代理模块接收到所述清空指令后,清空存储单元中存储的全部网络交互数据,从而节省存储空间。
其中,不严格限定S210、S220的执行顺序,可以先执行S220,再执行S210。只要保证S210~S220在网络代理模块存储网络交互数据之后执行即可。
本实施例提供的网页自动化测试方法,能够删除终端内的网络代理模块中已经存储的特征的网络交互数据,而且,能够清空已存储的全部网络交互数据,从而节省网络代理模块的存储空间。
相应于上述的应用于终端的网页自动化测试方法实施例,若网络代理模块集成于服务器中,本发明还提供了应用于服务器侧的网页自动化测试方法实施例。
请参见图7,示出了本发明实施例另一种网页自动化测试方法的流程示意图,该方法应用于服务器中,如图7所示,所述方法包括以下步骤:
S310,服务器获取所述服务器与终端之间的目标网络交互数据。
所述目标网络交互数据包括所述服务器接收的所述终端发送的网络请求,以及所述服务器向所述终端发送的响应消息;所述响应消息为所述服务器对所述终端发送的网络请求的响应。
其中,S310可以通过以下两种方式实现:
(1)S310的第一种实现方式:
步骤1),服务器接收所述终端发送的查询关键字;
步骤2),服务器从获得的所述服务器与所述终端之间的网络交互数据中获取目 标网络交互数据,所述目标网络交互数据为包含所述查询关键字的网络交互数据。
终端侧设置查询关键字,服务器从获得的自身与所述终端之间的网络交互数据中过滤得到包含所述查询关键字的网络交互数据。
(2)S310的第二种实现方式:
步骤11),服务器接收所述终端发送的过滤关键字。
步骤12),服务器从获得的所述服务器与所述终端之间的网络交互数据中获取指定网络交互数据,所述指定网络交互数据为包含所述过滤关键字的网络交互数据。
步骤13),服务器接收所述终端发送的查询关键字;所述查询关键字包含所述过滤关键字的字符。
步骤14),服务器从所述指定网络交互数据中获取目标网络交互数据,所述目标网络交互数据为包含所述查询关键字的网络交互数据。
S320,服务器向所述终端发送所述目标网络交互数据,以使所述终端对所述目标网络交互数据进行校验。
本实施例提供的网页自动化测试方法,服务器获取自身与终端之间的目标网络交互数据,然后,将目标网络交互数据发送给终端,由终端对所述目标网络交互数据进行校验,从而实现对网页或浏览器的验证。
优选地,如图7所示,所述方法还可以包括:
S330,服务器接收所述终端发送的删除指令,所述删除指令包含特征字符。
S340,所述服务器根据所述删除指令删除包含所述特征字符的网络交互数据。
S350,服务器接收所述终端发送的清空指令。
S360,所述服务器删除存储的全部网络交互数据。
本实施例提供的服务器通过网络代理模块获取浏览器发送给服务器的指定网络交互数据。然后从所述指定网络交互数据中获取目标网络交互数据,并提供给网页自动化测试工具。由网页自动化测试工具对目标网络交互数据进行校验,从而实现对浏览器或网页与服务器之间的网络交互的校验,提高测试网页缺陷的能力。
上述的应用于网络代理模块中的方法实施例及应用于网页自动化测试工具中的方法实施例,可以全部集成到网页自动化测试工具中实现,也可以分别独立实现。
请参见图8,示出了网页自动化测试方法的流程示意图,如图8所示,所述方法包括以下步骤:
S410,网页自动化测试工具启动网络代理模块。
网页自动化测试工具集成在终端内。若网络代理模块集成在终端内的网页自动化 测试工具内,则网页自动化测试工具初始化网络代理模块;若网络代理模块集成在服务器中,网页自动化测试工具通过命令启动所述网络代理模块。
S420,网页自动化测试工具向网络代理模块中的过滤单元传递过滤关键字。例如,过滤关键字为“wd=”。
S430,网页自动化测试工具调用浏览器,并设置浏览器的代理地址。
S440,网页自动化测试工具操作网页,以使浏览器发出网络请求。
例如,网页自动化测试工具在浏览器上打开网页“http://www.baidu.com”,并通过百度搜索引擎搜索“1”,浏览器发送网络请求并接收服务器返回的响应消息,显示搜索结果页面。
S450,网络代理模块接收所述网络请求,并转发给相应的服务器。
S460,网络代理模块接收所述服务器返回的响应消息;所述响应消息为所述服务器对所述终端发送的网络请求的响应。
S470,网络代理模块判断所述网络请求和响应消息中是否包含所述过滤关键字,如果包含,则执行步骤S480;如果不包含,则执行步骤S490。
S480,网络代理模块复制所述网络请求和响应消息并保存到存储单元中。然后执行S490。
S490,网络代理模块将服务器返回的响应消息返回给浏览器。
S4100,网页自动化测试工具向所述过滤单元传递查询关键字。例如查询关键字为“wd=1”。
S4110,所述过滤单元判断存储单元中是否存在包含所述查询关键字的网络请求和响应消息,如果包含,则执行S4120;如果不包含,则执行S4130。从存储的网络交互数据中过滤出包含“wd=1”的网络交互数据。
S4120,将包含所述查询关键字的网络请求和响应消息返回给网页自动化测试工具。
如果存储单元中包含多对包含所述查询关键字的网络请求和响应消息,则只返回第一对包含查询关键字的网络请求和响应消息。
S4130,向网页自动化测试工具返回空。
S4140,网页自动化测试工具对接收到网络请求和响应消息进行校验。
然后,重复执行步骤S440~S4140,实现多对网络请求和响应消息的校验。
S4150,网页自动化测试工具向网络代理模块发送删除指令,所述删除指令包含特征字符。
S4160,所述网络代理模块根据所述删除指令删除包含所述特征字符的网络请求和对应的响应消息。
S4170,网页自动化测试工具向网络代理模块发送清空指令。
S4180,所述网络代理模块根据所述清空指令删除存储单元中的全部网络请求和响应消息。
相应于上述的网页自动化测试方法实施例,本发明还提供了网页自动化测试装置。
请参见图9,示出了本发明实施例一种网页自动化测试装置的结构示意图,该装置应用于终端,如图9所示,所述装置包括:获取单元110和校验单元120。
所示获取单元110,用于获取所述终端与服务器之间的目标网络交互数据。
本发明实施例中,可以通过网络代理模块获取所述终端与服务器之间的网络交互数据。
所述目标网络交互数据包括所述终端发送给所述服务器的网络请求,以及所述终端接收的所述服务器返回的响应消息;所述响应消息为所述服务器对所述终端发送的网络请求的响应;
在本发明的一个实施例中,所述网络代理模块集成在终端内,则所述获取单元可以包括:第一获取子单元和第二获取子单元。
所述第一获取子单元,用于从获得的所述终端与所述服务器之间的网络交互数据中,获取指定网络交互数据,所述指定网络交互数据为包含过滤关键字的网络交互数据;
所述第二获取子单元,用于从所述第一获取子单元获得的所述指定网络交互数据中,获取包含查询关键字的网络交互数据,得到所述目标网络交互数据;所述查询关键字包含所述过滤关键字的字符。
在本发明的另一个实施例中,所述网络代理模块集成在终端内,所述获取单元包括第三获取子单元;
所述第三获取子单元,用于从获得的所述终端与所述服务器之间的网络交互数据中,获取包含所述查询关键字的网络交互数据,得到目标网络交互数据。
在本发明的又一个实施例中,所述网络代理模块集成在服务器侧,所述获取单元包括:发送子单元和接收子单元;
所述发送子单元,用于向所述服务器发送过滤关键字,所述过滤关键字用于使所述服务器从获得的所述终端与服务器之间的网络交互数据中获取指定网络交互数据, 所述指定网络交互数据为包含所述过滤关键字的网络交互数据;
所述发送子单元,还用于向所述服务器发送查询关键字,所述查询关键字用于使所述服务器从所述指定网络交互数据中获取目标网络交互数据,所述目标网络交互数据为包含所述查询关键字的网络交互数据;所述查询关键字至少包含所述过滤关键字的字符;
所示接收子单元,用于接收所述服务器发送的所述目标网络交互数据。
在本发明的再一个实施例中,所述网络代理模块集成在服务器中,所述获取单元包括:发送子单元和接收子单元;
所述发送子单元,用于向所述服务器发送查询关键字,所述查询关键字用于使所述服务器从获得的所述终端与所述服务器之间的网络交互数据中,获取目标网络交互数据,所述目标网络交互数据为包含所述查询关键字的网络交互数据;
所述接收子单元,用于接收所述服务器发送的所述目标网络交互数据。
所述校验单元120,用于对所述获取单元110获得的所述目标网络交互数据进行校验。
本实施例提供的网页自动化测试装置,通过获取单元获取所述终端与服务器之间的目标网络交互数据。然后通过校验单元对所述目标网络交互数据中的网络请求进行校验,提高发现网页缺陷的能力;以及,对服务器返回的响应消息进行校验,提高对网页显示的校验结果的准确率。
相应于上述的应用于服务器的网页自动化测试方法实施例,本发明实施例还提供了应用于服务器的网页自动化测试装置实施例。
请参见图10,示出了本发明实施例另一种网页自动化测试装置的结构示意图,该装置应用于服务器中,所述装置包括:获取单元210和发送单元220。
所述获取单元210,用于获取服务器与终端之间的目标网络交互数据。
所述目标网络交互数据包括所述服务器接收的所述终端发送的网络请求,以及所述服务器向所述终端发送的响应消息;所述响应消息为所述服务器对所述终端发送的网络请求的响应。
在本发明的一个实施例中,所述获取单元210可以包括:接收子单元和获取子单元。
所述接收子单元,用于接收所述终端发送的查询关键字。
所述获取子单元,用于从获得的所述服务器与所述终端之间的网络交互数据中获取目标网络交互数据,所述目标网络交互数据为包含所述查询关键字的网络交互数 据。
在本发明另一个实施例中,所述获取单元210可以包括:接收子单元和获取子单元。
所述接收子单元,用于接收所述终端发送的过滤关键字。
所述获取子单元,用于从获得的所述服务器与所述终端之间的网络交互数据中获取指定网络交互数据,所述指定网络交互数据为包含接收子单元接收到的所述过滤关键字的网络交互数据。
所述接收子单元,还用于接收所述终端发送的查询关键字;所述查询关键字包含所述过滤关键字的字符。
所述获取子单元,还用于从所述指定网络交互数据中获取目标网络交互数据,所述目标网络交互数据为包含所述接收子单元接收到的所述查询关键字的网络交互数据。
所述发送单元220,用于向所述终端发送所述获取单元210获得的所述目标网络交互数据,所述目标网络交互数据用于所述终端对所述目标网络交互数据进行校验。
相应于上述的网页自动化测试装置实施例,本发明还提供了终端,所述终端包括:处理器;
所述处理器,用于获取所述终端与服务器之间的目标网络交互数据;以及,对所述目标网络交互数据进行校验。
所述目标网络交互数据包括所述终端发送给所述服务器的网络请求,以及所述终端接收的所述服务器返回的响应消息;所述响应消息为所述服务器对所述终端发送的网络请求的响应;
在本发明的一个实施例中,所述处理器具体用于:
从所述终端获得的所述终端与所述服务器之间的网络交互数据中,获取指定网络交互数据;所述指定网络交互数据为包含过滤关键字的网络交互数据;
从所述指定网络交互数据中,获取包含查询关键字的网络交互数据,得到所述目标网络交互数据;所述查询关键字包含所述过滤关键字的字符。
在本发明的另一个实施例中,所述处理器具体用于:从所述终端获得的所述终端与所述服务器之间的网络交互数据中,获取包含所述查询关键字的网络交互数据,得到目标网络交互数据。
请参见图11,示出了本发明实施例的另一种终端的结构示意图,所述终端内集成有网页自动化测试工具,如图11所示,所述终端包括:发送器330、处理器320 和接收器310,其中,所述发送器330与所述处理器320连接,所述接收器310与所述处理器320连接;
所述发送器330,用于向所述服务器发送过滤关键字,所述过滤关键字用于使所述服务器从获得的所述终端与服务器之间的网络交互数据中获取指定网络交互数据,所述指定网络交互数据为包含所述过滤关键字的网络交互数据。
所述服务器中集成有网络代理模块,通过网络代理模块获取所述终端与服务器之间的网络交互数据。
所述发送器330,还用于向所述服务器发送查询关键字,所述查询关键字用于使所述服务器从所述指定网络交互数据中获取目标网络交互数据,所述目标网络交互数据为包含所述查询关键字的网络交互数据;所述查询关键字至少包含所述过滤关键字的字符。
所述接收器310,用于接收所述服务器发送的所述目标网络交互数据。
所述处理器320,用于对所述接收器310接收到的所述目标网络交互数据进行校验。
请参见图12,示出了本发明实施例的又一种终端的结构示意图,如图12所示,所述终端包括:发送器430、处理器420和接收器410,其中,所述发送器430与所述处理器420连接,所述接收器410与所述处理器420连接。
所述发送器430,用于向所述服务器发送查询关键字,所述查询关键字用于使所述服务器从获得的所述终端与所述服务器之间的网络交互数据中获取目标网络交互数据,所述目标网络交互数据为包含所述查询关键字的网络交互数据;
所述接收器410,用于接收所述服务器发送的所述目标网络交互数据。
所述处理器420,用于对所述接收器410接收到的所述目标网络交互数据进行校验。
相应于上述的终端的实施例,本发明还提供了一种服务器,如图13所示,所述服务器包括:接收器510、处理器520和发送器530,其中,所述发送器530与所述处理器520连接,所述接收器510与所述处理器520连接。
所述接收器510,用于接收终端发送的查询关键字。
所述处理器520,具体用于从获得的所述服务器与所述终端之间的网络交互数据中获取目标网络交互数据。
所述目标网络交互数据为包含所述查询关键字的网络交互数据。所述目标网络交互数据包括所述服务器接收的所述终端发送的网络请求,以及所述服务器向所述终端 发送的响应消息;所述响应消息为所述服务器对所述终端发送的网络请求的响应。
所述发送器530,用于向所述终端发送所述处理器520获得的所述目标网络交互数据,以使所述终端对所述目标网络交互数据进行校验。
本实施例提供的服务器,通过接收器接收终端设置的查询关键字。通过内部集成的网络代理模块获取服务器与所述终端之间的网络交互数据中包含查询关键字的目标网络交互数据,并将所述目标网络交互数据发送给所述终端。由所述终端对所述目标网络交互数据进行校验,从而实现对网页或浏览器与服务器之间的网络交互数据的验证,提高了网页自动化测试工具的测试能力。
请参见图14,示出了本发明实施例另一种服务器的结构示意图,该服务器中集成有网络代理模块,如图14所示,所述服务器包括:接收器610、处理器620和发送器630,其中,所述发送器630与所述处理器620连接,所述接收器610与所述处理器620连接。
所述接收器610,用于接收所述终端发送的过滤关键字。
所述处理器620,用于从获得的所述服务器与所述终端之间的网络交互数据中获取指定网络交互数据。
所述指定网络交互数据为包含所述过滤关键字的网络交互数据。
所述接收器610,还用于接收所述终端发送的查询关键字。
所述查询关键字包含所述过滤关键字的字符。
所述处理器620,还用于从所述指定网络交互数据中获取目标网络交互数据,所述目标网络交互数据为包含所述接收器610接收到的所述查询关键字的网络交互数据。
所述发送器630,用于向所述终端发送所述处理器620获得的所述目标网络交互数据,所述目标网络交互数据用于所述终端对所述目标网络交互数据进行校验。
本实施例提供的服务器通过接收器接收终端发送的过滤关键字。通过内部集成的网络代理模块获取包含所述过滤关键字的指定网络交互数据;然后,所述接收器接收终端发送的查询关键字,并通过所述网络代理模块从所述指定网络交互数据中获取包含所述查询关键字的目标网络交互数据,并将所述目标网络交互数据发送给所述终端,由所述终端对所述目标网络交互数据进行校验,从而实现对网页或浏览器与服务器之间的网络交互数据的验证,提高了网页自动化测试工具的测试能力。
另一方面,本发明实施例还提供了一种计算机存储介质,所述计算机存储介质可存储有程序,该程序可以执行图2-图6所示的方法实施例。
又一方面,本发明实施例还提供了一种计算机存储介质,所述计算机存储介质可存储有程序,该程序可以执行图7所示的方法实施例。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
本发明可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本发明,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅是本发明的具体实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (26)

  1. 一种网页自动化测试方法,其特征在于,包括:
    终端获取所述终端与服务器之间的目标网络交互数据;所述目标网络交互数据包括所述终端发送给所述服务器的网络请求,以及所述终端接收到的所述服务器返回的响应消息;所述响应消息为所述服务器对所述终端发送的网络请求的响应;
    终端对所述目标网络交互数据进行校验。
  2. 根据权利要求1所述的方法,其特征在于,所述终端获取所述终端与服务器之间的目标网络交互数据,包括:
    终端从所述终端获得的所述终端与所述服务器之间的网络交互数据中,获取指定网络交互数据,所述指定网络交互数据为包含过滤关键字的网络交互数据;
    终端从所述指定网络交互数据中,获取包含查询关键字的网络交互数据,得到所述目标网络交互数据;所述查询关键字包含所述过滤关键字的字符。
  3. 根据权利要求1所述的方法,其特征在于,所述终端获取所述终端与服务器之间的目标网络交互数据,包括:
    终端从所述终端获得的所述终端与所述服务器之间的网络交互数据中,获取包含所述查询关键字的网络交互数据,得到目标网络交互数据。
  4. 根据权利要求1所述的方法,其特征在于,所述终端获取所述终端与服务器之间的目标网络交互数据,包括:
    终端向所述服务器发送过滤关键字,所述过滤关键字用于使所述服务器从获得的所述终端与服务器之间的网络交互数据中获取指定网络交互数据,所述指定网络交互数据为包含所述过滤关键字的网络交互数据;
    终端向所述服务器发送查询关键字,所述查询关键字用于使所述服务器从所述指定网络交互数据中获取目标网络交互数据,所述目标网络交互数据为包含所述查询关键字的网络交互数据;所述查询关键字至少包含所述过滤关键字的字符;
    终端接收所述服务器发送的所述目标网络交互数据。
  5. 根据权利要求1所述的方法,其特征在于,所述终端获取所述终端与服务器之间的目标网络交互数据,包括:
    终端向所述服务器发送查询关键字,所述查询关键字用于使所述服务器从获得的所述终端与所述服务器之间的网络交互数据中,获取目标网络交互数据,所述目标网络交互数据为包含所述查询关键字的网络交互数据;
    终端接收所述服务器发送的所述目标网络交互数据。
  6. 一种网页自动化测试方法,其特征在于,包括:
    服务器获取所述服务器与终端之间的目标网络交互数据;所述目标网络交互数据包括所述服务器接收的所述终端发送的网络请求,以及所述服务器向所述终端发送的响应消息;所述响应消息为所述服务器对所述终端发送的网络请求的响应;
    所述服务器向所述终端发送所述目标网络交互数据,所述目标网络交互数据用于所述终端对所述目标网络交互数据进行校验。
  7. 根据权利要求6所述的方法,其特征在于,所述服务器获取所述服务器与终端之间的目标网络交互数据,包括:
    所述服务器接收所述终端发送的查询关键字;
    所述服务器从获得的所述服务器与所述终端之间的网络交互数据中获取目标网络交互数据,所述目标网络交互数据为包含所述查询关键字的网络交互数据。
  8. 根据权利要求6所述的方法,其特征在于,所述服务器获取所述服务器与终端之间的目标网络交互数据,包括:
    所述服务器接收所述终端发送的过滤关键字;
    所述服务器从获得的所述服务器与所述终端之间的网络交互数据中获取指定网络交互数据,所述指定网络交互数据为包含所述过滤关键字的网络交互数据;
    所述服务器接收所述终端发送的查询关键字;所述查询关键字包含所述过滤关键字的字符;
    所述服务器从所述指定网络交互数据中获取目标网络交互数据,所述目标网络交互数据为包含所述查询关键字的网络交互数据。
  9. 一种网页自动化测试装置,应用于终端,其特征在于,包括:
    获取单元,用于获取终端与服务器之间的目标网络交互数据;所述目标网络交互数据包括所述终端发送给所述服务器的网络请求,以及所述终端接收到的所述服务器返回的响应消息;所述响应消息为所述服务器对所述终端发送的网络请求的响应;
    校验单元,用于对所述获取单元获得的所述目标网络交互数据进行校验。
  10. 根据权利要求9所述的装置,其特征在于,所述获取单元,包括:
    第一获取子单元,用于从获得的所述终端与所述服务器之间的网络交互数据中,获取指定网络交互数据,所述指定网络交互数据为包含过滤关键字的网络交 互数据;
    第二获取子单元,用于从所述第一获取子单元获得的所述指定网络交互数据中,获取包含查询关键字的网络交互数据,得到所述目标网络交互数据;所述查询关键字包含所述过滤关键字的字符。
  11. 根据权利要求9所述的装置,其特征在于,所述获取单元包括:
    第三获取子单元,用于从获得的所述终端与所述服务器之间的网络交互数据中,获取包含所述查询关键字的网络交互数据,得到目标网络交互数据。
  12. 根据权利要求9所述的装置,其特征在于,所述获取单元包括:发送子单元和接收子单元;
    所述发送子单元,用于向所述服务器发送过滤关键字,所述过滤关键字用于使所述服务器从获得的所述终端与服务器之间的网络交互数据中获取指定网络交互数据,所述指定网络交互数据为包含所述过滤关键字的网络交互数据;
    所述发送子单元,还用于向所述服务器发送查询关键字,所述查询关键字用于使所述服务器从所述指定网络交互数据中获取目标网络交互数据,所述目标网络交互数据为包含所述查询关键字的网络交互数据;所述查询关键字至少包含所述过滤关键字的字符;
    所示接收子单元,用于接收所述服务器发送的所述目标网络交互数据。
  13. 根据权利要求9所述的装置,其特征在于,所述获取单元包括:发送子单元和接收子单元;
    所述发送子单元,用于向所述服务器发送查询关键字,所述查询关键字用于使所述服务器从获得的所述终端与所述服务器之间的网络交互数据中,获取目标网络交互数据,所述目标网络交互数据为包含所述查询关键字的网络交互数据;
    所述接收子单元,用于接收所述服务器发送的所述目标网络交互数据。
  14. 一种终端,其特征在于,包括:
    处理器,用于获取所述终端与服务器之间的目标网络交互数据;所述目标网络交互数据包括所述终端发送给所述服务器的网络请求,以及所述终端接收的所述服务器返回的响应消息;所述响应消息为所述服务器对所述终端发送的网络请求的响应;
    所述处理器,还用于对所述目标网络交互数据进行校验。
  15. 根据权利要求14所述的终端,其特征在于:所述处理器具体用于:
    从所述终端获得的所述终端与所述服务器之间的网络交互数据中,获取指定网络交互数据,所述指定网络交互数据为包含过滤关键字的网络交互数据;
    从所述指定网络交互数据中,获取包含查询关键字的网络交互数据,得到所 述目标网络交互数据;所述查询关键字包含所述过滤关键字的字符。
  16. 根据权利要求14所述的终端,其特征在于,所述处理器具体用于:
    从所述终端获得的所述终端与所述服务器之间的网络交互数据中,获取包含所述查询关键字的网络交互数据,得到目标网络交互数据。
  17. 根据权利要求14所述的终端,其特征在于,还包括:发送器和接收器;所述发送器与所述处理器连接;所述接收器与所述处理器连接;
    所述发送器,用于向所述服务器发送过滤关键字,所述过滤关键字用于使所述服务器从获得的所述终端与服务器之间的网络交互数据中获取指定网络交互数据,所述指定网络交互数据为包含所述过滤关键字的网络交互数据;
    所述发送器,还用于向所述服务器发送查询关键字,所述查询关键字用于使所述服务器从所述指定网络交互数据中获取目标网络交互数据,所述目标网络交互数据为包含所述查询关键字的网络交互数据;所述查询关键字至少包含所述过滤关键字的字符;
    所述接收器,用于接收所述服务器发送的所述目标网络交互数据,并将所述目标网络交互数据发送给所述处理器。
  18. 根据权利要求14所述的终端,其特征在于,还包括:发送器和接收器,所述发送器与所述处理器连接,所述接收器与所述处理器连接;
    所述发送器,用于向所述服务器发送查询关键字,所述查询关键字用于使所述服务器从获得的所述终端与所述服务器之间的网络交互数据中获取目标网络交互数据,所述目标网络交互数据为包含所述查询关键字的网络交互数据;
    所述接收器,用于接收所述服务器发送的所述目标网络交互数据,并将所述目标网络交互数据提供给所述处理器。
  19. 一种网页自动化测试装置,其特征在于,包括:
    获取单元,用于获取服务器与终端之间的目标网络交互数据;所述目标网络交互数据包括所述服务器接收的所述终端发送的网络请求,以及所述服务器向所述终端发送的响应消息;所述响应消息为所述服务器对所述终端发送的网络请求的响应;
    发送单元,用于向所述终端发送所述获取单元获得的所述目标网络交互数据,所述目标网络交互数据用于所述终端对所述目标网络交互数据进行校验。
  20. 根据权利要求19所述的装置,其特征在于,所述获取单元包括:接收子单元和获取子单元;
    接收子单元,用于接收所述终端发送的查询关键字;
    获取子单元,用于从获得的所述服务器与所述终端之间的网络交互数据中获 取目标网络交互数据,所述目标网络交互数据为包含所述接收子单元接收到的所述查询关键字的网络交互数据。
  21. 根据权利要求19所述的装置,其特征在于,所述获取单元包括:接收子单元和获取子单元;
    所述接收子单元,用于接收所述终端发送的过滤关键字;
    所述获取子单元,用于从获得的所述服务器与所述终端之间的网络交互数据中获取指定网络交互数据,所述指定网络交互数据为包含所述接收子单元接收到的所述过滤关键字的网络交互数据;
    所述接收子单元,还用于接收所述终端发送的查询关键字;所述查询关键字包含所述过滤关键字的字符;
    所述获取子单元,还用于从所述指定网络交互数据中获取目标网络交互数据,所述目标网络交互数据为包含所述接收子单元接收到的所述查询关键字的网络交互数据。
  22. 一种服务器,其特征在于,包括处理器和发送器,所述发送器与所述处理器连接:
    所述处理器,用于获取所述服务器与终端之间的目标网络交互数据;所述目标网络交互数据包括所述服务器接收的所述终端发送的网络请求,以及所述服务器向所述终端发送的响应消息;所述响应消息为所述服务器对所述终端发送的网络请求的响应;
    所述发送器,用于向所述终端发送所述处理器获得的所述目标网络交互数据,所述目标网络交互数据用于所述终端对所述目标网络交互数据进行校验。
  23. 根据权利要求22所述的服务器,其特征在于,还包括:接收器,所述接收器与所述处理器连接;
    所述接收器,用于接收所述终端发送的查询关键字;
    所述处理器,具体用于从获得的所述服务器与所述终端之间的网络交互数据中获取目标网络交互数据,所述目标网络交互数据为包含所述接收器发送的所述查询关键字的网络交互数据。
  24. 根据权利要求22所述的服务器,其特征在于,还包括:接收器,所述接收器与所述处理器连接;
    所述接收器,用于接收所述终端发送的过滤关键字;
    所述处理器,具体用于从获得的所述服务器与所述终端之间的网络交互数据中获取指定网络交互数据,所述指定网络交互数据为包含所述接收器发送的所述过滤关键字的网络交互数据;
    所述接收器,还用于接收所述终端发送的查询关键字;所述查询关键字包含所述过滤关键字的字符;
    所述处理器,具体用于从所述指定网络交互数据中获取目标网络交互数据,所述目标网络交互数据为包含所述接收器发送的所述查询关键字的网络交互数据。
  25. 一种计算机存储介质,其特征在于,所述计算机存储介质可存储有程序,该程序执行时包括如权利要求1至5任一项所述的步骤。
  26. 一种计算机存储介质,其特征在于,所述计算机存储介质可存储有程序,该程序执行时包括如权利要求6至8任一项所述的步骤。
CN201480045943.4A 2014-09-03 2014-09-03 网页自动化测试方法及装置 Active CN105579976B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2014/085876 WO2016033765A1 (zh) 2014-09-03 2014-09-03 网页自动化测试方法及装置

Publications (2)

Publication Number Publication Date
CN105579976A true CN105579976A (zh) 2016-05-11
CN105579976B CN105579976B (zh) 2018-07-20

Family

ID=55439013

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201480045943.4A Active CN105579976B (zh) 2014-09-03 2014-09-03 网页自动化测试方法及装置

Country Status (4)

Country Link
US (1) US20170277622A1 (zh)
EP (1) EP3179370A4 (zh)
CN (1) CN105579976B (zh)
WO (1) WO2016033765A1 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110716856A (zh) * 2019-08-23 2020-01-21 北京顺丰同城科技有限公司 一种分布式系统子模块交互测试方法及装置
CN111107399A (zh) * 2018-10-25 2020-05-05 武汉斗鱼网络科技有限公司 关注列表优化方法、存储介质、设备及系统
CN112910722A (zh) * 2019-12-04 2021-06-04 北京达佳互联信息技术有限公司 网络请求测试方法、装置、终端及存储介质
CN114143386A (zh) * 2021-11-23 2022-03-04 广州三七极创网络科技有限公司 一种基于quic协议的通信方法、系统、设备及存储介质

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10534512B2 (en) * 2015-03-04 2020-01-14 Tata Consultancy Services Limited System and method for identifying web elements present on a web-page
US20230316229A1 (en) * 2022-03-10 2023-10-05 Atlassian Pty Ltd Systems and methods for integrating computer applications
CN114679402A (zh) * 2022-03-25 2022-06-28 武汉联影智融医疗科技有限公司 一种医疗机器人上下位机间通信协议的测试方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040078693A1 (en) * 2002-03-22 2004-04-22 Kellett Stephen Richard Software testing
CN103092748A (zh) * 2011-11-07 2013-05-08 阿里巴巴集团控股有限公司 一种确定需要进行回归测试的测试用例的方法及系统
CN103562927A (zh) * 2011-05-31 2014-02-05 惠普发展公司,有限责任合伙企业 自动化安全测试

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1086426B1 (en) * 1998-06-19 2006-11-15 Sun Microsystems, Inc. Scalable proxy servers with plug in filters
US6360332B1 (en) * 1998-06-22 2002-03-19 Mercury Interactive Corporation Software system and methods for testing the functionality of a transactional server
US6826602B1 (en) * 2002-09-12 2004-11-30 Bellsouth Intellectual Property Corporation System and method for reverse content distribution
EP1829285A4 (en) * 2004-12-22 2008-05-14 Research In Motion Ltd SYSTEM AND METHOD FOR INCREASING NETWORK NAVIGATION SPEED BY INSTALLING A PROXY SERVER ON A PORTABLE DEVICE
US8924558B2 (en) * 2005-11-30 2014-12-30 John Nicholas and Kristin Gross System and method of delivering content based advertising
CN101193007A (zh) * 2006-11-28 2008-06-04 国际商业机器公司 统一资源定位符命令测试方法、场景测试方法和相应设备
CN103067214B (zh) * 2011-10-19 2016-08-03 阿里巴巴集团控股有限公司 用于测试网站性能的方法、客户端、服务器和系统
CN103593354B (zh) * 2012-08-15 2018-09-07 腾讯科技(深圳)有限公司 一种过滤网络页面广告的方法、装置、服务器及系统
US9117027B2 (en) * 2012-09-03 2015-08-25 Tata Consultancy Services Limited Method and system for compliance testing in a cloud storage environment
US9256511B2 (en) * 2012-09-04 2016-02-09 International Business Machines Corporation Computer software application self-testing
US20140089468A1 (en) * 2012-09-27 2014-03-27 Donald Joong Request-agnostic caching for a data resource collection
CN103873318B (zh) * 2012-12-18 2018-02-13 阿里巴巴集团控股有限公司 一种网站自动化测试方法及自动化测试系统
US8954495B2 (en) * 2013-01-04 2015-02-10 Netfilx, Inc. Proxy application with dynamic filter updating
US10002191B2 (en) * 2013-12-31 2018-06-19 Google Llc Methods, systems, and media for generating search results based on contextual information

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040078693A1 (en) * 2002-03-22 2004-04-22 Kellett Stephen Richard Software testing
CN103562927A (zh) * 2011-05-31 2014-02-05 惠普发展公司,有限责任合伙企业 自动化安全测试
CN103092748A (zh) * 2011-11-07 2013-05-08 阿里巴巴集团控股有限公司 一种确定需要进行回归测试的测试用例的方法及系统

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111107399A (zh) * 2018-10-25 2020-05-05 武汉斗鱼网络科技有限公司 关注列表优化方法、存储介质、设备及系统
CN110716856A (zh) * 2019-08-23 2020-01-21 北京顺丰同城科技有限公司 一种分布式系统子模块交互测试方法及装置
CN112910722A (zh) * 2019-12-04 2021-06-04 北京达佳互联信息技术有限公司 网络请求测试方法、装置、终端及存储介质
CN112910722B (zh) * 2019-12-04 2022-07-22 北京达佳互联信息技术有限公司 网络请求测试方法、装置、终端及存储介质
CN114143386A (zh) * 2021-11-23 2022-03-04 广州三七极创网络科技有限公司 一种基于quic协议的通信方法、系统、设备及存储介质

Also Published As

Publication number Publication date
US20170277622A1 (en) 2017-09-28
CN105579976B (zh) 2018-07-20
EP3179370A4 (en) 2017-09-13
WO2016033765A1 (zh) 2016-03-10
EP3179370A1 (en) 2017-06-14

Similar Documents

Publication Publication Date Title
CN105579976A (zh) 网页自动化测试方法及装置
CN107783899B (zh) 应用程序中h5页面的测试方法、装置和计算机设备
CN104699598B (zh) 自动化测试方法、装置、设备及系统
US9161238B2 (en) Mobile device monitoring and testing
CN108345543B (zh) 一种数据处理方法、装置、设备及存储介质
CN105868105A (zh) 一种应用遍历测试方法、设备及移动终端
CN110768872B (zh) 巡检方法、系统、装置、计算机设备和存储介质
CN103823754A (zh) 一种实现自动测试的方法及装置
CN108920364A (zh) 软件缺陷定位方法、装置、终端及计算机可读存储介质
CN107085549B (zh) 故障信息生成的方法和装置
CN106776318A (zh) 一种测试脚本录制方法及系统
CN110798380A (zh) 一种数据获取方法、系统、装置、测试设备及测试服务器
CN105657781A (zh) 接入WiFi网络的方法及装置
CN107391518A (zh) 统计页面加载性能信息的系统、方法及装置
CN103577426B (zh) 用于提供搜索建议的附加应用信息的方法、装置与系统
CN109542754B (zh) 移动设备的接入方法、应用程序的调试方法、装置和系统
CN105323748B (zh) 一种测试错误上传方法及装置
CN103885878A (zh) 一种生成浏览器测试脚本的方法及装置
CN109460365B (zh) 一种系统性能测试方法、装置、设备及存储介质
US9749397B2 (en) Methods, systems, and computer-readable media for testing applications on a handheld device
RU2669172C2 (ru) Способ и система мониторинга согласованности веб-сайта
US9922079B2 (en) Information processing apparatus, for assisting user in setting an appropriate search condition
CN111367703B (zh) 故障排查方法及装置
CN112601129B (zh) 视频交互系统、方法和接收端
CN105791043A (zh) 一种业务网络服务体验质量自动评价方法及系统

Legal Events

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