如何使用 TestNG 自动化功能测试,跨越多个 Java 进程?
我对尝试使用 TestNG 而不是 JUnit 产生了兴趣,因为它声称设计的不仅仅是单元测试,但我还没有找到一个具体的例子来说明如何做到这一点。
我有一个 Java 程序 (p1),它监听来自某些特殊硬件的事件。它解析这些命令并将它们发送到另一个 Java 进程 (p2),后者根据命令执行操作。
为了测试整个链条,我设法提出了以下临时解决方案:
- 我有一个包含“假”硬件命令列表的文本文件
- 我在 p1 中添加了一个 mock,它读取文本文件而不是监听事件
- 我执行p1(p2已经在测试环境中运行)
- 我比较了 p2 的日志输出,以验证它是否与列表中的命令匹配。
我使用一个简单的 shell 脚本来做到这一点——这可以用 TestNG 自动化吗?