One of the powerful functions of coderunner is use programming languages to analyze user's data, so it can test kinds of external tasks.
I'm teaching students to operate Micorsoft Excel in Windows. The students can use "external grader" writed by VBA to record their's operating and submit the recording to moodle.
The problem is that someone save the recordings and use them when they do the same test late. They alse pass the recording to others so that they can use them for the same test.
I think one solution is that extertnal grader and coderunner can use the same context informations to test and verify. What I know is that extertnal grader can get user's info from moodle's web service to verity with coderunner's STUDENT' info of template parameters. but it is not enough.
Another way may be that external grader can communicate with coderunner directtly. But I don't know how to To achieve this approach.
Does anyone have a good idea?
I don't think you'll be able to have the external grader communicate with coderunner directly.
One way to make it harder for students to copy other students' submissions is to require students to include their student ID number and perhaps other personal information into the spreadsheet. If you require various other cells to be dependent upon the student's ID and personal information, each student will finish up with their own unique spreadsheet. I'm not sure how the external grade records a student's operations, though, nor how you might go about grading the recording in CodeRunner.
Verifying user information can prevent other students from copying, but it can't prevent the same student from copying when doing the same test.