Translation Test Plan


Firmwater LMS is a platform that enables training companies to sell and deliver their online training.  The system supports selling courses in bulk to businesses and creating an online store to sell courses to individuals.

Firmwater does not create the training content that is delivered by our system.  Our clients typically use a third-party authoring tool to create their content.  These authoring tools support publishing to a specification called SCORM, which allows our LMS to understand the structure of the content during loading and to be able to communicate with the content when a learner is experiencing it.

I have configured the text&form organization on the demo site so that most pages can be accessed.  It should be noted that this is not a realistic configuration of the system.  Firmwater configures the platform to suit the needs of our client when we set them up.  The text&form organization is configured with several conflicting approaches all enabled at once.

The purpose of this document is not to try to enumerate all possible pages and scenarios.  This document provides notes on how to access pages and user flows that are not obvious from exploring the interface.

Language Support

Firmwater LMS currently supports three languages: English, French, and Spanish.  When a new client is added to the system, Firmwater configures the languages that are available to that organization and their clients.  The text&form organization is configured with all three languages available.

There are two types of language strings in the system:

1) System string: This is a string that is part of the system.  Examples include tab and menu item names, headings, instructions, labels, and button text.

2) User-generated string: This is data that a user enters.  Examples include organization name, application name, department names, job titles, course names and descriptions, and membership types.

All of our clients that support multiple languages are configured with English as their default language.  When multiple languages are offered by an organization, the interface provides a series of text boxes for each user-generated string (one for each language).  The string is only required to be submitted in the default language.

When presented somewhere in the interface, if the string is not available in the user's preferred language, it is shown in the default language.

Interface Basics

The tabs and functionality available to a user of Firmwater LMS is dictated by the user's role.  The account has a role of Master Administrator.  This gives the account access to all tabs and functionality.  Any number of other users, of any role, can be created by that account if needed.

As a base, all users have access to the 'My Training' tab and the 'My Profile' area.  Here's a brief summary of the functionality available in each of the tabs:
  • My Profile: edit profile information, change password, set notification preferences.
  • My Training: launch training that is available to the learner.
  • Configuration: configure an organization's settings, define locations, departments, job titles, membership types, certifications.
  • Users: manage users and see training status information for those users.
  • Content: manage content in the system, define assignments to deliver training to users.
  • Reports: run reports.

Master Administrator User Interface

The pages in all the tabs should be explored as a Master Administrator.  This provides access to the majority of the pages in the application.  This document does not explicitly list all these pages.

Assessment Engine

Firmwater LMS includes a built-in engine for testing and surveying. Tests or surveys created for the assessment engine can be included in courses delivered to learners.  The assessment engine supports the standard types of questions: true-false, multiple-choice, free-form, fill-in-the-blank, likert, and ranking.

The '101 Reading Blueprints' course in the text&form organization includes a test called 'Reading Blueprint Pre-Test'.  This test is configured to show the content (questions, answers, feedback) in English but the navigation controls should be in the learner's preferred language.

Usage Contracts

We have some newer user flows around purchases of learning content and inviting users to seats available.  Usage contracts allow us to specify that an organization or a location in an organization has access to a limited number of seats of a course.  The parameters of usage (contract dates, days usage by learners) can be specified.

Usage contracts are created automatically when orders are placed through a Shopify online store.  They can also be created manually, but we are still working to provide a user interface to some of this functionality.

The 'How To Be An Authentic Speaker' course in the text&form organization is configured with a usage contract for an unlimited number of seats for the Toronto location.  As such, the approach for inviting users to this course is a little different from the other courses.

Sending a purchaser invitation:

I have sent a purchaser invitation to ''.

  • Purchaser invitations are always sent in English right now.
  • Accepting invitation will take the user to a sign-up page where they can specify their language.
  • Note: ensure that you access the link from a browser that does not already have an active LMS session.

Inviting a user to a course:

    'Content' -> 'How To Be An Authentic Speaker' -> '1 location' -> 'more' -> 'Add participants'
  • Inviting a new user (with a new email address) will send a participant invitation.
  • Participant invitations are always sent in English right now.
  • Accepting invitation will take user to a sign-up page where they can specify their language.
  • Note: ensure that you access the link from a browser that does not already have an active LMS session.


Organizations can define different levels of membership that provide access to portions of an organization's course library.  A membership is valid for a specified length of time (usually one year) before if requires renewal.

We have not yet added support for membership to our Shopify integration.  As such, it still requires on our old e-commerce integration using PayPal.

Create membership for another user:

   'Users' -> Name of user -> 'More actions' -> 'Create membership'
  • Note: this action is only available is user is not already a member.

Edit membership of existing member:

   'Users' -> Name of user -> 'More actions' -> 'Renew membership' -> switch view to 'Edit Membership'

View membership history of existing member:

   'Users' -> Name of user -> 'More actions' -> 'Renew membership' -> switch view to 'Membership History'


  • Professional membership type is configured to allow self-registration:
  • Description will fall back to English is not present in other languages.
  • Note: ensure that you access the link from a browser that does not already have an active LMS session.

Renewal of own membership:

   'My profile' (click on your name in top navigation bar) -> 'Renew membership'

Renew membership for someone else from:

   'Users' -> Name of user -> 'More actions' -> 'Renew membership'

Create an Account

A 'Create an account' link is added to an organization's login page when the 'Users can sign up for an account' functionality is enabled.  This functionality is enabled for the text&form organization.

This allows a user to sign up for their own account.  Usually, for organizations that this is enabled for, an assignment exists that delivers one or more pieces of training content to all users.

Course Self-Registration

Courses can be configured to allow self-registration.  These courses show up in the 'Course Library' page under the 'My Training' tab.  Learners can choose to add these to their training plan if they haven't already done so.

Courses configured with a price will prompt for payment through our old Paypal integration.  They also get their own registration URL which can be to sign up for the course, even if the person doesn't already have an account.


Firmwater LMS can be configured to send a number of automated emails.  All emails are enabled for the text&form organization.

Purchaser Invitation:

  • Sent when a new purchase is made through our Shopify integration a new user.

Return Purchase:

  • Sent when a new purchase is made through our Shopify integration by an existing account.
  • I have sent a return purchase email to ''.

Welcome - User Signed Up For Own Account:

  • Sent to user after creating an account.

Welcome - Sent By Administrator:

   'Users' -> Name of user -> 'More actions' -> 'Send welcome message'

Participant Invitation:

  • Sent when a new user is invited to a course configured with a usage contract.

New Course Assigned:

  • Sent when an existing user is assigned a new course.
  • Currently not sent when a user is assigned content by a delivery rule.

Course Completion - To Participant:

  • Sent to the participant after they successfully complete a course.  Includes link to page where they can retrieve their completion certificate, if configured.
  • Administrator can fake a completion for a user by:
        'Users' -> Name of user -> 'View details' under 'Training plan' -> 'How To Be An Authentic Speaker' -> [#### finish ####]

Course Completion - To Administrators:

  • Sent to all administrators for configured roles when someone successfully completes a course.

Password Recovery:

  • Sent after using 'Forgot your password?' functionality from login page.


Firmwater LMS includes a set of standard reports.  Many of the reports have not been fully translated.  As such, the suggestion is not to test the reports, only verify that the translation of the titles and descriptions are accurate.