THIS IS A WORK IN PROGRESS
Writing QA tests for t_functional
0.1. Introduction
This page provides a brief overview on writing test scripts for the "t_functional" CentOS QA process - just enough to get you started and moving in the right direction. More detailed (and probably more up to date) information can be found in the doc folder of the git repository.
0.2. 30 second overview
Writing tests for t_functional is 1 part web interface, 1 part git command line, 2 parts text editor and 2 parts virtual machine testbed. In essence you:
- Create your own clone of the CentOS t_functional repository using the gitorious web interface. This gives you something to push your changes to.
- Create a "working copy" of that clone in a local environment (something that contains an install of git, a text editor, a CentOS VM environment etc).
- Make changes to this working copy - add new tests, improve existing tests, update documentation etc.
- Commit your changes, adding suitable comments to describe the nature of the change(s).
- Push your changes to your gitorious-based clone.
- Submit a "request merge" using the gitorious web interface.
When you make a request to merge, one of the CentOS QA team will review your request and assuming everything is OK, merge your tests into the master branch. That's it!
0.3. Getting Started
You'll need a gitorious account and access to an environment that contains a working install of git, a text editor of some kind for writing tests and (ideally) a virtual machine environment with which to exercise (exorcise? ) your scripts prior to submission.
All of the necessary commands required to get your local copy up and running are provided by gitorious once you create your own clone. If you're new to git, try this git tutorial.
0.4. More information
Check the documentation within the repository for information on how to actually write tests (including a practical example to get you started). Alternatively, questions should be directed at either the centos-devel mailing list or the #centos-devel channel on Freenode IRC.