Pearson's TestGen doesn't play well with Desire2Learn

This is a pretty specific post aimed at the poor D2L admins who, like me, have spent hours trying to work around a very granular and specific issue. Hopefully Google has led you here in your quest for a fix for this problem and that this will work for you.

A number of our faculty use tests created using TestGen, a Respondus-like test creation software package created by Pearson Education. We have been running into problems exporting multiple choice quizzes from WebCT 4.1 CE to Desire2Learn. The questions were exporting from WebCT 4.1 CE to Desire2Learn fine, but the correct answers were not.

After troubleshooting and hunting around, we discovered that the common thread for these multiple choice questions was that they were all originally created in TestGen and then imported into WebCT. When we exported the courses from WebCT as a WebCt 6.0 package, the xml file spit out by WebCT contained an error. A value variable for the correct answer to a multiple choice question gets incorrectly set to 0 when it should be 100.

Here’s what we did to fix the problem. It’s cumbersome, but it works. The obvious fix would be for Pearson to add a D2L export to their list of supported formats for TestGen. We’ve asked for that and hopefully that is in the works. But for now, this workaround has had to suffice.

  • Export the questions from TestGen in WebCT 4 format.
  • In WebCT, create a blank course. Import the quiz questions into WebCT.
  • Create a blank test in WebCT. We discovered that WebCT wouldn’t export any questions in the database unless at least one quiz was defined. So we created a dummy quiz with no questions in it.
  • Export the entire course as a WebCT 6.0 course.
  • Unzip the exported package.
  • In the course folder in the IMS package, find a file called questionDB.xml. Open that with your favorite XML or text editor capable of doing a find and replace. Search for these 2 lines of code:
    <setvar varname="que_score" action="Set">0</setvar>

    <setvar varname="answerValue" action="Add">100</setvar>
    and replace with:
    setvar varname="que_score" action="Set">100</setvar>
    <setvar varname="answerValue" action="Add">100</setvar>
  • You will have to make this change to each of the MC questions in the file, hence the ability to do a find and replace is essential when you are dealing with hundreds, or even thousands, of values.
  • Rezip the package.
  • Upload to D2L as a component. Choose to only upload the question library and you are off.

This fix is also documented in the D2L community (login required) in the Discussions > Product Management and Enhancements > Quizzes area. The fix was discovered by Rafi Syed.