1.   Testing Strategy

Because we did the work seperately, so we did testing seperately, when our tests were successful, we then pushed our work to the origin master. Since we implemented six algorithms which are different from each other, we used different testing Strategies. Primarily, we used unit and integration testing, performance testing and volume testing.


2.   Unit and Integration Testing

Every of member of us did plenty of unit testing after finishing one algorithm. Then after the integration of our code, we did an integration testing on one laptop to make sure the modules could work together. Finally, before submission, we did a number of system testing, to see whether the whole system could work well with all possible input options.


3.   Performance Testing

The most testing we did was performance testing. We needed to evaluate the verification accuracy of the algorithms. The accuracy was calculated by the number of correct verifications divided by the total number of input files.