分布式系统设计和测试总结

网友投稿 767 2022-11-26

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

分布式系统设计和测试总结

一、分布式系统和编程

1、分布式计算:将一个大型的高难度的计算拆分成若干个子进程进行计算,然后计算完毕后,回收结果。这个需要区分的是并行计算,并行计算是指并发执行,分为空间和时间的并行,空间则是我们常说的多核,而时间则是利用了流水线,错开时间。他们的共同点是解决对象上,都将大任务化为小任务,这是他们共同之处。区别在于前者的每个任务具有独立性,并且更关注的是任务间的通信。后者的任务包是一个划分,之间的联系很大。

3、分布式编程:简单而言,,其主要特征是分布和通信。即将一个大型软件系统,分割成若干个模块,然后模块之间利用规范好的接口进行通信。

例如:我常用的是Java的分布式编程,包括:RMI、Corba以及SOAP

RMI是java虚拟机模块之间的通信。

Corba是通过IDL描述接口,不同编程语言模块之间可通过Cobra服务进行通信。

SOAP是靠XML来描述接口,通过HTTP协议进行通信。

4、分布式存储:将一个大型计算机资源可以分配到不同的存储系统上,整体可以看做一个大型存储系统。例如:现在很火的Hadoop的HDFS就提供了这么一个功能。

所以,总之,分布式重点就在于:能够统一管理和分配资源,协调好各个分布式模块之间的通信。

二、分布式应用

举几个简单的例子说说分布式

2、在一些C/S系统中,也利用了分布式,将计算和资源进行分配,互相之间利用接口进行通信。

三、分布式测试和应用

常见的测试范围

1、模块测试;对分布式系统中的单个模块进行测试。因为分布式模块中的模块有一定独立性,所以先保证每个模块的功能。这部分可以考虑用白盒测试来实现一部分测试。

2、接口测试;因为分布式系统之间的通信主要应用接口,所以专门针对接口进行测试。这方面可以考虑用通过自动化进行请求和相应实现一部分测试。

3、系统测试;全面将各个模块进行部署,按照功能需求进行测试。这部分的话,可以依靠一些上层的自动化测试,例如:WEB的话可以是ui级别的自动化测试。

4、性能压力测试;高压力和高并发下测试,各个模块之间的响应速度和接收程度等。例如:web系统的高并发测试,C/S系统的多个客户端同时请求服务器。

5、模拟测试;即尽可能真实模拟应用环境。如果系统太过庞大,也可计算比例进行模拟。

四、分布式自动化测试平台

1、测试资源可以分配到各个执行端进行测试。

2、测试结果可以统一收取集中到服务器上进行查看。

3、可以多个服务器保存测试资源。

4、可以监控和跟踪自动化测试过程

总之,即测试执行资源可以进行分配、测试数据可以分配、测试结果可以分配。但是对于整个外界而言却是一个整体系统。

总结:不同的软件系统有不同的测试方法,我们如果要对一个系统能够充分进行测试,一定要了解其运作原理、然后从原理出发,合理划分其测试类型和测试需求,根据测试类型和测试需求然后找到具体的测试方法,这样才能一步一步提高我们的测试效率。不能做其然而不知其所以然吧。

上一篇:探索性测试的四个类型
下一篇:面试人员对软件测试的体会和感悟
相关文章

 发表评论

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