<a id="automated-testing"></a>
<a id="id1"></a>
# Automated Testing

TrialGrid provides a system for automating testing of studies in Rave EDC. This allows users to write testing scripts which can be run by TrialGrid to enter data into Medidata Rave and collect screenshots of evidence that Edit Checks have fired correctly.

> **Important:** Before you can start running Automated Tests some setup in required on your Medidata Rave URL. See the [Getting started guide](../getting_started/automated_testing_initial_setup.html.md#automated-testing-initial-setup).

- [What is Automated Testing?](what_is_automated_testing.html.md)
- [Medidata accounts](medidata_accounts.html.md)

  - [Rave EDC](medidata_accounts.html.md#rave-edc)
  - [Rave Classic, direct login](medidata_accounts.html.md#rave-classic-direct-login)
  - [Rave Classic, iMedidata login](medidata_accounts.html.md#rave-classic-imedidata-login)
- [Test Case List](test_case_list.html.md)

  - [Test Case PDF](test_case_list.html.md#test-case-pdf)
  - [Test Case Excel](test_case_list.html.md#test-case-excel)
- [Project Test Case List](project_test_case_list.html.md)

  - [Accessing the Project Test Case List](project_test_case_list.html.md#accessing-the-project-test-case-list)
  - [Display](project_test_case_list.html.md#display)
  - [Filtering](project_test_case_list.html.md#filtering)
  - [Summary](project_test_case_list.html.md#summary)
- [Test Case Run Status](testcaserun_status.html.md)

  - [Warnings](testcaserun_status.html.md#warnings)
  - [Queues](testcaserun_status.html.md#queues)
- [Test Cases](test_cases.html.md)

  - [Comments (optional)](test_cases.html.md#comments-optional)
  - [Referencing Edit Checks and other Draft Objects (optional)](test_cases.html.md#referencing-edit-checks-and-other-draft-objects-optional)
  - [Declaring the Feature (required)](test_cases.html.md#declaring-the-feature-required)
  - [Declaring Background (optional)](test_cases.html.md#declaring-background-optional)
  - [Declaring Test Steps (required)](test_cases.html.md#declaring-test-steps-required)
  - [Test Step Instructions](test_cases.html.md#test-step-instructions)
  - [Declaring Scenarios (required)](test_cases.html.md#declaring-scenarios-required)
  - [Test Case Priority](test_cases.html.md#test-case-priority)
- [Editing Test Cases](editing_test_cases.html.md)

  - [Editor buttons](editing_test_cases.html.md#editor-buttons)
  - [Validation of Test Case content](editing_test_cases.html.md#validation-of-test-case-content)
  - [Keyboard shortcuts](editing_test_cases.html.md#keyboard-shortcuts)
- [Test Case Templates](test_case_templates.html.md)

  - [Template Syntax](test_case_templates.html.md#template-syntax)
  - [Optional Fields](test_case_templates.html.md#optional-fields)
  - [Optional Forms](test_case_templates.html.md#optional-forms)
  - [Optional Folders](test_case_templates.html.md#optional-folders)
  - [Custom Properties](test_case_templates.html.md#custom-properties)
  - [Folder placeholders](test_case_templates.html.md#folder-placeholders)
  - [Action datapoint placeholders](test_case_templates.html.md#action-datapoint-placeholders)
  - [Using For loops to avoid repetition](test_case_templates.html.md#using-for-loops-to-avoid-repetition)
  - [Variables](test_case_templates.html.md#variables)
  - [Including content from a Template Test Case](test_case_templates.html.md#including-content-from-a-template-test-case)
  - [Importing a Template Test Case into a Test Case](test_case_templates.html.md#importing-a-template-test-case-into-a-test-case)
  - [Commenting out a Template structure](test_case_templates.html.md#commenting-out-a-template-structure)
- [Test Case Advisor](test_case_advisor.html.md)

  - [Running the Test Case Advisor](test_case_advisor.html.md#running-the-test-case-advisor)
  - [Test Case Advisor Results](test_case_advisor.html.md#test-case-advisor-results)
  - [Labelling results](test_case_advisor.html.md#labelling-results)
  - [Object references](test_case_advisor.html.md#object-references)
  - [Links to Test Cases](test_case_advisor.html.md#links-to-test-cases)
- [How does the Test Case Advisor work?](test_case_advisor_details.html.md)

  - [1. Folders, Forms and Fields](test_case_advisor_details.html.md#folders-forms-and-fields)
  - [2. Excluded Matrices](test_case_advisor_details.html.md#excluded-matrices)
  - [3. Test data values](test_case_advisor_details.html.md#test-data-values)
  - [4. Solutions](test_case_advisor_details.html.md#solutions)
- [Test Case Advisor for Custom Functions](test_case_advisor_ai.html.md)

  - [Limitations](test_case_advisor_ai.html.md#limitations)
- [Test Advisor Instructions](test_advisor_instructions.html.md)

  - [Settings](test_advisor_instructions.html.md#settings)
  - [Wildcard Folder](test_advisor_instructions.html.md#wildcard-folder)
  - [Forms](test_advisor_instructions.html.md#forms)
  - [Datapoints](test_advisor_instructions.html.md#datapoints)
  - [Matrices](test_advisor_instructions.html.md#matrices)
- [Testing Derivations](testing_derivations.html.md)
- [Uploading Test Data](upload_test_data.html.md)

  - [Example Upload File](upload_test_data.html.md#example-upload-file)
  - [Order of data entry](upload_test_data.html.md#order-of-data-entry)
  - [Upload File Format](upload_test_data.html.md#upload-file-format)
- [Test Case Subjects](test_case_subjects.html.md)

  - [Creating unique subjects per scenario](test_case_subjects.html.md#creating-unique-subjects-per-scenario)
  - [Creating subjects with specified names](test_case_subjects.html.md#creating-subjects-with-specified-names)
  - [Using parameters in subject names](test_case_subjects.html.md#using-parameters-in-subject-names)
- [Creating subjects using the Primary Form](form_data_entry.html.md)

  - [Modifying Primary Form data for an existing subject](form_data_entry.html.md#modifying-primary-form-data-for-an-existing-subject)
  - [Supported fields](form_data_entry.html.md#supported-fields)
  - [Errors when creating a new subject](form_data_entry.html.md#errors-when-creating-a-new-subject)
  - [Identifying fields on the form](form_data_entry.html.md#identifying-fields-on-the-form)
  - [Valid sequence of steps](form_data_entry.html.md#valid-sequence-of-steps)
  - [Field visibility](form_data_entry.html.md#field-visibility)
  - [Saving and cancelling data entry](form_data_entry.html.md#saving-and-cancelling-data-entry)
  - [User permissions](form_data_entry.html.md#user-permissions)
- [Folder, Form and DataPoint References](datapoints.html.md)

  - [Nested Folders](datapoints.html.md#nested-folders)
  - [Parent Folders](datapoints.html.md#parent-folders)
  - [Absolute Folder References](datapoints.html.md#absolute-folder-references)
  - [Creating Parent/Child Folders](datapoints.html.md#creating-parent-child-folders)
- [Dates and Times in Test Cases](test_case_datetimes.html.md)

  - [Partial dates and times](test_case_datetimes.html.md#partial-dates-and-times)
  - [Incomplete dates and times](test_case_datetimes.html.md#incomplete-dates-and-times)
  - [Current date and time](test_case_datetimes.html.md#current-date-and-time)
  - [Offsets from current date and time](test_case_datetimes.html.md#offsets-from-current-date-and-time)
- [Running Test Cases](running_tests.html.md)

  - [Selecting the Rave URL and Environment to Run on](running_tests.html.md#selecting-the-rave-url-and-environment-to-run-on)
  - [Test Run settings](running_tests.html.md#test-run-settings)
  - [User Credentials](running_tests.html.md#user-credentials)
  - [iMedidata Two Factor Authentication](running_tests.html.md#imedidata-two-factor-authentication)
  - [Monitoring Running Tests](running_tests.html.md#monitoring-running-tests)
  - [Cancelling a Test Set Run](running_tests.html.md#cancelling-a-test-set-run)
  - [Archiving Results of Test Set Runs](running_tests.html.md#archiving-results-of-test-set-runs)
  - [Re-Running a Test Set](running_tests.html.md#re-running-a-test-set)
  - [Server re-starts](running_tests.html.md#server-re-starts)
  - [Test Case Priority](running_tests.html.md#test-case-priority)
- [Whitespace and case differences in test results](whitespace_in_results.html.md)

  - [Datapoint values](whitespace_in_results.html.md#datapoint-values)
  - [Query messages](whitespace_in_results.html.md#query-messages)
  - [Deviation text](whitespace_in_results.html.md#deviation-text)
  - [Email subject and message text](whitespace_in_results.html.md#email-subject-and-message-text)
  - [Folder names](whitespace_in_results.html.md#folder-names)
  - [Form names](whitespace_in_results.html.md#form-names)
- [Historical Automated Test Runs](test_history.html.md)

  - [Changes to Test Cases](test_history.html.md#changes-to-test-cases)
  - [Deleted Test Cases](test_history.html.md#deleted-test-cases)
- [Test Archives](test_archives.html.md)
- [Automated Testing Step Reference](test_commands.html.md)

  - [Given steps](test_commands.html.md#given-steps)
  - [When steps](test_commands.html.md#when-steps)
  - [Then steps](test_commands.html.md#then-steps)
- [How does Automated Testing Work?](how_does_automated_testing_work.html.md)
- [Automated Testing Limitations](limitations.html.md)
- [Project Test Configuration](project_test_configuration.html.md)

  - [Automated Test Configuration](project_test_configuration.html.md#automated-test-configuration)
  - [Test Advisor Configuration](project_test_configuration.html.md#test-advisor-configuration)
- [Medidata Rave URLs](medidata_rave_urls.html.md)
- [TG_UAT Draft versions](tg_uat_versions.html.md)
