I am using a Debian repo (based on reprepro) for Wheezy and custom packages. I modify my custom packages from time to time and test them manually on different systems, e.g.:
- Test a) Installation of the new version of the Debian package
- Test b) Update of the Debian package on a system where an older version of the same Debian package already is installed
- Test c) Uninstalling the new version of the Debian package
Normally, I run these tests on tree different servers.
Since the number of custom Debian packages is growing continuously, the manual testing process consumes more and more of my time.
So I am looking for an existing test framework which automates stuff. Furthermore it would be great if this testing framework supports running these tests inside of containers/VMs (e.g. with snapshots, so we can start over and over again). Furthermore I'd expect a full report after a test is completed.
I know that I am not the only one on this planet looking for such a tool. However, using Google and the search feature on this site reveals no solution. I found "autotest", but I am not sure if this tool is the right one for me.
So - what do you use for automated testing of Debian package installation and updates?
Please note that I am not looking for a tool which tests the package building (e.g. Jenkins, Hudson).
I am sorry if this question is a duplicate of an already existing entry here on serverfault. If this is the case I would be happy if you could point me to the right page.
Edit: The debian project seems to use exatly what I am looking for:
- http://ci.debian.net/#package/abi-compliance-checker
- http://ci.debian.net/data/packages/unstable/amd64/a/abi-compliance-checker/20140703_120145.autopkgtest.log
Edit #2: It seems like debci is exactly what I am looking for (see links above). I will have a look at this tool and share my experience here. Nevertheless, I would be happy if you could share the tools you use for this particular purpose.