We have a data acquisition system made of many programs and scripts running together, some sequentially, most in parallel, on different machines.
We use Jenkins to build and run unit tests.
We now want to test the system as a whole by using a data generator as input to the system and checking the output of the data acquisition chain.
Simplified view of the steps to test the system :
Ideally we shall run it with different configurations and input.
What tool would you use to do it ? Or would you try to do it directly in jenkins ?
You don't tell us enough about your setup to give you specific answers. It strongly depends on the language/environment you are using. You probably need a combination of one or more of the following:
You are very likely to run into the slow tests problem as you have to populate a database, and might have to split test jobs. In general, the feedback loop to get this working is way too slow, and you'll probably need to be very creative to get an acceptable cycle time.
In different environments, there are different tools for this, and having multiple stacks is not much fun. Jenkins runs on a Java stack, Puppet & Chef on a Ruby stack, and there are similar tools for the Python, c & perl stack. You'll have to decide for yourself if you want to have best-in-class with integration problems, or a single stack and coding things yourself. Both can work, and neither is trivial. Team experience is most likely the deciding factor there.
The feedback loop in DevOps is a lot worse than that of a modern CI development environment, so you'll have to do much more planning & research up front. The number of experiments you can run in a day is much lower, at least a factor 20 or so, so making things work the first time is going to be difficult. Make sure you have experienced people doing that.
The answer is: Robot Framework (see 1 or 2).
I don't know Jenkins, but I am pretty sure you can integrate Robot Framework with it. It's as simple as running a Python script.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With