Haiku cannot be a stable platform without people trying to find bugs in it and telling the developers. Testing is a very important job. Luckily, testers do not need specialized skills, such as the ability to write code, but they do come in handy. All that is needed is sufficient familiarity with computers to be able to install Haiku. The job merely entails seeing what works and what doesn’t under Haiku, particularly with existing BeOS applications. Once again, as a tester, you can devote as much or as little time as you desire.
Types of Testing
Ad Hoc Testing
Ad Hoc testing involves the tester playing with the system while pretending to be a normal user and do the types of things that normal users do. Once they come across a bug, then they submit it to the issue tracker and work to triage the bug with the developers.
This form of testing is easy to set up, but it not very consistent and producers many duplicate bug reports.
Manual Testing requires some form of infrastructure to be set up, but proves high quality and consistent bug reports. The Haiku project is planing to set up Manual Testing, but is still using Ad Hoc testing for now.
Manual testing gives end users the ability to help out through crowdsourcing regression tracking and defect verification. Basicly, they can help let devopers know that something that was meant to be working, now is not working and something that was reported or thought to not be working, now is working.
This is done by writing a kind of step by step howto guide on a feature that allows the tester to report if they can or can't follow each step. There is normally space in the test management tool to give the tester context (expected results) and prerequisites (i.e. you need a .mp4 file from the demopack) and space for the tester to comment on each step and/or each testsuite.
The HaikuProject is currently testing the build each night, which then conducts automated unit tests that tries to validate the source code.
Haiku uses the tool BuildBot for this testing, but this type of testing does not have a very fine grade of filter and so it only catches some bugs. A legacy document is available on how to create unit tests and another article looks how they are used in Haiku.