We should first document the original coverage for the 10 functions with the highest complexity and then try to improve the complexity. In order to improve the complexity we should:
Identify the requirements that are tested and untested by the given test suite and document the requirements.
Create 4 new test cases each and answer the following questions:
You may cover all branches in a function, but what does this mean for the combination of branches?
Can you expand on existing tests?
Do you have to add additional interfaces to the system (as public methods) to make it possible to set up test data structures?
If the most complex functions already have 100% branch coverage we can choose other functions or think about path coverage.
The new tests should be of a quality such that there is a good chance that they are accepted by the maintainers at the original repo.
We should first document the original coverage for the 10 functions with the highest complexity and then try to improve the complexity. In order to improve the complexity we should:
If the most complex functions already have 100% branch coverage we can choose other functions or think about path coverage.
The new tests should be of a quality such that there is a good chance that they are accepted by the maintainers at the original repo.