-
Notifications
You must be signed in to change notification settings - Fork 6
Tutorial Testing
In order to test the activities, a custom course configuration will be used with the following Tutorial:
"tasks": [
{
"instruction": "Now, open MatchTest.scala!",
"component": "projectTree",
"info": "Hint: there is a typo in the name",
"action": "openEditor",
"assertClosed": [
"editor"
],
"actionArguments": {
"filePath": "Football1/o1/football1/MatchTest.scala"
}
},
{
"instruction": "Now, run MatchTest",
"component": [
"projectTree"
],
"info": "You can still see your project's files here.",
"action": "run",
"actionArguments": {
"actionNames": [
"Run 'MatchTest'"
],
"filePath": "MatchTest"
}
},
{
"instruction": "Now, observe MatchTest's output.",
"component": [
"build",
"editor"
],
"freeRange": true,
"info": "You can click to this button when you are done with this step.",
"action": "null",
"actionArguments": {
"filePath": "Football1/o1/football1/MatchTest.scala"
}
}
]
Store the course config file, and in the containing folder open cmd and type the command python3 -m http.server 8000
to start a server.
1. Create a new IntelliJ project with the A+ courses plugin.
2. Turn the project into A+ project by providing a custom URL pointing to the test configuration file (e.g. http://0.0.0.0:8000/o1_course_config.json
)
3. Start the Tutorial by clicking on the triangular Start Tutorial button on the Assignments toolbar.
4. A confirmation window appears with the following options:
4.1 Cancel: nothing happens.
4.2 OK: The Tutorial begins and the UI is adjusted to accommodate the 1st Task.
5. The Task requires the student to open MatchTest.scala. The project tree is highlighted. The counter says 1/3.
6. Open MatchTest.scala
6.1 The UI changes to show the 2nd Task (highlighting changes, the text in the floating window describes the new task).
6.2 The counter increased by 1
7. Click anywhere on the black area.
8. A window appears asking for confirmation on canceling the Tutorial (informs the student that the Tutorial will have to be done all over again if canceled).
8.1 Resume: the Tutorial’s state remains and the student can continue with it.
8.2 Cancel Tutorial: The IDE’s UI returns back to normal (no shadows/highlights/floating windows)
9. Click Resume to continue with the tutorial.
10. Download the Football1 module.
11. The first Task’s instructions are shown highlighted. Also, the project’s tree is highlighted.
12. Find and open MatchTest.scala
.
13. The counter is updated to 2/3.
14. The new task’s instructions are shown in the pop-up window.
15. Run MatchTest (right-click on the file on the project tree and select Run ‘MatchTest’)
16. While MatchTest is executing, the tutorial moves on to the next Task.
17. The editor with MatchTest open is highlighted. The build window on the bottom is highlighted as well. The user is prompted to observe the output in relation to the file, and signal when they are done by clicking the ‘I’m done!’ button on the pop-up window. The counter now displays 3/3.
18. The user clicks on the counter. Then, from the drop-down menu, clicks on “Step 1”. The result should be the same as described in step 5.
19. Then, the user clicks again on the counter and this time selects “Step 3”. The IDE should be as described in step 17.
20. The user clicks on the “I’m done!” button.
21. A window appears asking for confirmation on submitting the Tutorial and informing the user that if he does not submit it the Tutorial will have to be performed again.
21.1 “Yes”: The Tutorial is submitted to A+ and the Assignments tree is updated to include the submission.
21.2 “No”: The window disappears and nothing more happens.