一种在线测试系统和方法
【技术领域】
[0001]本发明涉及互联网领域,尤其涉及一种产品发布前的在线测试系统。
【背景技术】
[0002]在快速变化的互联网世界,产品的研发上线速度往往决定产品成败,甚至关系到公司的未来发展,而测试环节对于产品质量和后续改进就显得至关重要。测试贯穿于产品的研发、上线、运营的整个生命周期之中。通常,研发阶段包括了更为严谨的测试流程,而上线、运营阶段则缺乏对代码质量的必要数据支持。
[0003]A/B测试,是一种新兴的网页优化方法,可以用于增加转化率、注册率等网页指标。使用A/B测试首先需要建立一个测试页面(variat1n page),这个页面可能在标题字体,背景颜色,措辞等方面与原有页面(control page)有所不同,然后将这两个页面以随机的方式同时推送给所有浏览用户。接下来分别统计两个页面的用户转化率,即可清晰的了解到两种设计的优劣。传统的A/B解决了 A、B两个不同版本的用户喜欢程度问题。
【发明内容】
[0004]本发明的目的是提供一种在线测试系统,通过对全线发布前的不同版本进行测试,在全线发布前修复可能存在的问题。
[0005]本发明的第一个目的是提供一种在线测试系统,包括:
服务器,在服务器中设置有多个需要测试的版本的代码,各版本完整且可独立运行。
[0006]前端调度器,用于流量引导,使得少部分用户访问新版本,多数用户仍然访问老版本。
[0007]监控模块,用于对每个版本的运行进行实时监控,记录访问数据。
[0008]数据分析模块,用于分析每个版本的访问数据。
[0009]上述的一种在线测试系统,其中,数据分析模块采用谷歌的数据分析系统。
[0010]本发明的第二个目的是提供一种在线测试方法,通过上述的一种在线测试系统完成,至少包括以下步骤:
(1)通过发布系统,将多个需要测试的版本的代码发布到不同的目录;
(2)用户第一次访问,设置其中一个版本为默认版本,默认将前端调度器的根目录,定位到默认版本;
(3)使用统一入口页面,在页面中配置每个版本的权重;
(4)通过配置的权重,获取当前用户访问的版本号;
(5)将本次获得的版本号写入cookie中,后续访问,都会固定到cookie标示的版本;
(6)通过配置cookie的生存期来设定测试周期;
(7)用户第二次及后续访问,前端调度器判断cookie中存在版本号,则固定访问到这个版本;
(8)监控模块实时监控用户访问行为,记录访问数据; (9)数据分析模块分析每个版本的访问数据;
(10)通过分析出的不同版本的错误日志,在全线发布前修复可能存在的问题。
[0011]上述的一种在线测试方法,其中,所述步骤(8)还包括:在每个版本中分别设置不同的统计代码,所有客户的访问数据统一到每个版本的统计代码。
[0012]综上所述,本发明同时设计多个版本,针对不同用户访问随机测试不同版本,以便搜集各个版本的用户数据进行对比,从而更快速、更全面的对用户行为进行分析。
[0013]在产品发布过程中,通过前端调度器以流量递增的方式向少量用户逐步开放新产品,这过程中,通过对运行记录的实时监控,第一时间发现可能存在的问题,从而使得产品可能存在的质量问题,在造成大规模用户影响之前,得到最后的修复机会。
【附图说明】
[0014]图1是本发明一种在线测试系统和方法的流程图。
【具体实施方式】
[0015]下面结合附图对本发明的【具体实施方式】作详细介绍。
[0016]请参见图1,本发明提供了一种在线测试系统,包括:
服务器,在服务器中设置有多个需要测试的版本的代码。
[0017]前端调度器,用于流量引导,使得少部分用户访问新版本,多数用户仍然访问老版本。
[0018]监控模块,用于对每个版本的运行进行实时监控,记录访问数据。
[0019]数据分析模块,用于分析每个版本的访问数据,数据分析模块可采用谷歌的数据分析系统。
[0020]本发明在服务器端同时部署多个版本的代码,各版本完整且可独立运行,在新的代码版本上线后,用户并不会立即访问的新的代码版本。随后通过前端调度器进行流量引导,使得少部分用户访问新版本,多数用户仍然访问老版本,最终所有用户的访问均被导线新的版本进行访问。
[0021]本发明提供的一种在线测试方法,通过上述的线测试系统完成,至少包括以下步骤:
(1)通过发布系统,将多个需要测试的版本的代码发布到不同的目录。
[0022](2)用户第一次访问,设置其中一个版本为默认版本,默认将前端调度器的根目录,定位到默认版本。
[0023](3)使用统一入口页面,在页面中配置每个版本的权重;例如,A、B、C三个版本,版本A的权重为10%、版本B的权重为20%、版本C的权重为70%。
[0024](4)通过配置的权重,获取当前用户访问的版本号。
[0025](5)将本次获得的版本号写入cookie中,后续访问,都会固定到cookie标示的版本。
[0026](6)通过配置cookie的生存期来设定测试周期。
[0027](7)用户第二次及后续访问,前端调度器判断cookie中存在版本号,则固定访问到这个版本。
[0028](8 )在每个版本中分别设置不同的统计代码,监控模块实时监控用户访问行为,记录访问数据,所有客户的访问数据统一到每个版本的统计代码。
[0029](9 )数据分析模块分析每个版本的访问数据。
[0030](10)通过分析出的不同版本的错误日志,在全线发布前修复可能存在的问题。
[0031]本发明同时设计多个版本,针对不同用户访问随机测试不同版本,以便搜集各个版本的用户数据进行对比,从而更快速、更全面的对用户行为进行分析。
[0032]在产品发布过程中,通过前端调度器以流量递增的方式向少量用户逐步开放新产品,这过程中,通过对运行记录的实时监控,第一时间发现可能存在的问题,从而使得产品可能存在的质量问题,在造成大规模用户影响之前,得到最后的修复机会。
[0033]以上所述的实施例仅用于说明本专利的技术思想及特点,其目的在于使本领域内的技术人员能够了解本专利的内容并据以实施,不能仅以本实施例来限定本专利的专利范围,即凡依本专利所揭示的精神所作的同等变化或修饰,仍落在本专利的专利范围内。
【主权项】
1.一种在线测试系统,其特征在于,包括: 服务器,在服务器中设置有多个需要测试的版本的代码,各版本完整且可独立运行; 前端调度器,用于流量引导,使得少部分用户访问新版本,多数用户仍然访问老版本; 监控模块,用于对每个版本的运行进行实时监控,记录访问数据; 数据分析模块,用于分析每个版本的访问数据。2.根据权利要求1所述的一种在线测试系统,其特征在于,所述数据分析模块采用谷歌的数据分析系统。3.—种在线测试方法,其特征在于,通过权利要求1所述的一种在线测试系统完成,至少包括以下步骤: (1)通过发布系统,将多个需要测试的版本的代码发布到不同的目录; (2)用户第一次访问,设置其中一个版本为默认版本,默认将前端调度器的根目录,定位到默认版本; (3)使用统一入口页面,在页面中配置每个版本的权重; (4)通过配置的权重,获取当前用户访问的版本号; (5)将本次获得的版本号写入cookie中,后续访问,都会固定到cookie标示的版本; (6)通过配置cookie的生存期来设定测试周期; (7)用户第二次及后续访问,前端调度器判断cookie中存在版本号,则固定访问到这个版本; (8)监控模块实时监控用户访问行为,记录访问数据; (9)数据分析模块分析每个版本的访问数据; (10)通过分析出的不同版本的错误日志,在全线发布前修复可能存在的问题。4.根据权利要求2所述的一种在线测试方法,其特征在于,所述步骤(8)还包括:在每个版本中分别设置不同的统计代码,所有客户的访问数据统一到每个版本的统计代码。
【专利摘要】一种在线测试系统和方法,包括:服务器、前端调度器、监控模块、数据分析模块;本发明同时设计多个版本,针对不同用户访问随机测试不同版本,以便搜集各个版本的用户数据进行对比,从而更快速、更全面的对用户行为进行分析。在产品发布过程中,通过前端调度器以流量递增的方式向少量用户逐步开放新产品,这过程中,通过对运行记录的实时监控,第一时间发现可能存在的问题,从而使得产品可能存在的质量问题,在造成大规模用户影响之前,得到最后的修复机会。
【IPC分类】H04L12/26
【公开号】CN105262636
【申请号】CN201510565632
【发明人】文军
【申请人】摩贝(上海)生物科技有限公司
【公开日】2016年1月20日
【申请日】2015年9月8日