Features
- Complete port of JUnit 3.8.1 to PHP 5.
- Integrates ideas from TestNG, such as
- Annotation-based @grouping of test cases.
- Suite-Level setUp() and tearDown().
- Testing for failures.
- Supports Mock Objects (port of jMock).
- Supports database testing (port of DbUnit).
- Supports Code Coverage Analysis (utilizing the Xdebug extension for PHP) and can generate reports based on this information.
- Supports the calculation of software metrics.
- Can be used as a Project Mess Detector (PMD).
- Supports storing test result and code coverage data in a Test Database.
- Supports Incomplete Tests (port of junitour) and the skipping of tests.
- Supports Agile Documentation (port of TestDox).
- Supports generation of test code skeletons for existing code.
- Supports logging of test execution in an XML Format, as JavaScript Object Notation (JSON) messages, using the Test Anything Protocol (TAP), in GraphViz Markup, and to PEAR::Log sinks.
- Integrates with Selenium RC for web application user interface testing.
- Integrates with Apache Maven, Bamboo, Bitten, CruiseControl, and Parabuild for Continuous Integration.
- Integrates with Phing.
- "Self-Hosted" and Robust: PHPUnit is covered by a Test Suite that ensures it works correctly.
