feb2 2018 extract - AICC/CMI-5_Spec_Current GitHub Wiki

Individual AU Test (Simple)

Scope:

  • Simple Launch (Initial and re-entrant)

Setup:

  • Course Structure
  • Fully qualified URL to content
  • LaunchData= AU specific parameters
  • Moveon=Completed

Procedure:

  1. Add setup data – import course Structure
  2. Register Learner in course, etc.
  3. Action: Launch AU
    • Result: LaunchConsole (LMS)
      • Launched Statement Issued
      • Write State API Document LMS.launchdata
      • Redirect Browser to AU URL +cmi5 Query string
    • Result: AU
      • Parse Query String_
      • Call Fetch URL – Retrieve Authentication Token
      • Call Fetch URL 2nd Time to verify Error Issued
      • Read State API Document LMS.launchdata (verify structure)
      • Verify Launch Data Parameters from course structure are the same_
      • Write Initialized Statement (success)
      • Present AU UI to learner (with results of checks)
      • OK/Failed list
  4. Action: Exit AU (Button)
    • Write AU specific State API Document (state Id = AUtest, Registration, ActivityId, Actor)_
    • Write Terminated Statement (Success)_
    • Return To LMS (Use Return URL if provided or Close The AU window)
  5. Action: (re) Launch AU
    • Result: LaunchConsole (LMS)
      • Launched Statement Issued
      • Write State API Document LMS.launchdata
      • Redirect Browser to AU URL +cmi5 Query string
    • Result: AU
      • Parse Query String
      • Call Fetch URL – Retrieve Authentication Token
      • Read State API Document LMS.launchdata (verify structure)
    • Verify Launch Data Parameters from course structure are the same
      • Write Initialized Statement (success)
      • Read AU-Specific State API Document. (Verify contents same)
      • Present AU UI to learner (with results of checks)
    • OK/Failed list
    • Previous Statements
  6. Action: Send "Completed" (Button)
    • Result: AU
      • Write Completed Statement (Success)
  7. Action: Exit AU (Button)
    • Result: AU
      • Write Terminated Statement (Success)
      • Return To LMS (Use Return URL if provided or Close The AU window)
    • Result: LaunchConsole (LMS)
      • Satisfied Statement Issued – At Course Level
      • Verify Abandon Statement not issued for each session
      • After a reasonable period of time

Individual AU Test (One Entrance - Passed)

Scope:

  • Simple Launch (One Entrance - Passed)

Setup:

  • Course Structure
  • Fully qualified URL to content
  • LaunchData= AU specific parameters
  • Moveon=Passed

Procedure:

  1. Add setup data – import course Structure
  2. Register Learner in course, etc.
  3. Action: Launch AU
    • Result: LaunchConsole (LMS)
      • Launched Statement Issued
      • Write State API Document LMS.launchdata
      • Redirect Browser to AU URL +cmi5 Query string
    • Result: AU
    • Parse Query String
    • Call Fetch URL – Retrieve Authentication Token
      • Call Fetch URL 2nd Time to verify Error Issued
    • Read State API Document LMS.launchdata (verify structure)
      • Verify Launch Data Parameters from course structure are the same
    • Write Initialized Statement (success)
    • Present AU UI to learner (with results of checks)
      • OK/Failed list
  4. Action: Send "Pass" (Button)
    • Result: AU
      • Write Passed Statement (Success)
  5. Action: Exit AU (Button)
    • Write AU specific State API Document (state Id = AUtest, Registration, ActivityId, Actor)
    • Write Terminated Statement (Success)
    • Return To LMS (Use Return URL if provided or Close The AU window)
    • Result: LaunchConsole (LMS)
      • Satisfied Statement Issued – At Course Level
      • Verify Abandon Statement not issued for each session
      • After a reasonable period of time

Individual AU Test (Abandoned – AU crash After Launch)

Scope:

  • Simple Launch (Abandoned – AU crash After Launch)

Setup:

  • Course Structure
  • Fully qualified URL to content
  • LaunchData= AU specific parameters
  • Moveon=Completed

Procedure:

  1. Add setup data – import course Structure
  2. Register Learner in course, etc.
  3. Action: Launch AU
    • Result: LaunchConsole (LMS)
      • Launched Statement Issued
      • Write State API Document LMS.launchdata
      • Redirect Browser to AU URL +cmi5 Query string
    • Result: AU
      • Parse Query String
      • Call Fetch URL – Retrieve Authentication Token
      • Call Fetch URL 2nd Time to verify Error Issued
    • _Read State API Document LMS.launchdata (verify structure)
      • Verify Launch Data Parameters from course structure are the same
      • Write Initialized Statement (success)
    • _Present AU UI to learner (with results of checks)
      • OK/Failed list
  4. Action: Close AU (Abnormally Exit)
  5. Action: Re-Launch AU (new session)
    • _Result: LaunchConsole (LMS)
      • Abandoned Statement Issued
      • Launched Statement Issued
      • Write State API Document LMS.launchdata
      • Redirect Browser to AU URL +cmi5 Query string
    • Result: AU
      • Parse Query String_
      • Call Fetch URL – Retrieve Authentication Token
      • Call Fetch URL 2 nd Time to verify Error Issued
      • Read State API Document LMS.launchdata (verify structure)
      • Verify Launch Data Parameters from course structure are the same
    • Write Initialized Statement (success)
    • Present AU UI to learner (with results of checks)
      • OK/Failed list
  6. Action: Exit AU (Button)
    • Write AU specific State API Document (state Id = AUtest, Registration, ActivityId, Actor)
    • Write Terminated Statement (Success)
    • Return To LMS (Use Return URL if provided or Close The AU window)
    • Result: LaunchConsole (LMS)
      • Verify No Satisfied Statement_
      • Verify Abandon Statement not issued for second session
      • After a reasonable period of time

