错误测试总体解决方案陕西贵金属交易中心有限公司2013-12-21目录一系统整体介绍............................................................................................................31系统要求.............................................................................................................32环境要求.............................................................................................................33架构特点及优势..................................................................................................34技术体系...........................................................................................................105架构图...............................................................................................................10二功能性测试..............................................................................................................111输入非法数据....................................................................................................112功能业务...........................................................................................................11三非功能性测试..........................................................................................................121压力测试...........................................................................................................122容量测试...........................................................................................................123安全性测试........................................................................................................124可维护性...........................................................................................................13四常见问题问答..........................................................................................................121断网..................................................................................................................122断电..................................................................................................................133数据非法输入....................................................................................................134系统承载能力不足.............................................................................................145公测..................................................................................................................14一系统整体介绍1系统要求类型描述操作系统windows2008x64数据库SQLServer2008容量500万用户2配置要求类型描述web服务IIS7.0支持框架.NETFramework4带宽100M独立五线(电信、联通、移动、铁通、教育网)带宽机房北京鲁谷机房(五星级)市电+UPS不间断电源+柴油发电机不间断供电服务器DELL刀片服务器(初期20台)交易平台客户端(虚点剔除)+后台管理+公用服务接口3架构特点及优势编号优势简述1数据集中磁盘阵列存储,实时备份2支持第三方应用扩展3可扩展的架构设计,系统容量可伸缩4传输协议经过加密处理,保证了数据的安全性5统一的账务服报表系统6支持多种平台接入,包括PC、手机、平板电脑7五星级机房,网络及硬件环境可靠85线宽带接入,网络承载能力强9服务集群,后台强大,系统可伸缩性强详细描述如下:1、数据集中存储,实时备份,可以方便的实现跨机房实时备份数据。数据完整性得到了最大的保障2、数据集中存储设备支持磁盘阵列,支持扩展,理论支持上百块硬盘,存储设备的IO速度能达到本地硬盘的10倍以上,大大的优化的数据库读写的瓶颈,实现高速交易3、大量使用缓存系统,配合高速读写IO的集中存储设备,交易下单的速度得到极大优化4、可扩展的架构设计,如果用户量增加到了系统瓶颈,前端只需要增加硬件设备,修改配置就能应对,不需要再修改软件系统5、支持第三方应用扩展,架构能方便的集中进移动端和web端,并可以开放第三方交易接口,接入第三方相关应用6、统一的账务服报表系统,把大量报表查询的压力分流到账务服,减轻主系统压力7、实时监控报警系统集成,从源头到交易服到行情付到前置,所以故障都能第一时间迅速报警出来(通过email和短信)采集统计8、与知名防火墙设备提供商合作,在系统层面就提供保护,防流量等各种攻击9、传输协议都是经过加密处理,保证了数据的安全性10、客户端代码经过了加密混淆的处理,防止被第三方恶意破解11、支持多种平台接入,包括PC、手机、平板电脑4技术体系技术体系技术架构先进性体现1)基于事件驱动的SOA架构2)基于消息的异步数据通信稳定性体现99%运行时间保证开发语言,工具1).netframework4.02)wcf3)asp.net4)jquery,ajax5)ObjectiveC6)XCode6)java7)visualstudio20108)eclipse数据库技术1)Sqlserver20082)sql数据缓存依赖3)MongoDB性能体现软件架构要求1)SOA架构2)缓存技术3)异步数据通讯硬件架构要求1)负载均衡架构2)全局域负载均衡3)CDN加速4)独立BGP出口IP5)SSL、VPN访问策略,维护策略6)DDOS应用级硬件防火墙冗余架构7)MPLS网络规划8)24小时数据库完全防灾部署高效性体现1)web层启用缓存2)可离线应用的中间层接口调用3)数据读写分离扩展和开放性体现基于SOA架构构建,各个业务单元之间的交互定义为服务,突出重用性,并降低耦合度,并更好的标准化行业内部流程。用户基于web服务接口的二次开发,完全具有可重用性,能够充分保护用户的研发投入。采用SOA架构体系的重用机制,基于模块化的低层服务,支持采用不同组合方式创建高层服务,从而实现服务重用,这些都使得企业IT部门的二次功能开发或是功能内嵌相当自由和灵活。而且,由于SOA体系提供了服务使用者不直接访问服务提供者等先进机制,这种服务实现方式的本身也可以灵活使用,进一步提升了业务重用的可用性和灵活性。安全性体现1)独立规划DMZ区域2)访问策略控制3)DDOS应用级硬件防火墙冗余架构4)独立维护专线5)24小时数据库完全防灾部署6)防页面注入式攻击策略7)网站源地址访问保护数据存储技术1)数据库缓存及优化2)读写分离3)分表/分库4)光纤存储架构5)存储异地备份策略6)2小时存储防灾完全替代策略7)使用EMC集中存储设备,基于windows集群的概念进行部署,实现单点故障无延迟的迁移8)针对交易数据的特点实施实时备份的机制,保证数据的完整缓存技术应用软件代码层面:系统缓存服务的基于Provider模式设计。已有了对Memcached缓存产品的实现和原生Asp.NetRuntimeCache的实现。基于Provider模式的设计可以使系统灵活方便的选择使用哪种缓存服务。5架构图说明:各个服务器承载的业务1、交易服务端+交易数据库:接收订单指令,风控引擎,订单匹配引擎,结算,用户数据和订单数据存储2、行情服务端:接收客户端行情数据的请求,历史数据的请求,web行情数据的请求(针对web端和手机端),负责行情数据接收,落地,历史数据生成3、行情数据库:历史数据存储4、行情源服务器:接收外盘行情源,报盘机,行情过滤5、数据中心:行情源头(可以汇通提供也可以采购第三方行情源头)6、账务服:结算之后汇总相关的用户结算数据,会员结算数据,用户订单数据,资金流水7、集中存储设备:集中数据存储,用于实时备份所有相关的数据8、前置服:订单路由,为每个用户匹配对应的交易服和行情服,在出故障时能迅速转移到备份服二功能性测试1输入非法数据主要测试输入或对非法的输入作出反应,我们可以给出一组不正确的输入来测试软件的这个能力。无论测试的是时GUI得输入还是API调用的参数,在进行测试时,都必须从输入的属性出发,一般考虑的属性有三点:1.1输入类型,输入无效的类型会产生错误信息;1.2输入长度,对于字符型,键入太多的字符会引起错误信息;1.3边界值,键入边界值或超出边界值的数据2测试方法:分别从输入数据的类型,输入数据的长度,输入数据的边界值等方面考虑。3测试信息的检查:除了考虑输入非法数据,还要留意错误信息本身,特别注意一下几点:3.1错误信息和错误一致;3.2错误信息的内容为空,用户不知道为什么出错;3.3显示的错误信息是给开发人员调用使用的,用户不明白;2功能业务详细测试各功能项是否包含我们的所有业务,逐条测试。三非功能性测试1压力测试压力测试也称为负载测试。1.1测试方法以系统实际运行并发数量的极限情况作为测试并发数量,进行并发测试1.2关注结果系统运行的正常性(是否中途运行失败)、系统CPU和MEM性能下降程度、系统事物响应速度(如TPS等参数)、系统特定功能模块的运行时间、系统运行日志是否记录有错误;2容量测试2.1测试方法容量测试关键是构造有效的测试数据。有效是指数据量的大小符合要