개발자들 또한 인간입니다. 그들의 수정은 때때로 예기치 못한 부작용을 야기합니다. 그리고 그것은 새로운 요류들 또는 비합리적인 낮은 수준의 현상들을 가져옵니다. 회귀 테스트들은 이런 문제점들을 찾는 걸 돕습니다. 그들은 특정한 기능이 작동되는 것을 확인합니다. 그래서 설계 및 최종 사용자는 일상생활에서 편리하게 사용합니다.
Naturally, the regression test will be executed in each testable new build. On the other hand, in practice it is unobtainable, that we can try out each corner of a large software as LibreOffice in each release. So we have regression test set selectively from often used scenarios or functionality and have them tested in beta and RC phase.
LibreOffice has a well defined release cycle and Release Criteria. There are major releases X.Y.0 with their daily, beta and release candidate builds. Also there are bugfix releases X.Y.Z with their release candidate builds. The following tests are needed:
- smoketest has to be done before any beta or RC build is announced
- full regression test has to be done before every major release
- basic regression test should be done also before every bugfix release
All builds are available 1-2 days before the official announce. We need to make sure that they are somehow usable on as many platforms as possible. Please, help us to do the following:
- monitor the pre-announcement mails on the email@example.com mailing list
- download the build for your platform from the dev-builds pre-releases site
- install it and try some basic operations, e.g. open/save documents in Writer, Calc, Impress, and Draw
- if you find a bug that makes the build almost unusable, please let us know in a reply to the announcement mail. Please keep all people and mailing lists in CC
- report bugs into bugzilla
FIXME: There are some attempts to automatize this task.
Full Regression Test
The automatic tests are currently run during the build:
- please join developers and help them to implement more checks; it allows to run the tests more frequently
- FIXME: does it make sense to extract subsequent tests from the build process and run them on the user systems?
- IMPORTANT: There are even tasks for non-developers
Basic Regression Test
Pure bugfix releases happen every month after each major release. There is not enough time for a full regression test. Developers try to avoid regressions in pure bugfix releases by reviewing changes. But they are only humans, so it still makes sense to run the most important regression tests. Usually the priority 1 and priority 2 cases will be tested in this phase