Individual AU Test (2 AU Course - Abandoned)

Scope:

  • Simple Launch (abandoned)

Setup:

  • Course Structure – 2 AUs
  • Fully qualified URL to content
  • LaunchData= AU specific parameters
  • Moveon=Completed, Completed

Procedure:

  1. Add setup data – import course Structure
  2. Register Learner in course, etc.
  3. Action: Launch AU 1
    • Result: LaunchConsole (LMS)
      • Launched Statement Issued
      • Write State API Document LMS.launchdata
      • Redirect Browser to AU URL +cmi5 Query string
    • Result: AU
      • Parse Query String_
      • Call Fetch URL – Retrieve Authentication Token
      • Call Fetch URL 2 nd Time to verify Error Issued
      • Read State API Document LMS.launchdata (verify structure)
      • Verify Launch Data Parameters from course structure are the same
      • Write Initialized Statement (success)
    • Present AU UI to learner (with results of checks)
      • OK/Failed list
  4. Action: Close AU 1 (Abnormally Exit)
  5. Action: Launch AU2 (new session)
    • Result: LaunchConsole (LMS)
      • Abandoned Statement Issued (for AU1 session)_
      • Launched Statement Issued (AU2 Session)_
      • Write State API Document LMS.launchdata_
      • Redirect Browser to AU URL +cmi5 Query string_
    • Result: AU
      • Parse Query String
      • Call Fetch URL – Retrieve Authentication Token
      • Call Fetch URL 2 nd Time to verify Error Issued
      • Read State API Document LMS.launchdata (verify structure)
      • Verify Launch Data Parameters from course structure are the same
      • Write Initialized Statement (success)
    • Present AU UI to learner (with results of checks)
      • OK/Failed list
  6. Action: Exit AU (Button)
    • WWrite AU specific State API Document (state Id = AUtest, Registration, ActivityId, Actor)
    • Write Terminated Statement (Success)
    • Return To LMS (Use Return URL if provided or Close The AU window)
    • _Result: LaunchConsole (LMS)
      • Verify No Satisfied Statement
      • Verify Abandon Statement not issued for second session
      • After a reasonable period of time

Individual AU Test (Terminate – Then write more)

Scope:

Setup:

  • Course Structure (1 AU)
  • Fully qualified URL to content
  • LaunchData= AU specific parameters
  • Moveon=Completed

Procedure:

  1. Add setup data – import course Structure
  2. Register Learner in course, etc.
  3. Action: Launch AU
    • Result: LaunchConsole (LMS)
      • Launched Statement Issued
      • Write State API Document LMS.launchdata
      • Redirect Browser to AU URL +cmi5 Query string
    • Result: AU
      • Parse Query String
      • Call Fetch URL – Retrieve Authentication Token * Call Fetch URL 2nd Time to verify Error Issued
    • Read State API Document LMS.launchdata (verify structure)
    • Verify Launch Data Parameters from course structure are the same
    • Write Initialized Statement (success)
    • Present AU UI to learner (with results of checks)
    • OK/Failed list
  4. Action: AU Terminate Button (Issue Terminate)
    • Result: AU
      • Issue Terminate Statement
      • Then – Issue Completed Statement (after reasonable time – as defined in setup)
  5. Action: Re-Launch AU (new session
    • Result: LaunchConsole (LMS)
      • Abandoned Statement Issued
      • Launched Statement Issued
      • Write State API Document LMS.launchdata
      • Redirect Browser to AU URL +cmi5 Query string
    • Result: AU
      • Parse Query String
      • Call Fetch URL – Retrieve Authentication Token
      • Call Fetch URL 2nd Time to verify Error Issued
      • Read State API Document LMS.launchdata (verify structure)
      • Verify Launch Data Parameters from course structure are the same
      • Write Initialized Statement (success)
      • Present AU UI to learner (with results of checks)
      • OK/Failed list
  6. Action: Exit AU (Button)
    • Write AU specific State API Document (state Id = AUtest, Registration, ActivityId, Actor)
    • Write Terminated Statement (Success)
    • Return To LMS (Use Return URL if provided or Close The AU window)
    • Result: LaunchConsole (LMS)
      • Verify No Satisfied Statement
      • Verify Abandon Statement not issued for second session
      • After a reasonable period of time

Disclaimers/Limits*

Because compliance cannot be verified – it does not mean that an LMS (or AU) is not cmi5 conformant.

Test suite AU failure to execute due to software/environment conflicts…

"Reasonable Time" set by TestSuite parameters. Procedure will specify)

Rationale: How long a learner user would expect to wait for LMS corrective action due to AU failure - up to 3 seconds