arXivDaily arXiv每日学术速递 周一至周五更新
arXiv 1803.04442cs.DCcs.SE
收藏

Dfuntest:一个分布式应用程序的测试框架

Dfuntest: A Testing Framework for Distributed Applications

Grzegorz Milka, Krzysztof Rzadca

摘要:

分布式系统中的新思想(算法或协议)通常通过模拟来测试,因为在现实平台上部署原型的实验很麻烦。然而,原型不仅测量性能,而且还验证关于底层系统的假设。我们开发了dfuntest -一个分布式应用程序的测试框架,定义了抽象和测试结构,并在分布式平台上自动化实验。Dfuntest的目标是成为分布式应用程序的jUnit模拟;一个框架,使程序员能够编写健壮和灵活的实验场景。Dfuntest需要最少的绑定来指定如何部署应用程序以及如何与应用程序交互。Dfuntest的抽象允许在单机、集群、云或任何其他分布式基础设施上执行场景,例如PlanetLab。一个场景是一个过程,因此,我们的框架可以用于功能测试和性能测量。我们展示了如何使用dfuntest在60个PlanetLab节点上部署我们的DHT原型,并验证原型是否保持正确的拓扑结构。

英文摘要:

New ideas in distributed systems (algorithms or protocols) are commonly tested by simulation, because experimenting with a prototype deployed on a realistic platform is cumbersome. However, a prototype not only measures performance but also verifies assumptions about the underlying system. We developed dfuntest - a testing framework for distributed applications that defines abstractions and test structure, and automates experiments on distributed platforms. Dfuntest aims to be jUnit's analogue for distributed applications; a framework that enables the programmer to write robust and flexible scenarios of experiments. Dfuntest requires minimal bindings that specify how to deploy and interact with the application. Dfuntest's abstractions allow execution of a scenario on a single machine, a cluster, a cloud, or any other distributed infrastructure, e.g. on PlanetLab. A scenario is a procedure; thus, our framework can be used both for functional tests and for performance measurements. We show how to use dfuntest to deploy our DHT prototype on 60 PlanetLab nodes and verify whether the prototype maintains a correct topology.

机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。

↑