我们有一个数据采集系统,由许多一起运行的程序和脚本组成,有些是顺序运行的,大多数是并行运行的,在不同的机器上。
我们使用 Jenkins 来构建和运行单元测试。
我们现在想要通过使用数据生成器作为系统的输入并检查数据采集链的输出来测试整个系统。
测试系统的步骤的简化 View :
理想情况下,我们将使用不同的配置和输入来运行它。
你会用什么工具来做?或者您会尝试直接在 jenkins 中执行此操作吗?
最佳答案
您没有告诉我们足够的关于您的设置的信息,无法为您提供具体的答案。这在很大程度上取决于您使用的语言/环境。您可能需要以下一项或多项的组合:
您很可能会遇到慢速测试问题,因为您必须填充数据库,并且可能不得不拆分测试作业。一般来说,让这个工作的反馈循环太慢了,你可能需要非常有创意才能获得可接受的周期时间。
在不同的环境中,为此有不同的工具,拥有多个堆栈并没有多大乐趣。 Jenkins 在 Java 堆栈上运行,Puppet & Chef 在 Ruby 堆栈上运行,并且有类似的工具用于 Python、c 和 perl 堆栈。您必须自己决定是要拥有一流的集成问题,还是要使用单个堆栈并自己编写代码。两者都可以工作,而且都不是微不足道的。团队经验很可能是那里的决定因素。
DevOps 中的反馈循环比现代 CI 开发环境的反馈循环差很多,因此您必须预先做更多的计划和研究。一天中可以运行的实验数量要少得多,至少是 20 倍左右,因此第一次使事情成功将很困难。确保你有经验的人这样做。
关于jenkins - 什么工具可以测试复杂的多进程系统?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16276628/