We created this tool to automate the debugging of the completion tracking feature. This is a comprehensive guide to help you navigate the issues and their possible solutions.
LRS Connection Test (Optional)
Before running the Completion Testing Tool, please run the LRS Connection Test from WordPress Dashboard > GrassBlade > GrassBlade Settings Page to see if GrassBlade LRS and GrassBlade xAPI Companion plugin is connected properly.
Please follow the steps given below to get started with the Completion Testing Tool.
Run Completion Testing Tool from two places:
Edit page of xAPI Content
Step 1:
Go to the Edit Page of the xAPI Content that you want to test.
Step 2:
Scroll to xAPI Content Details section.
Step 3:
Click the Test Completion Tracking button to start testing.
Step 4:
Enter the Email, User ID, or Username of the user with the issue or any other user you want to test and click the Submit button.
Step 5:
Now Click the Start Testing button.
Restart Content for This User
Sometimes some users may face freezing or white screen issues after launching the course, This happens due to contents having some bugs. To fix such an issue, you can click on the “Restart Content for this User” button in the completion tracking test. To learn more about this button you can press the info icon next to this button.
User Profile Edit page
Go to WordPress Dashboard > Users and click the edit option for any user. Scroll to the end of the page and look for “GrassBlade: Test Completion Tracking” and click the Start Testing button.
If you want to learn what each test does and how it works, please check the description of each test given below.
Available Tests
1. Completion Tracking is enabled?
2. Multiple Contents with same Activity ID
3. Content Added on & Completion
4. LMS Check
5. Completion Triggers in GrassBlade LRS
6. Statements Test
7. Error Log Test
8. GrassBlade Email Test
To learn more about every test, please click the blue information icon in the popup.
1. Completion Tracking is Enabled?
This test checks whether or not the Completion Tracking option is enabled in your xAPI Content.
In Case of Failure:
Go to the Edit page of the xAPI Content and in the xAPI Contents Details section check the box corresponding to the Completion Tracking.
Learn More: Completion Tracking
2. Multiple xAPI Contents with the Same Activity ID
The completion tracking feature can be affected by xAPI Content with the same Activity ID. Therefore, it checks whether two or more xAPI Content has the same Activity ID.
The Impact
- It can complete both xAPI Contents and lessons associated with it for the attempting user.
- It may not complete any xAPI Contents and might timeout the process.
- LRS Error Log shows “Request Timed Out” but completion goes through in the background on WordPress.
- The Mark Complete button didn’t enable after completion.
Activity ID or Object ID or Identifier?
These are the names of the same things used by the different authoring tools. Activity ID is used to mark complete the associated lesson/topic/quiz. Also, GrassBlade LRS uses the Activity ID to group your xAPI Content statements for build reports. Therefore, it is important to make sure that your Activity IDs are unique so that your xAPI Content statements can be easily identified and tracked.
How to fix it?
Re-export the package from your authoring tool with a unique Activity ID/Identifier. Now, upload it to your WordPress again via the GrassBlade xAPI Companion plugin.
3. Content Added on & Completion
This test checks, which lessons/topics/quizzes the selected xAPI Content is added to and finds out whether it is completed or not for the selected user. It is not recommended to use the same xAPI Content on two or more lessons.
Reason for Failure
When the same xAPI Content is added on two or more LMS pages and the user didn’t complete the step.
Impact
It can mark complete all the associated lessons/topics/quizzes where this xAPI Content is added and use have access to it.
The Fix
Re-export xAPI Content again with a unique Activity ID & upload again. Use the new content on the other lessons/topics/quizzes.
4. LMS Check
It checks which integrated LMS plugin is installed on your WordPress and finds out whether GrassBlade xAPI Companion’s integration addon is installed or not. If you’re using any of the LMS plugins with GrassBlade xAPI Companion. Please make sure you have installed the relevant free integration addon.
Integrated LMS Plugins | Download Links |
---|---|
1. LearnDash LMS | No Addon Required |
2. WP Courseware LMS | Download |
3. Lifter LMS | Download |
4. LearnPress LMS | Download |
5. Tutor LMS | Download |
6. MasterStudy LMS | Download |
7. Sensei LMS | Download |
5. Completion Triggers in GrassBlade LRS
To use Completion Tracking, you need to create Triggers in the GrassBlade LRS. This test looks for triggers created in the GrassBlade LRS and checks whether they are correct or not. In case of failure, please follow the steps given in this article: Setup Completion Tracking.
6. Statements Test
This test finds out if there are any “passed” or “completed” verb statements present in the LRS for the selected xAPI Content and the user. It checks the following for xAPI Content and the User:
Test Name | Test – Passed/Completed Verbs | Reason of Failure | Impact | How to Fix it? |
---|---|---|---|---|
Content Statement Test Status | This check searches in the LRS to see if there are any “passed” or “completed” verb statements present for the selected xAPI Content. | This test will fail if there are no statements sent to the LRS for the current xAPI Content. | 1. No learner activity is being recorded and completion tracking will not work. 2. No user finished all the steps of the content or completed the content. | 1. Check whether your package is xAPI or SCORM or cmi5 compliant. 2. Run the LRS Connection Test from the WP Dashboard > GrassBlade GrassBlade Settings page. |
Statement – User & Current Activity ID Status | This check searches in the LRS to see if there are any statements present for the selected xAPI Content and the user. | This test will fail if there are no “passed” or “completed” verb statements sent to the LRS for the current xAPI Content and the user. This user didn’t finish all the steps of the content or completed the content. | No learner activity is being recorded and completion tracking will not work. | 1. Check whether your package is xAPI or SCORM or cmi5 compliant. 2. User must not be under some firewall. Ex. internal network of companies or corporates. 3. Run the LRS Connection Test from the GrassBlade Settings page to see if your LRS is properly connected. |
Statement – Original Activity ID Status | This check search in the LRS to see if there are any “passed” or “completed” verb statements present for the selected xAPI Content’s Original Activity ID. This test only runs when the Original Activity ID is present and not matching the current Activity ID. | This test will fail if there are no “passed” or “completed” verb statements sent to the LRS for the current xAPI Content. No user finished all the steps of the content or completed the content with the Original Activity ID. | No learner activity is being recorded and completion tracking will not work. | 1. Check whether your package is xAPI or SCORM or cmi5 compliant. 2. User must not be under some firewall. Ex. internal network of companies or corporates. 3. Run the LRS Connection Test from the GrassBlade Settings page to see if your LRS is properly connected. |
Statement – User & Original Activity ID Status | This check searches in the LRS to see if there are any “passed” or “completed” verb statements present for the selected xAPI Content’s Original Activity ID and the user. This test only runs when the Original Activity ID is present and not matching the current Activity ID. | This test will fail if there are no “passed” or “completed” verb statements sent to the LRS for the current xAPI Content and the user. No user finished all the steps of the content or completed the content with the Original Activity ID. | No learner activity is being recorded and completion tracking will not work. | 1. Check whether your package is xAPI or SCORM or cmi5 compliant. 2. User must not be under some firewall. Ex. internal network of companies or corporates. 3. Run the LRS Connection Test from the GrassBlade Settings page to see if your LRS is properly connected. |
Statement – Revision Activity ID Test Status | This check searches in the LRS to see if there are any “passed” or “completed” verb statements present for the selected xAPI Content’s Activity ID present in the revisions of the xAPI Content. This test only runs when the Revision’s Activity ID is present and not matching the current Activity ID. | This test will fail if there are no “passed” or “completed” verb statements sent to the LRS for the current xAPI Content’s revision. No user finished all the steps of the content or completed the content with Revision’s Activity IDs. | It will not impact the setup but good to check and see if the content’s Activity ID changed or updated in the past. | No solution is required. |
7. Error Log Test
Whenever LRS runs triggers or an event, it logs the status in the Error Logs. So, this test pulls all the error logs from the LRS of the selected user and xAPI Content. It looks for the Triggers events for the selected User and xAPI Content.
8. GrassBlade Email Test
This test checks if the user’s GrassBlade Email is associated with more than one user.
What is GrassBlade Email?
The user identifier in the LRS is usually the Email ID of the user. Changing email id may cause the reporting to be split up, so, we store the user’s email id as GrassBlade Email ID and use that email id for storing any data in the LRS for the user.
Reason of Failure:
The xAPI Standard needs the Email ID to be an Inverse Functional Identifier, that is guaranteed to only ever refer to that one user. If there are more than one user’s with same GrassBlade Email, this condition fails, and the LRS cannot pinpoint which of these users the data belongs to.
Impact:
If a user changed their email and created a new account on your site with the same email then completion tracking won’t work for newly created user.
All completions for all users with same GrassBlade Email will be recorded under only one user.
Best solution would be to delete one of the users.
If you see any issues or do not understand the results, then feel free to create a support ticket with us and include a screenshot of all the tests for faster resolution.