Tester Guide
Basic Principles
Successful testing of ILIAS requires that you understand a few basic principles.
Modules – and their maintainers, testers and test case authors
Each tool and type of object in ILIAS (i.e. the Learning Module, the Test, the Personal Desktop or the Portfolio) is called a module (or component). Each module has at least one maintainer and one tester. They are each other's respective contact person during the testing process.
- Maintainers are the people responsible for the development and bugfixing of a module in ILIAS. Most modules have two maintainers. Maintainership assures that there is always somebody who has an overview of the development of a module and who can solve the problems that might surface. The maintainer also co-decides about the introduction of new features into her module and about the adoption of contributions by third parties to the ILIAS core.
- Testers of a module are normally users of ILIAS. The tester should be using the module in practice and know about its features. As a consequence, a tester has a personal interest in the module being stable and functional. Testers verify the functionality of the new and existing features of a module, create bug reports and follow up on the bugfixing process. If necessary, testers remind the maintainer to fix any open bugs.
- Test case authors are responsible for the preparation of the tests of a module by creating the required test cases. Test cases should be clear and comprehensible and reflect the full functionality of a module. In reality, authors always have to make some trade-offs in order to find a balance between completeness and feasibility. This is the reason why authors should know their modules pretty well. In some cases, testers also assume authorship of their modules.
An overview of all modules (components) and their respective maintainers, testers and test case authors can be found here.
Intelligibility and Reproducibility of Bug Reports
The bugs reported in our issue tracker Mantis are automatically assigned to the respective module maintainers. The maintainer is in turn responsible for fixing the bug.
In order for maintainers to understand a bug report, it is necessary to clearly describe the issue and the steps leading up to it. Ideally, a bug report also includes a link to a respective test object on our test installation. This allows the maintainer to reproduce the bug more easily.
You can learn about writing proper bug reports on the page Creating Bug Reports. There, you can also read more about the bugfixing process in ILIAS.
Completeness and Timeliness of Test Cases
A module can only be called stable when its whole functionality has been tested successfully and any major bugs have been fixed. Hence, it is important to test a module comprehensively.
After the initial creation of a test suite[1], the author's job gets easier. For new features, the maintainer is responsible to provide the required test cases - which can be created by himself, by the customer who pays for the new feature or by a third party.[2] The module's author has to make sure that his test suite remains in order. Any outdated test cases should be updated or deleted.
Testers and authors of a module can always consult the Feature Wiki to learn about new features. All new test cases are linked on the respective feature wiki page. If they have any questions about the new features, they can always contact the maintainer.