大规模系统的高效分布式测试架构
1. 引言
如今,动态虚拟组织的需求日益增长,像专业社区这类组织,成员会贡献自己的数据来源和计算资源,这些资源可能规模较小但数量众多,并且成员可以随意加入或离开组织。当前的网格(Grid)解决方案侧重于为静态定义的虚拟组织(配备强大服务器)进行数据共享和协作,而点对点(Peer - to - Peer,P2P)技术则关注可扩展性、动态性、自主性和分散控制。这两种方法可以结合,它们之间的协同作用有助于解决各自的不足。
Grid和P2P系统已成为软件开发的关键技术,但目前仍缺乏验证最终软件的集成解决方案。这些系统通常具有简单的公共接口,但节点之间的交互复杂且难以测试。例如,分布式哈希表(DHTs)仅提供插入、检索和查找三个公共操作,但为确保数据在节点加入或离开系统时的持久性,需要非常复杂的交互。
测试大规模分布式应用意味着要处理分布式测试场景,即同步执行测试场景所需的所有任务,并收集/汇总测试结果。典型的分布式软件测试架构依赖于集中式测试控制器,它将测试用例分解为步骤并部署到分布式测试器中,还通过同步消息保证测试步骤的正确执行。然而,在测试大规模分布式系统时,这种架构由于同步管理成本高,可能会增加测试成本,甚至阻碍测试执行。
本文旨在优化大规模分布式动态系统的测试架构,提高性能并减少测试任务的影响。研究了三种构建测试架构和同步测试执行序列的方法:集中式解决方案和两种分布式架构。分布式方法将测试器组织成树状结构,在父子节点之间交换消息。
2. 相关工作
测试分布式系统的一个基本挑战是同步测试用例步骤的正确执行顺序。为保证大规模系统的正确执行,需要某个同步组件管理大量的消息交换。
超级会员免费看
订阅专栏 解锁全文
11万+

被折叠的 条评论
为什么被折叠?



