分布式系统测试实践

网友投稿 1027 2022-11-27

本站部分文章、图片属于网络上可搜索到的公开信息,均用于学习和交流用途,不能代表睿象云的观点、立场或意见。我们接受网民的监督,如发现任何违法内容或侵犯了您的权益,请第一时间联系小编邮箱jiasou666@gmail.com 处理。

分布式系统测试实践

■ 分布式事务:多机、多角色协作,测试场景多且复杂

■ 多线程:多线程场景难模拟

■ 多系统:关联的外围系统多,而且又都是分布式

■ 一致性要求:强一致、弱一致、最终一致

■ 稳定性要求:如何保证7*24小时系统稳定

■ 可用性要求:各种系统异常场景,软件、硬件因素

■ 兼容性要求:多客户端服务端版本,多服务方式(REST、JavaClient)

■ 性能要求:吞吐量和响应时间,软硬件因素

如何来应对这个难题,可以从如下几个方面来应对:

(1)多层次测试保障。将测试分为不同的层次,在每个层次注重不同的测试重点。

a)单元测试:开发人员完成,覆盖基本逻辑

b)白盒异常测试:有针对的对各个系统异常进行代码级模拟,验证系统是否有能力处理并保持可用

c)接口测试:保证服务的各个对外接口符合预期,基本功能验证

d)集成测试:高压力、高并发、多种系统协作的基本功能和异常场景测试(软件、硬件异常)

e)稳定性测试:高压力模拟常见应用和故障的混合场景,多种方式并行进行。

f)仿真测试:建立客户应用回归环境,仿真客户使用场景

(2)低成本测试。所谓低成本测试就是在测试过程中采取一系列的策略,降低测试成本,包括在前期参与设计方案评审和Code Review。明确不可靠模块的应用风险,核心模块的持续投入,自动化回归和多环境并行测试,并且参与线上应用情况的分析和线上故障的排查,做好bug的应对方案。

(3)高效定位问题。从测试用例出发,确定出现bug的特定场景,根据完善的日志和监控体系来进一步分析出现问题的条件,从而能逐级缩小测试用例,从黑盒的测试用例转入白盒测试用例,另外可以利用自动化测试分析工具来进行分析。最核心的还是要对产品本身有深入的了解,产品的需求和产品的实现都要理解。

(4)DST,分布式系统测试工具。

DST拥有以下的强大功能:

● 支持编写测试用例实现多机并行测试

● 可集成多种已有的测试工具及用例

● 可配置的监控数据自动收集与展示

● 日志自动分析与查看

● 可扩展的任务执行控制功能

● 性能、功能结果对比

● 测试报告自动生成

上一篇:分布式系统测试中积累的一些经验
下一篇:常见的敏捷测试的谎言
相关文章

 发表评论

暂时没有评论,来抢沙发吧~