Execution with the Assistant

The ALE simulator supports the use of execution assistants that automatically run one or more tests with the loaded code and produce a report with information about the submitted code and the results of the tests.

Overview of the Execution Assistant

The assistant is encoded in the URL that points to the simulator. This link, for example, contains the address of the simulator and the code for an assistant that is loaded when the simulator is opened. You can click the link and inspect the menu that appears after clicking the arrow next to the RUN button. Figure 3.2.1 illustrates accessing the debugging assistant.

accessing assistant

Figure 3.2.1: Accessing the Assistant in the ALE Simulator.

When you click on the Assistant button, the simulator will open a window with information about the debugging assistant. The information provided depends on the specific assistant. Figure 3.2.2 shows the assistant loaded from the link above. Note that it includes the RUN TESTS button, which is used to start the tests.

assitant window

Figure 3.2.2: Example of a window with assistant information. In this case, the assistant contains three tests: 1. Addition, 2. Subtraction and 3. Multiplication.

Running a program with the execution assistant

To test your program with the debugging assistant, simply open the simulator with a link that includes an assistant (such as this one), load your program into the simulator (see Chapter 3.1), and click the RUN TESTS button in the assistant's window. Figure 3.2.3 shows an example where the assistant is running tests with the loaded program. In this case, the program produced the correct results for tests 1 (Addition) and 2 (Subtraction) and is currently being executed with test 3.

assistant execution

Figure 3.2.3:Example of test execution with the assistant.

Some assistants provide an option to download a report with the test results at the end of the testing process. Figure 3.2.4 shows an example where, after the tests are completed, the assistant displays the score and provides a link to retrieve the report.

test execution

Figure 3.2.4: Example of test execution.