软件测试tip

2020-08-14 16:33:03 浏览数 (1)

分层的变化:界面层,接口层,业务逻辑层,实体模型层

部署的变化:从单机运行到双机热备份再到负载均衡,最近进化到分布式系统。

存储的变化:关系型数据库,非关系型数据库,缓存数据库,搜索引擎数据库

Database -> Component->Service->API->UI

Cache|SearchEngine Database|NoSQL->Message Queue->APP Server->WEB SERVER-> CDN

浏览器->WEB服务器->APP服务器->缓存->数据库,中间会经过各种代理,负载均衡,分布式文件系统等等

CDN测试,域名解析测试,

WEB UI测试,包括HTML,Ajax

API 服务器测试,api 是非人机交互界面,它是通过特定协议与API服务器交互通信。

代码单元测试

配置测试,配置管理过程中配置变更后的测试,含系统与应用

安全测试,接口安全,认证,权限

注入测试,JS注入,SQL 注入,Shell 注入

缓存测试,命中率测试,包括CDN,WEB服务器,缓存服务器,搜索引擎

压力测试,健壮性测试

扩展性测试,水平扩展测试,垂直扩展测试

高可用测试,集群测试

压力测试环境

首先准备测试环境,如单机测试要考虑CPU速度,磁盘IO速度,RAID卡的速度,RAID卡缓存大小,内存速度,PCI—E总线速度,甚至会涉及多对称CPU相关配置,内存与CPU通道的问题......等等

如果是测试分布式系统,除了上述单节点的注意事项,还要考虑到路由器/防火墙的包转发与连接数限制,交换机的背板带宽以及吞吐能力,负载均衡器的转发能力。

测试顺序上多数人是从UI(人机界面)切入,即由UI驱动业务逻辑,这种测试顺序是错误的,例如用户->浏览器->WEB服务器->APP服务器->缓存->数据库等等

Web Server -> APP Server->Cache /MQ->Database->Disk IO

0 人点赞