Uploaded image for project: 'Moodle'
  1. Moodle
  2. MDL-3030

Late quiz attempts should be closed automatically

    Details

    • Testing Instructions:
      Hide

      You may wish to read http://docs.moodle.org/dev/Quiz_time_controls_on_attempts to understand what is going on.

      The following are the proposed MDLQA tests for this that I have sent to Tim B.

      MDLQA-297 A teacher can set a time limit for a quiz

      This test requires a quiz containing several questions, and When time expires set to Submit attempt automatically.

      1. Login as a teacher, edit the settings for the quiz and set a time limit.
      2. Login as a student, access the quiz and check that the time limit is stated.
      3. Attempt the quiz and check that the time left is displayed on each page, including the summary page.
      4. Answer some but not all of the questions, then leave the browser window open until time expires.
      5. Check that when the time runs out, the quiz is submitted automatically with whatever answers have been filled in.

      MDLQA-new1 When time expires, the quiz may be submitted automatically

      1. As teacher, edit the settings for the quiz and set a time limit and/or a close date.
      2. ... and set When time expires to Submit attempt automatically.

      3. As student, start a quiz attempt and answer some questions. Then log out of Moodle.
      4. Wait until a few seconds time limit has expired, or the close date has passed, then log back in as a teacher, and make sure that the attempt is still shown as In-progress.
      5. Then, also very soon after time expired, log in as a student, and go to the quiz info page. This should cause the quiz attempt to be automatically submitted, so you should see that your attempt is finished, with those questions you had answered graded.

      6. As another student, start a quiz attempt and answer some questions. Then log out of Moodle.
      7. Wait until time has expired, and then a further hour has passed (so that the quiz cron, which runs once per hour, has had a chance to do its thing).
      8. Log in as teacher, and you should be able to see that the attempt has been updated to be finished.
      9. Log in as student, and you should see that the attempt has been submitted.

      Ideally test both cases in 1. That is, do one attempt that is brought to an end because time time limit runs out before the close date, and another test where the quiz is brought to an end because the close date passes before the time limit runs out.

      MDLQA-new2 When time expires, the student may be out of luck

      This test is similar to MDLQA-new1.

      1. As teacher, edit the settings for the quiz and set a time limit and/or a close
      2. ... and set When time expires to 'that is it. The attempt must be submitted before time expires, or it is not counted'

      ... Steps 3. to 9. as for MDLQA-new1, except that being submitted, the attempt goes into a 'Never submitted' state, where no grades are counted.

      10. As student, start a quiz attempt and answer some questions. Then leave that browser window open until time expires.
      11. When time expires, you quiz attempt should be submitted automatically, and the grade counted.

      MDLQA-new3 When time expires, the student may be allowed extra time to submit

      This test is similar to MDLQA-new1.

      1. As teacher, edit the settings for the quiz and set a time limit and/or a close date.
      2. ... and set When time expires to Allow a grace period to submit, but not change any responses. Set Submission grace period to a suitable amount of time to let you do the tests below.

      3. As student, start a quiz attempt and answer some questions. Then leave the browser tab open until time expires.
      4. You should be automatically redirected to the review page, and the quiz should move into the overdue state. The timer should count down telling you how long you have in which to submit.
      5. Click the submit button, and your attempt should be submitted and counted.

      6. As student, start a quiz attempt and answer some questions. Then lot out of Moodle.
      7. Wait until a few seconds time limit has expired, or the close date has passed, then log back in as a teacher, and make sure that the attempt is still shown as In-progress.
      8. Then, also very soon after time expired, log in as a student, and go to the quiz info page. This should cause the quiz attempt to be automatically moved to the Overdue state. There should be a Continue last attempt button.
      9. Click that button, and you should be taken to the summary page, where you are told you can still submit up to a certain time.
      10. Submit, and make sure your score is counted.

      11. As another student, start a quiz attempt and answer some questions. Then log out of Moodle.
      12. Wait until time has expired, and then a further hour has passed (so that the quiz cron, which runs once per hour, has had a chance to do its thing).
      13. Log in as teacher, and you should be able to see that the attempt has been updated to be Overdue.
      14. Log in as student, and repeat steps 8. to 10.

      MDLQA-new4 When time expires, the student may be allowed extra time to submit, but does not need to do so

      This test is similar to MDLQA-new3, but with changes at steps 5, 10 and 14.

      1. As teacher, edit the settings for the quiz and set a time limit and/or a close date.
      2. ... and set When time expires to Allow a grace period to submit, but not change any responses. Set Submission grace period to a suitable amount of time to let you do the tests below.

      3. As student, start a quiz attempt and answer some questions. Then leave the browser tab open until time expires.
      4. You should be automatically redirected to the review page, and the quiz should move into the overdue state. The timer should count down telling you how long you have in which to submit.
      5. Do nothing. After the end of the grace period, the attempt should move to the Never submitted state (as in MDLQA-new2).

      6. As student, start a quiz attempt and answer some questions. Then lot out of Moodle.
      7. Wait until a few seconds time limit has expired, or the close date has passed, then log back in as a teacher, and make sure that the attempt is still shown as In-progress.
      8. Then, also very soon after time expired, log in as a student, and go to the quiz info page. This should cause the quiz attempt to be automatically moved to the Overdue state. There should be a Continue last attempt button.
      9. Click that button, and you should be taken to the summary page, where you are told you can still submit up to a certain time.
      10. Do nothing. After the end of the grace period, the attempt should move to the Never submitted state (as in MDLQA-new2).

      11. As another student, start a quiz attempt and answer some questions. Then log out of Moodle.
      12. Wait until time has expired, and then a further hour has passed (so that the quiz cron, which runs once per hour, has had a chance to do its thing).
      13. Log in as teacher, and you should be able to see that the attempt has been updated to be Overdue.
      14. Log in as student, and repeat steps 8. to 10.

      Show
      You may wish to read http://docs.moodle.org/dev/Quiz_time_controls_on_attempts to understand what is going on. The following are the proposed MDLQA tests for this that I have sent to Tim B. MDLQA-297 A teacher can set a time limit for a quiz This test requires a quiz containing several questions, and When time expires set to Submit attempt automatically. 1. Login as a teacher, edit the settings for the quiz and set a time limit. 2. Login as a student, access the quiz and check that the time limit is stated. 3. Attempt the quiz and check that the time left is displayed on each page, including the summary page. 4. Answer some but not all of the questions, then leave the browser window open until time expires. 5. Check that when the time runs out, the quiz is submitted automatically with whatever answers have been filled in. MDLQA-new1 When time expires, the quiz may be submitted automatically 1. As teacher, edit the settings for the quiz and set a time limit and/or a close date. 2. ... and set When time expires to Submit attempt automatically. 3. As student, start a quiz attempt and answer some questions. Then log out of Moodle. 4. Wait until a few seconds time limit has expired, or the close date has passed, then log back in as a teacher, and make sure that the attempt is still shown as In-progress. 5. Then, also very soon after time expired, log in as a student, and go to the quiz info page. This should cause the quiz attempt to be automatically submitted, so you should see that your attempt is finished, with those questions you had answered graded. 6. As another student, start a quiz attempt and answer some questions. Then log out of Moodle. 7. Wait until time has expired, and then a further hour has passed (so that the quiz cron, which runs once per hour, has had a chance to do its thing). 8. Log in as teacher, and you should be able to see that the attempt has been updated to be finished. 9. Log in as student, and you should see that the attempt has been submitted. Ideally test both cases in 1. That is, do one attempt that is brought to an end because time time limit runs out before the close date, and another test where the quiz is brought to an end because the close date passes before the time limit runs out. MDLQA-new2 When time expires, the student may be out of luck This test is similar to MDLQA-new1. 1. As teacher, edit the settings for the quiz and set a time limit and/or a close 2. ... and set When time expires to 'that is it. The attempt must be submitted before time expires, or it is not counted' ... Steps 3. to 9. as for MDLQA-new1, except that being submitted, the attempt goes into a 'Never submitted' state, where no grades are counted. 10. As student, start a quiz attempt and answer some questions. Then leave that browser window open until time expires. 11. When time expires, you quiz attempt should be submitted automatically, and the grade counted. MDLQA-new3 When time expires, the student may be allowed extra time to submit This test is similar to MDLQA-new1. 1. As teacher, edit the settings for the quiz and set a time limit and/or a close date. 2. ... and set When time expires to Allow a grace period to submit, but not change any responses. Set Submission grace period to a suitable amount of time to let you do the tests below. 3. As student, start a quiz attempt and answer some questions. Then leave the browser tab open until time expires. 4. You should be automatically redirected to the review page, and the quiz should move into the overdue state. The timer should count down telling you how long you have in which to submit. 5. Click the submit button, and your attempt should be submitted and counted. 6. As student, start a quiz attempt and answer some questions. Then lot out of Moodle. 7. Wait until a few seconds time limit has expired, or the close date has passed, then log back in as a teacher, and make sure that the attempt is still shown as In-progress. 8. Then, also very soon after time expired, log in as a student, and go to the quiz info page. This should cause the quiz attempt to be automatically moved to the Overdue state. There should be a Continue last attempt button. 9. Click that button, and you should be taken to the summary page, where you are told you can still submit up to a certain time. 10. Submit, and make sure your score is counted. 11. As another student, start a quiz attempt and answer some questions. Then log out of Moodle. 12. Wait until time has expired, and then a further hour has passed (so that the quiz cron, which runs once per hour, has had a chance to do its thing). 13. Log in as teacher, and you should be able to see that the attempt has been updated to be Overdue. 14. Log in as student, and repeat steps 8. to 10. MDLQA-new4 When time expires, the student may be allowed extra time to submit, but does not need to do so This test is similar to MDLQA-new3, but with changes at steps 5, 10 and 14. 1. As teacher, edit the settings for the quiz and set a time limit and/or a close date. 2. ... and set When time expires to Allow a grace period to submit, but not change any responses. Set Submission grace period to a suitable amount of time to let you do the tests below. 3. As student, start a quiz attempt and answer some questions. Then leave the browser tab open until time expires. 4. You should be automatically redirected to the review page, and the quiz should move into the overdue state. The timer should count down telling you how long you have in which to submit. 5. Do nothing. After the end of the grace period, the attempt should move to the Never submitted state (as in MDLQA-new2). 6. As student, start a quiz attempt and answer some questions. Then lot out of Moodle. 7. Wait until a few seconds time limit has expired, or the close date has passed, then log back in as a teacher, and make sure that the attempt is still shown as In-progress. 8. Then, also very soon after time expired, log in as a student, and go to the quiz info page. This should cause the quiz attempt to be automatically moved to the Overdue state. There should be a Continue last attempt button. 9. Click that button, and you should be taken to the summary page, where you are told you can still submit up to a certain time. 10. Do nothing. After the end of the grace period, the attempt should move to the Never submitted state (as in MDLQA-new2). 11. As another student, start a quiz attempt and answer some questions. Then log out of Moodle. 12. Wait until time has expired, and then a further hour has passed (so that the quiz cron, which runs once per hour, has had a chance to do its thing). 13. Log in as teacher, and you should be able to see that the attempt has been updated to be Overdue. 14. Log in as student, and repeat steps 8. to 10.
    • Affected Branches:
      MOODLE_18_STABLE, MOODLE_19_STABLE, MOODLE_20_STABLE, MOODLE_22_STABLE
    • Fixed Branches:
      MOODLE_23_STABLE
    • Pull from Repository:
    • Pull Master Branch:

      Description

      In the new quiz code, when an attempt is past its time limit or when the closing date for a quiz has closed, the attempt should automatically be marked and closed.

        Gliffy Diagrams

          Attachments

            Issue Links

              Activity

                People

                • Votes:
                  99 Vote for this issue
                  Watchers:
                  57 Start watching this issue

                  Dates

                  • Created:
                    Updated:
                    Resolved:
                    Fix Release Date:
                    25/Jun/12