Mooctest.net, an online software testing platform, can automatically deploy the testing environment and provide several software testing related measurements (such as statement and branch coverage) to help practitioners improve their testing efficiency and effectiveness.
When the contest starts, the Mooctest server deploys several subject programs to each contestant’s environment. Once the deployment is completed, the contestant can start to test, and an activated timer will be shown on the screen. During the contest, the contestant needs to understand the source code and write JUnit test cases. These JUnit test cases will be submitted to the Mooctest server. The server compiles the submitted test cases, executes them against the subject programs, measures the branch coverage, and computes the mutation score. The achieved branch coverage of each submission will be sent back to the contestants to help them generate additional test cases, though the achieved mutation score will be hidden from them. In the contest, multiple submissions are allowed so that the contestants can further improve their test cases. When the timer is up, the contest ends and the Mooctest server will no longer accept any new submissions.