Skip to content

Testing

williamlixu edited this page Aug 25, 2019 · 2 revisions

Testing Overview

Testing is of utmost importance to ensure good software quality and correctness of our algorithm. We have the following kinds of testing in the testing phase of our development process (that happens after implementation) to ensure the algorithm works as expected. Performance testing is also important to ensure our program is fast and any tuning improves the run time. The CI runs all unit tests and ensures that the code builds before allowing any branch to be merged.

Unit Testing

Unit tests are important to ensure changes do not invalidate the algorithm/program. They should be in the tests package. There should be unit tests to ensure algorithms are optimal and expanding partial schedules gives expected results.

Integration Testing

Put the thing together and hope it works :) Important to test in lab environment before we submit.

Benchmarking/Performance Testing

This is testing to ensure the algorithm runs quickly and useful for comparing if optimisations make a difference. How to use the benchmarking system here

Clone this wiki locally