...
Documents the approach to functional/integration testing for the application REST services layer. NOTE: integration testing is only minimally implemented, this mostly presents the methodology and approach that would be used to fully flesh out the JPA service layer integration tests.
Coverage
There are six services, each with a JPA implementation
...
Complete coverage would address each mode of use of each method call of each service. It would also consider where different types of mapping projects would expect to have different outcomes (e.g. an "extended map" vs. a "complex map").
Coverage Definition
The attached spreadsheet formally defines REST service layer coverage from an integration testing perspective.
...
The following sample coverage spreadsheet begins to outline the methodology for defining coverage though it is not fully fleshed out.
Organization
Integration tests are organized under the integration-testing project. Looking through the Java packages, you should find a "org.ihtsdo.otf.mappingts.test.rest" package that defines a number of test classes that represent the coverage spreadsheet.
...
The test names themselves are "test cases" that are organized into "test suites" according to the structure of the spreadsheet.For example, the attached coverage spreadsheet has a tab called "Security". Within that spreadsheet is the "Normal Use" column for which there are three rows filled out, implementing testNormalS001, testNormalS002, and testNormalS003. In the integration-tests there is a a testing class "SecurityServiceNormalUse.java" that has three testing methods corresponding to those listed above. In this way, the organization of the tests within the code correlates to the spreadsheet.
For each test suite and test case, there should also exist a documentation page in this wiki. A test suite is a collection of test cases and a test case is a "script" detailing the actions involved and the expected outcomes with any other needed information.
...
Test suites are organized by spreadsheet tab.
- Security Service REST Test Suite
- Metadata Service REST Test Suite
- ... other services test suites ...
- Combo REST Test Suites
- TBD
- Ad Hoc REST Test Suites
- TBD
References/Links
...