Java中“守护”组件的系统/集成测试

软件测试 爪哇
2022-01-31 16:18:36

我们有相当大的 Java 组件集合(一些使用一些 JNI)。每个都使用Tanuki作为守护程序(或 Windows 服务)启动。有些发布 SOAP 或 REST 端点,有些则从 JMS 获取消息。有些人互相交谈。

每个组件读取一个 XML 文件进行一些配置;他们(还)没有被编码为只是出现并等待有人告诉他们该做什么。

我们正在寻找用于系统级测试的测试框架。请注意,这些东西不是部署在容器中的 webapp(war 文件)。当他们需要提供端点时,他们会通过 Apache CXF 嵌入一个容器。所以 cargo.codehaus.org 看起来并不合适。

我们并不真正关心典型的 TDD 关注“英语测试用例”。这里涉及的每个人都是熟悉典型编程语言和文件格式的程序员;我们真的不希望或不需要额外的开销来构建和维护将英语短语映射到测试用例的东西。

我们确实对 Robot Framework 进行了实验,但效果并不理想。“英语”方面耗费了大量时间,而且我们在管理框架本身的部署时遇到了可怕的问题。(我应该提到我们使用 Maven 作为构建工具。)

我们应该关注哪些框架来进行脚本配置、启动和监控?

1个回答

对于 SOAP 端点,您也许可以使用这个人所做的与SoapUI一起使用。

它执行 SOAP/REST/JMS,也可能适用于其他类型的端点(例如“互相交谈”参考)。


嗯。重新阅读问题,您还询问了配置/启动/监控。我真的没有回答,是吗?

鉴于您可以让 Jenkins 做任何事情,编写触发构建时 Jenkins 调用的脚本可能是合理的。这些脚本将执行部署/配置/启动,并可能使用您拥有的任何监控解决方案注册新服务。

对于完全集成的解决方案(包括在云中运行,这样您甚至不必担心配置硬件),您可能会查看AppDynamics之类的东西(尽管我上次查看了该产品,但它没有提供驾驶考试,只是管理/监控环境)。