Last week I was having a conversation with a friend, and while we were discussing some things I mentioned some Ubuntu tools that were completely natural for me since I use them every day in Ubuntu development and for my work, but he was completely amazed by them, so I decided to blog on the subject so more people can know about them.
I’m going to start with the one that impressed him the most: qa-regression-testing branch
The QA and security team maintain a test suite to check for regressions in packages they are updating. These tests are written with python unittest. Most of this test suite can be a little harmful for a production system, so it’s recommended to run it using a chroot environment or a virtual machine and to help with that there is a make-test-tarball script. From the script:
export HOSTS=”sec-intrepid-amd64 sec-hardy-amd64 sec-dapper-amd64″
export TEST=test-glibc-security
./make-test-tarball $TEST.py
for i in $HOSTS; do
scp /tmp/qrt-$TEST.tar.gz $i.local:
done
for i in $HOSTS; do
ssh -t $i.local “hostname; rm -rf qrt-$TEST; tar zxf qrt-$TEST.tar.gz; cd qrt-$TEST && ./$TEST.py -v”
done
As you can imagine HOSTS are the hostnames of the virtual machines where the tests are going to run.
Writing those test isn’t rocket science, you just need a little knowledge of the package and the functionality you want to test and python unittesting, there is even a skeleton script that can help you start writing your test.
Hope this information is useful for you! And as usual, patches are welcome!










