Difference between revisions of "Manual Tests"
Matthew Vita (talk | contribs) m (→Test Suites: seed data) |
Matthew Vita (talk | contribs) m (→Test Development: test tools) |
||
Line 26: | Line 26: | ||
* /Tests/Manual_Tests/Electronic_Medical_Records/Medications/3_Remove_Medications_Test_Case.md | * /Tests/Manual_Tests/Electronic_Medical_Records/Medications/3_Remove_Medications_Test_Case.md | ||
* /Tests/Manual_Tests/Electronic_Medical_Records/Medications/4_Prescribe_Medications_Test_Case.md | * /Tests/Manual_Tests/Electronic_Medical_Records/Medications/4_Prescribe_Medications_Test_Case.md | ||
The tests are written in markdown format. It turns out that bulleted lists in markdown tables are not supported (http://stackoverflow.com/questions/19950648/how-to-write-lists-inside-a-markdown-table), so plain old HTML tables are leveraged instead (markdown can handle basic HTML). | |||
Use the following WYSIWYG HTML editor (http://bestonlinehtmleditor.com/) and Markdown check (https://stackedit.io/editor) tools like so: https://raw.githubusercontent.com/openemr/openemr/tree/master/Test/Manual_Tests/test-writing-tools.gif | |||
== Philosophy & Approach == | == Philosophy & Approach == |
Revision as of 03:54, 5 July 2016
Objective
High-quality manual test cases need to be built up and maintained moving forward. A group of testers can run through them before releases are shipped and developers can also use them as a point of reference/sanity check when doing the big codebase refactor project.
Test Suites
- (COMPLETE) Patient Demographics
- (UNASSIGNED) Facility Registration
- (UNASSIGNED) Add QA Seed Data
- (UNASSIGNED) Patient Scheduling
- (UNASSIGNED) Electronic Medical Records
- (UNASSIGNED) Prescriptions
- (UNASSIGNED) Medical Billing
- (UNASSIGNED) Clinical Decision Rules
- (UNASSIGNED) Patient Portal
- (UNASSIGNED) Reports
- (UNASSIGNED) Multilanguage Support
- (UNASSIGNED) Security
Test Development
The tests will be built up in the following fork (for now): https://github.com/MatthewVita/openemr. There is a top-level "/Tests/Manual_Tests" folder that contains folders for each test suite. Individual test cases are to be placed in these folders (or sub-folders, when needed). For example:
- /Tests/Manual_Tests/Electronic_Medical_Records/Medications/1_Add_Medications_Test_Case.md
- /Tests/Manual_Tests/Electronic_Medical_Records/Medications/2_Edit_Medications_Test_Case.md
- /Tests/Manual_Tests/Electronic_Medical_Records/Medications/3_Remove_Medications_Test_Case.md
- /Tests/Manual_Tests/Electronic_Medical_Records/Medications/4_Prescribe_Medications_Test_Case.md
The tests are written in markdown format. It turns out that bulleted lists in markdown tables are not supported (http://stackoverflow.com/questions/19950648/how-to-write-lists-inside-a-markdown-table), so plain old HTML tables are leveraged instead (markdown can handle basic HTML).
Use the following WYSIWYG HTML editor (http://bestonlinehtmleditor.com/) and Markdown check (https://stackedit.io/editor) tools like so: https://raw.githubusercontent.com/openemr/openemr/tree/master/Test/Manual_Tests/test-writing-tools.gif
Philosophy & Approach
- Keep tests elegant and within appropriate boundaries.
- Test cases should cover realistic happy paths and negative paths.
- It is acceptable to have the tester query the database when the UI can't satisfy an assertion.
- Each test case is simply a markdown table with columns "Step Number", "Description", and "Expectation".
- Assume that the tester that runs the test is familiar with the system and terms.
Test Execution
Let's keep this _dead simple_. When the manual tests are ran before each release, the following table (which is mocked up for now) will represent testers, assigned test suites, and execution status. If a suite has a FAILED status, tester is responsible for submitting a bug and keeping an eye out for a fix so the suite can be re-ran.
Tester | Suite | Status |
---|---|---|
John Doe | Facility Registration | IN PROGRESS |
Sue Bob | Patient Demographics | PASSED |
Sue Bob | Patient Scheduling | IN PROGRESS |
Mark Smith | Electronic Medical Records | IN PROGRESS |
Mark Smith | Prescriptions | FAILED |
Sue Bob | Medical Billing | FAILED |
John Doe | Clinical Decision Rules | PASSED |
Mary Swanson | Patient Portal | IN PROGRESS |
John Doe | Multilanguage Support | PASSED |
John Doe | Security | PASSED |
Links/Resources
- Target browser for test: Firefox 40+ (we don't have to be too precise with this)
- Project thread https://sourceforge.net/p/openemr/discussion/202506/thread/5f706dff/