You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1.3 KiB
1.3 KiB
OpenEMR Testing
Overview
OpenEMR integration and unit tests are implemented using phpunit. Browser based test cases are implemented using Symfony's Panther framework.
Test Case Directory Structure
Directory | Test Case Type |
---|---|
Api | API Controller Tests |
Common | Tests OpenEMR "common"/reusable components |
E2e | Browser Based Tests (End to End) |
Fixture | Manages test case fixtures |
Service | Service/Data Access Tests |
Unit | Tests components which don't require database integration |
Test Case Fixtures
The Fixture Namespace is used to manage test case fixtures, or sample records, used in test cases. The Fixture Manager is used to install sample records into the database, or return sample records to it's caller. The FixtureManager sources data from JSON
datafiles within the fixture namespace.
The FixtureManager currently supports the following record types:
- Patient Data
- FHIR Patient Resources
To support additional record types within FixtureManager:
- Add a supporting json file to the Fixture Namespace which maps to an OpenEMR database table.
- Add public methods to the class to get, install, and remove fixture records.