java – “分布式单元测试”的框架或工具?

前端之家收集整理的这篇文章主要介绍了java – “分布式单元测试”的框架或工具?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
有没有任何工具或框架能够更容易地测试用 Java编写的分布式软件?我的被​​测系统是一个点对点软件,我想使用像 PNUnit这样的测试,但使用Java而不是.Net.

被测系统是我正在开发的构建P2P应用程序的框架.它使用JXTA作为一个较低的子系统,试图隐藏它的一些复杂性.目前这是一个学术项目,所以我现在追求简单.

在我的测试中,我想演示一个对等体(在自己的进程中运行,可能有多个线程)可以发现另一个进程(在另一个进程中运行,甚至是另一台机器),并且可以交换一些消息.我没有使用嘲讽或存根,因为我需要看到双方同时工作.我意识到需要某种协调机制,PNUnit似乎能够做到这一点.

我已经碰到了一些诸如Pisces这样的举措,其目的是提供扩展JUnit的分布式测试环境,让开发人员/测试人员能够运行远程JUnits,并创建由并行运行的多个远程JUnit测试组成的复杂测试套件或者连续地“,但这个项目和其他一些我发现似乎已经很久没死了.

解决方法

测试分布式软件很大程度上依赖于哪种类型的软件,所以为了完整的答案,我需要知道你的软件是什么.然而,看到PNUnit,它的接缝大部分是允许同步,排序和并行执行测试. TestNG支持这一点,比如你可以做:
@Test(threadPoolSize = 3,invocationCount = 10,timeOut = 10000)
public void testServer() {
   :
}

这将从三个不同的线程调用函数testServer十次. TestNG 4.5的更改日志也暗示了运行远程测试的可能性,更多信息可在this博客上发布.

或者,您可以检查IBM的ConTest软件来测试并行和分布式软件(有一个很好的描述如何使用它here).我已经非常成功地使用它来暴露我的并发应用程序中的错误.

猜你在找的Java相关文章