网站架构升级测试系统和方法

文档序号:9547113阅读:361来源:国知局
网站架构升级测试系统和方法
【技术领域】
[0001]本发明涉及网站架构升级,具体地涉及网站架构升级测试系统和方法。
【背景技术】
[0002]近年来,随着互联网行业的兴起,互联网产品也层出不穷,并已经逐渐成为当今社会信息交互的主要载体。随着用户数量的飞速增长,很多互联网产品原有的系统的性能和扩展性会遇到瓶颈,不得不每隔一段时间进行系统架构升级。架构升级通常是在不改变原有功能的前提下,对系统的底层架构进行调整和优化,对既有代码重新整理和优化,从而使升级后系统性能和扩展性更好。架构升级之后,最重要的就是功能测试。如何保证架构升级后的系统功能的可靠性已经成为许多大型互联网公司迫切需要解决的一个问题。
[0003]当前,互联网行业通常采用以下几种技术进行产品的功能测试:
[0004]Unit Test (单元测试):开发人员编写的一小段代码,用于检验被测代码的一个很小的、很明确的功能是否正确。通常而言,一个单元测试是用于判断某个特定条件(或者场景)下某个特定函数的行为;
[0005]集成测试(也叫组装测试):单元测试的逻辑扩展。它最简单的形式是把两个已经测试过的单元组合成一个组件,测试它们之间的接口。从这一层意义上讲,组件是指多个单元的集成聚合。在现实方案中,许多单元组合成组件,而这些组件又聚合为程序的更大部分。方法是测试片段的组合,并最终扩展成进程,将模块与其他组的模块一起测试。最后,将构成进程的所有模块一起测试;以及
[0006]回归测试:指修改了旧代码后,重新进行测试以确认修改没有引入新的错误或导致其他代码产生错误。回归测试作为软件生命周期的一个组成部分,在整个软件测试过程中占有很大的工作量比重,软件开发的各个阶段都会进行多次回归测试。
[0007]目前国内大部分互联网公司网站系统架构升级后,系统功能测试都是由开发人员的编写单元测试和集成测试,测试人员采用人工黑盒测试来完成的。互联网行业中产品的单元测试,集成测试等测试方法都是沿用了传统软件行业测试手段。但是对于网站架构升级来说,架构升级人员通常不是原有系统开发人员。因此难以全面评估出涉及到改动的功能点,并且既有代码重构后,单元测试的覆盖度也很难做到100%完全覆盖。因此,经常出现产品上线一段时间后才暴露出bug(漏洞)的情况。

【发明内容】

[0008]为了解决现有技术中存在的上述问题,本发明提出了一种网站架构升级测试系统和方法。
[0009]根据本发明的一个方面,提出了一种网站架构升级测试系统,包括:流量复制和控制单元,用于接收用户请求数据,并将接收到的用户请求数据复制为两份,并将两份用户请求数据分别发送到升级前的系统和升级后的系统;功能测试处理单元,用于基于升级前的系统和升级后的系统的输出结果进行测试。
[0010]优选地,所述流量复制和控制单元包括:
[0011]接收模块,用于接收用户请求数据,
[0012]复制模块,用于执行对用户请求数据的复制,以及
[0013]存储模块,用于存储用户请求数据。
[0014]优选地,所述代理模块容宿所述执行模块。
[0015]优选地,升级前的系统和升级后的系统并行连接在所述流量复制和控制单元与所述功能测试处理单元之间。
[0016]优选地,所述用户请求数据是超文本传输协议或安全超文本传输协议请求报文信息。
[0017]根据本发明的另一方面,提出了一种网站架构升级测试方法,包括:接收用户请求数据;将接收到的用户请求数据复制为两份,并将两份用户请求数据分别发送到升级前的系统和升级后的系统;基于升级前的系统和升级后的系统的输出结果进行测试。
[0018]优选地,所述方法还包括:存储用户请求数据。
[0019]优选地,所述用户请求数据是超文本传输协议或安全超文本传输协议请求报文信息。
[0020]根据本发明的上述技术方案,解决了网站架构升级后,功能测试效率低下,测试覆盖度不全面的问题。该方案的优点在于使用全量生产线的原生的用户请求数据和响应结果作为待测试系统的输入参数和标准输出值。相当于为架构升级后的系统打造了实时准生成环境,成功通过该方案测试的系统上线之后,理论上不会再出现bug,因为该系统已经提前接受了全量线上用户请求的考验。测试样本数相比于测试人员模拟的实验数据要丰富和真实的多。
【附图说明】
[0021]图1示出了根据本发明的网站架构升级测试系统的结构框图;
[0022]图2示出了根据本发明的网站架构升级测试方法的流程图;
[0023]图3示出了根据本发明的一种实施例的网站架构升级测试系统中的流量复制和控制单元的具体结构框图。
【具体实施方式】
[0024]以下参考附图对本发明进行具体描述。
[0025]首先,图1示出了根据本发明的网站架构升级测试系统100的结构框图。
[0026]所述网站架构升级测试系统100包括流量复制和控制单元110和功能测试处理单元120。所述流量复制和控制单元110和所述功能测试处理单元120之间连接待测系统(即升级后的系统)。
[0027]具体地,所述流量复制和控制单元110的输入端接收用户请求数据。所述流量复制和控制单元110然后将接收到的用户请求数据复制为两份。最后,流量复制和控制单元110经其输出端将两份用户请求数据分别发送到升级前的系统和升级后的系统。所述升级前的系统和升级后的系统并行连接在所述流量复制和控制单元110与所述功能测试处理单元120之间。
[0028]所述功能测试处理单元120在接收到升级前的系统和升级后的系统的输出结果后,基于所述输出结果进行测试。
[0029]在一种优选实施例中,所述流量复制和控制单元110包括:接收模块、复制模块和存储模块。其中,接收模块用于接收用户请求数据;复制模块用于执行对用户请求数据的复制;存储模块用于存储用户请求数据。
[0030]在一种更为优选的实施例中,所述代理模块容宿所述执行模块。
[0031]优选地,所述用户请求数据是
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1