rctf

This documentation was generated from rctf commit 965dded,
which was tested against REDCap v16.0.11.

Browse Projects

I (should )see {int} row(s) displayed in the projects table

Parameters
num_rows (int) number of rows expected to be displayed in the Projects Table

Verifies the number of rows in the Browse Projects table.

Author: Adam De Fouw

I (should )see a row labeled {string} in the projects table

Parameters
project_name (string) name of the REDCap Project we are expecting to see

Verifies a specific project - by name - is displayed within the projects table.

Author: Adam De Fouw

I (should )see projects sorted correctly when I click on {string} to sort in either direction

Parameters
column_name (string) name of the Column we want to click on to change the sort direction

Clicks on a specific column to sort it in the opposite direction versus initial state.

Author: Adam De Fouw

Configuration Check

Parameters
link_label (string) the name of the link label in the Control Center panel
title (string) the title of the page visited (optional)

Verifies a Control Center link is visible and visitable.

Author: Adam De Fouw

Control Center

I (should )see the "{toDoRequestTypes}" request created for the project named {string} within the "{toDoTableTypes}" table

Parameters
toDoRequestTypes
  • 'Move to prod'
  • 'Approve draft changes'
  • 'Copy project'
  • 'Delete project'
project_name (string) the text value of project name you want to target
toDoTableTypes
  • 'Pending Requests'
  • 'Low Priority Pending Requests'
  • 'Completed & Archived Requests'

Identifies Request Type within the To-Do-List page based upon Project Name, and Table Name specified.

Author: Adam De Fouw

I {enableDisable} the Administrator Privilege {string} for the administrator {string}

Parameters
enableDisable
  • 'enable'
  • 'disable'
admin_user (string) the name of the user you are setting the privilege for

Enables the privilege for the administrator based upon user.

Author: Adam De Fouw

I click on the "{toDoTableIcons}" icon for the "{toDoRequestTypes}" request created for the project named {string} within the "{toDoTableTypes}" table

Parameters
toDoTableIcons
  • 'process request'
  • 'get more information'
  • 'add or edit a comment'
  • 'Move to low priority section'
  • 'archive request notification'
toDoRequestTypes
  • 'Move to prod'
  • 'Approve draft changes'
  • 'Copy project'
  • 'Delete project'
project_name (string) the text value of project name you want to target
toDoTableTypes
  • 'Pending Requests'
  • 'Low Priority Pending Requests'
  • 'Completed & Archived Requests'

Clicks on an icon within the To-Do-List page based upon Icon, Request Type, Project Name, and Table Name specified.

Author: Adam De Fouw

I enable the Administrator Privilege {string} for a new administrator

Parameters
privilege (string) the label of the privilege you want for the user

Enables the privilege for the administrator based upon user.

Author: Adam De Fouw

CSV

I verify the {dateTimeType} in column labeled {string} for record {string} has shifted today's date in the latest downloaded {string}

Parameters
column_label (string) column in the CSV file
record_name (string) name of the record in the CSV file

Verifies that a date has shifted from today's date

Author: Adam De Fouw

the downloaded CSV with filename {string}( should have)( has) {int} row(s)

Parameters
filename (string) the filename the downloaded CSV
num_rows (int) the number of row sthe CSV file should have

Verifies number of rows the CSV file should have.

Author: Tintin Nguyen

the downloaded CSV with filename {string}( should have)( has) a value {string} for column {string}

Parameters
filename (string) the filename the downloaded CSV
value (string) the value of the column data we are verifying
column (string) the text name of the column data we are verifying

Verifies a row value exists for a given column within a CSV file.

Author: Tintin Nguyen

the downloaded CSV with filename {string}( should have)( has) the( ){headerOrNot}( row)(s) below

Parameters
filename (string) the filename the downloaded CSV
headerOrNot
  • 'header and'
  • 'header'
headings (DataTable) the DataTable of headings this file should have

Verifies headers and rows of the CSV file.

Author: Tintin Nguyen

Data Access Groups

I {clickType} {string} for user {string} in the DAG Switcher{baseElement}

Parameters
clickType
  • 'click on'
  • 'check'
  • 'uncheck'
  • 'enable'
  • 'disable'
dag (string) the name of the Data Access Group
user (string) the username of user to interact with
baseElement
  • ' on the tooltip'
  • ' in the tooltip'
  • ' on the role selector dropdown'
  • ' in the role selector dropdown'
  • ' on the dialog box'
  • ' in the dialog box'
  • ' on the Add/Edit Branching Logic dialog box'
  • ' in the Add/Edit Branching Logic dialog box'
  • ' within the data collection instrument list'
  • ' on the action popup'
  • ' in the action popup'
  • ' in the Edit survey responses column'
  • ' in the open date picker widget'
  • ' in the File Repository table'
  • ' in the View Access section of User Access'
  • ' in the Edit Access section of User Access'
  • ' in the "Main project settings" section'
  • ' in the "Use surveys in this project?" row in the "Main project settings" section'
  • ' in the "Use longitudinal data collection with defined events?" row in the "Main project settings" section'
  • ' in the "Use the MyCap participant-facing mobile app?" row in the "Main project settings" section'
  • ' in the "Enable optional modules and customizations" section'
  • ' in the "Repeating instruments and events" row in the "Enable optional modules and customizations" section'
  • ' in the "Auto-numbering for records" row in the "Enable optional modules and customizations" section'
  • ' in the "Scheduling module" row in the "Enable optional modules and customizations" section'
  • ' in the "Randomization module" row in the "Enable optional modules and customizations" section'
  • ' in the "Designate an email field for communications (including survey invitations and alerts)" row in the "Enable optional modules and customizations" section'
  • ' in the "Twilio SMS and Voice Call services for surveys and alerts" row in the "Enable optional modules and customizations" section'
  • ' in the "Mosio SMS services for surveys and alerts" row in the "Enable optional modules and customizations" section'
  • ' in the "SendGrid Template email services for Alerts & Notifications" row in the "Enable optional modules and customizations" section'

Selects a checkbox field by its label.

Author: Adam De Fouw

I click on a table cell containing the text {string} in the {tableTypes} table and clear field and {enterType} enter {string}

Parameters
text (string) the text to locate the table cell
tableTypes
  • 'a'
  • 'logging'
  • 'browse users'
  • 'file repository'
  • 'administrators'
  • 'reports'
  • 'report data'
  • 'define events'
  • 'data access groups'
  • 'DAGs Switcher'
  • 'record status dashboard'
  • 'data collection instruments'
  • 'codebook'
  • 'import data display'
  • 'participant list'
  • 'user rights'
  • 'record locking'
  • 'e-signature and locking management'
  • 'record home page'
enterType
  • 'verify'
  • 'enter'
  • 'clear field and enter'
  • 'click on'
new_text (string) new text to type

Clicks on a table cell that is identified by a particular text string specified.

Author: Adam De Fouw

Data Import

I click the button labeled {string} to select and upload {string} to File Repository and see that the upload failed

Parameters
button_label (string) the name on the button we click
null-null (path) file path from the Files directory that we want to upload

Attempt to imports a file to the File Repository while expecting failure.

Author: Mark McEver

I click the button labeled {string} to select and upload the following file(s) to the File Repository:

Parameters
button_label (string) the name on the button we click
null-null (dataTable) options - the file paths from the Files directory that we want to upload

Imports file(s) to the File Repository.

Author: Adam De Fouw

I create a new project named {string} by clicking on "New Project" in the menu bar, selecting "{projectType}" from the dropdown, choosing file {string}, and clicking the "{projectRequestLabel}" button

Parameters
project_name (string) the desired name for the project
projectType
  • 'Practice / Just for fun'
  • 'Operational Support'
  • 'Research'
  • 'Quality Improvement'
  • 'Other'
cdisc_file (string) the fixture path to the CDISC XML file (relative path; fixtures are located in /cypress/fixtures/cdisc_files/)
projectRequestLabel
  • 'Create Project'
  • 'Send Request'

Creates a new REDCap project of a specific project type from a CDISC XML file.

Author: Adam De Fouw

I upload a {string} format file located at {string}, by clicking the button near {string} to browse for the file(, and clicking the button labeled "){optionalString}(" to upload the file)

Parameters
format (string) the format of the file that is being uploaded (e.g. csv)
file_location (string) the location of the file being uploaded (e.g. import_files/core/filename.csv)
upload_label (string) text near the upload label
button_label (string) text on the button you click to upload

Imports well-formed REDCap data import file (of specific type) to a specific project given a Project ID.

Author: Adam De Fouw

Development Only

I want to export a snapshot of this feature here

Exports a snapshot of the current database structure at that point in the test and pauses. On subsequent runs, feature will attempt to login with the same user on the same page.

Author: Adam De Fouw

I want to pause

Pauses the Cypress session.

Author: Adam De Fouw

Download

I {shouldOrShouldNot} see a signature for the {string} field in the downloaded PDF for record {string} and survey {string}

Parameters
shouldOrShouldNot
  • 'should'
  • 'should NOT'
signatureField (string) the field under which the signature would be stored
record (string) the Survey / Event of the record the PDF is associated with
survey (string) the Survey / Event of the record the PDF is associated with

Detects whether or not a signature exists in the specified PDF

Author: Mark McEver

I {shouldOrShouldNot} see the following values in the last file downloaded

Verifies the values within a PDF in the PDF Archive

Author: Mintoo Xavier

Parameters
text (string) the text on the anchor element you want to click

Downloads a file from an anchor element with a specific text label.

Author: Adam De Fouw

I populate "webdav_connection.php" with the appropriate WebDAV credentials

Populates the /webtools2/webdav/webdav_connection.php file with test credentials

Author: Mark McEver

I should see the following values in the most recent file in the {storageDirectoryLocations}

Verifies whether a file exists in the specified storage location

Author: Mark McEver

Then if running via automation, start external storage services

Starts or stops services required to test external storage

Author: Mark McEver

Then if running via automation, start sftp server

Starts or stops the sftp server

Author: Mark McEver

Interactions

I {action} {articleType}( ){ordinal}( ){optionalLabeledElement}( )(labeled ){textType}( ){optionalQuotedString}( )(in the )(column labeled ){optionalQuotedString}( and the )(row labeled ){optionalQuotedString}( ){elementStatus}

Parameters
action
  • 'click on'
  • 'check'
  • 'uncheck'
  • 'should see'
  • 'should NOT see'
articleType
  • 'a'
  • 'an'
  • 'the'
type (optionalLabeledElement) the type of element we're looking for
text (optionalQuotedString) the label for the element
columnLabel
  • ''
  • 'in the Matrix column'
rowLabel (string) the label of the table row
elementStatus
  • 'that is disabled'
  • 'that is checked'
  • 'that is unchecked'

Performs an action on a labeled element in the specified table row and/or column

Author: Mark McEver

I {clickType} the {elmType} element labeled {string}

Parameters
clickType
  • 'click on'
  • 'check'
  • 'uncheck'
  • 'enable'
  • 'disable'
elmType
  • 'input'
  • 'list item'
  • 'checkbox'
  • 'span'
label (string) the label associated with the checkbox field

Selects a checkbox field by its label

Author: Adam De Fouw

I {enterType} {string} (into)(is within) the( ){ordinal}( ){inputType} field( ){columnLabel}( ){labeledExactly} {string}{baseElement}{iframeVisibility}

Parameters
enterType
  • 'verify'
  • 'enter'
  • 'clear field and enter'
  • 'click on'
label (string) the label of the field
baseElement
  • ' on the tooltip'
  • ' in the tooltip'
  • ' on the role selector dropdown'
  • ' in the role selector dropdown'
  • ' on the dialog box'
  • ' in the dialog box'
  • ' on the Add/Edit Branching Logic dialog box'
  • ' in the Add/Edit Branching Logic dialog box'
  • ' within the data collection instrument list'
  • ' on the action popup'
  • ' in the action popup'
  • ' in the Edit survey responses column'
  • ' in the open date picker widget'
  • ' in the File Repository table'
  • ' in the View Access section of User Access'
  • ' in the Edit Access section of User Access'
  • ' in the "Main project settings" section'
  • ' in the "Use surveys in this project?" row in the "Main project settings" section'
  • ' in the "Use longitudinal data collection with defined events?" row in the "Main project settings" section'
  • ' in the "Use the MyCap participant-facing mobile app?" row in the "Main project settings" section'
  • ' in the "Enable optional modules and customizations" section'
  • ' in the "Repeating instruments and events" row in the "Enable optional modules and customizations" section'
  • ' in the "Auto-numbering for records" row in the "Enable optional modules and customizations" section'
  • ' in the "Scheduling module" row in the "Enable optional modules and customizations" section'
  • ' in the "Randomization module" row in the "Enable optional modules and customizations" section'
  • ' in the "Designate an email field for communications (including survey invitations and alerts)" row in the "Enable optional modules and customizations" section'
  • ' in the "Twilio SMS and Voice Call services for surveys and alerts" row in the "Enable optional modules and customizations" section'
  • ' in the "Mosio SMS services for surveys and alerts" row in the "Enable optional modules and customizations" section'
  • ' in the "SendGrid Template email services for Alerts & Notifications" row in the "Enable optional modules and customizations" section'

Author: Adam De Fouw

I {enterType} {string} (is within)(into) the data entry form field labeled {string}

Parameters
enterType
  • 'verify'
  • 'enter'
  • 'clear field and enter'
  • 'click on'
text (string) the text to enter into the field
label (string) the label of the field

Enters a specific text string into a field identified by a label. (NOTE: The field is not automatically cleared.)

Author: Adam De Fouw

I {enterType} {string} in(to) the( ){ordinal}( )textarea field {labeledExactly} {string}{baseElement}

Parameters
enterType
  • 'verify'
  • 'enter'
  • 'clear field and enter'
  • 'click on'
text (string) the text to enter into the field
label (string) the label of the field
baseElement
  • ' on the tooltip'
  • ' in the tooltip'
  • ' on the role selector dropdown'
  • ' in the role selector dropdown'
  • ' on the dialog box'
  • ' in the dialog box'
  • ' on the Add/Edit Branching Logic dialog box'
  • ' in the Add/Edit Branching Logic dialog box'
  • ' within the data collection instrument list'
  • ' on the action popup'
  • ' in the action popup'
  • ' in the Edit survey responses column'
  • ' in the open date picker widget'
  • ' in the File Repository table'
  • ' in the View Access section of User Access'
  • ' in the Edit Access section of User Access'
  • ' in the "Main project settings" section'
  • ' in the "Use surveys in this project?" row in the "Main project settings" section'
  • ' in the "Use longitudinal data collection with defined events?" row in the "Main project settings" section'
  • ' in the "Use the MyCap participant-facing mobile app?" row in the "Main project settings" section'
  • ' in the "Enable optional modules and customizations" section'
  • ' in the "Repeating instruments and events" row in the "Enable optional modules and customizations" section'
  • ' in the "Auto-numbering for records" row in the "Enable optional modules and customizations" section'
  • ' in the "Scheduling module" row in the "Enable optional modules and customizations" section'
  • ' in the "Randomization module" row in the "Enable optional modules and customizations" section'
  • ' in the "Designate an email field for communications (including survey invitations and alerts)" row in the "Enable optional modules and customizations" section'
  • ' in the "Twilio SMS and Voice Call services for surveys and alerts" row in the "Enable optional modules and customizations" section'
  • ' in the "Mosio SMS services for surveys and alerts" row in the "Enable optional modules and customizations" section'
  • ' in the "SendGrid Template email services for Alerts & Notifications" row in the "Enable optional modules and customizations" section'

Enters a specific text string into a field identified by a label. (NOTE: The field is not automatically cleared.)

Author: Adam De Fouw

I {enterType} {string} into the field with the placeholder text of {string}

Parameters
enterType
  • 'verify'
  • 'enter'
  • 'clear field and enter'
  • 'click on'
text (string) the text to enter into the field
placeholder (string) the text that is currently in the field as a placeholder

Enter text into a specific field

Author: Adam De Fouw

I clear the field labeled {string}

Parameters
label (string) the label of the field to select

Clears the text from an input field based upon its label

Author: Adam De Fouw

I click on the {string} {labeledElement} within (a)(the) {tableTypes} table in the following row:

Parameters
label (string) label on the element
element (string) link or button
table (string) description of the table
table (dataTable) row(s) from the table to help us identify the row

Clicks on an element (link or button) within a specified row of a table

Author: Adam De Fouw

I click on the {string} button for the field labeled {string}

Parameters
label (string) the label of the field

Open the date picker widget

Author: Adam De Fouw

I click on the button labeled {string} for the row labeled {string}

Parameters
text (string) the text on the button element you want to click
label (string) the lable of the row with the button you want to click

Clicks on a button element with a specific text title inside the table row label

Author: Tintin Nguyen

I click on the date picker widget on the field labeled {string}

Parameters
label (string) the label of the field

Open the date picker widget

Author: Adam De Fouw

I click on the table heading column labeled {string}

Parameters
column (string) the text to enter into the field

Clicks on a specific table column

Author: Adam De Fouw

I click on( ){articleType}( ){ordinal}( )button labeled {string} and will leave the tab open when I return to the REDCap project

Parameters
articleType
  • 'a'
  • 'an'
  • 'the'
ordinal
  • 'first'
  • 'second'
  • 'third'
  • 'fourth'
  • 'fifth'
  • 'sixth'
  • 'seventh'
  • 'eighth'
  • 'ninth'
  • 'tenth'
  • 'eleventh'
  • 'twelfth'
  • 'thirteenth'
  • 'fourteenth'
  • 'fifteenth'
  • 'sixteenth'
  • 'seventeenth'
  • 'eighteenth'
  • 'nineteenth'
  • 'twentieth'
  • 'last'

Clicks on a button element with a specific text label.

Author: Adam De Fouw

I click the element containing the following text: {string}

Parameters
value (string) text that is inside the element

Clicks the element that contains the text specified

Author: Adam De Fouw

I close the iframe window

Closes iframe window on the To-Do List page

Author: Adam De Fouw

I drag the field choice labeled {string} to the box labeled "Show the field ONLY if..."

Parameters
column (string) the text to enter into the field

Clicks on a specific table column

Author: Adam De Fouw

I draw a signature in the signature field area

Parameters
column (string) the text to enter into the field

Clicks on a specific table column

Author: Adam De Fouw

I enter {string} into the field identified by {string} labeled {string}

Parameters
text (string) the text to enter into the field
selector (string) the selector of the element to enter the text into
label (string) the label associated with the field

Selects an input field by its label and then by selector

Author: Tintin Nguyen

I enter the code that was emailed to the current user into the( ){ordinal}( ){inputType} field( ){columnLabel}( ){labeledExactly} {string}{baseElement}{iframeVisibility}

Parameters
label (string) the label of the field
baseElement
  • ' on the tooltip'
  • ' in the tooltip'
  • ' on the role selector dropdown'
  • ' in the role selector dropdown'
  • ' on the dialog box'
  • ' in the dialog box'
  • ' on the Add/Edit Branching Logic dialog box'
  • ' in the Add/Edit Branching Logic dialog box'
  • ' within the data collection instrument list'
  • ' on the action popup'
  • ' in the action popup'
  • ' in the Edit survey responses column'
  • ' in the open date picker widget'
  • ' in the File Repository table'
  • ' in the View Access section of User Access'
  • ' in the Edit Access section of User Access'
  • ' in the "Main project settings" section'
  • ' in the "Use surveys in this project?" row in the "Main project settings" section'
  • ' in the "Use longitudinal data collection with defined events?" row in the "Main project settings" section'
  • ' in the "Use the MyCap participant-facing mobile app?" row in the "Main project settings" section'
  • ' in the "Enable optional modules and customizations" section'
  • ' in the "Repeating instruments and events" row in the "Enable optional modules and customizations" section'
  • ' in the "Auto-numbering for records" row in the "Enable optional modules and customizations" section'
  • ' in the "Scheduling module" row in the "Enable optional modules and customizations" section'
  • ' in the "Randomization module" row in the "Enable optional modules and customizations" section'
  • ' in the "Designate an email field for communications (including survey invitations and alerts)" row in the "Enable optional modules and customizations" section'
  • ' in the "Twilio SMS and Voice Call services for surveys and alerts" row in the "Enable optional modules and customizations" section'
  • ' in the "Mosio SMS services for surveys and alerts" row in the "Enable optional modules and customizations" section'
  • ' in the "SendGrid Template email services for Alerts & Notifications" row in the "Enable optional modules and customizations" section'

Author: Mark McEver

I enter the current user's Super API Token into the( ){ordinal}( ){inputType} field( ){columnLabel}( ){labeledExactly} {string}{baseElement}{iframeVisibility}

Parameters
label (string) the label of the field
baseElement
  • ' on the tooltip'
  • ' in the tooltip'
  • ' on the role selector dropdown'
  • ' in the role selector dropdown'
  • ' on the dialog box'
  • ' in the dialog box'
  • ' on the Add/Edit Branching Logic dialog box'
  • ' in the Add/Edit Branching Logic dialog box'
  • ' within the data collection instrument list'
  • ' on the action popup'
  • ' in the action popup'
  • ' in the Edit survey responses column'
  • ' in the open date picker widget'
  • ' in the File Repository table'
  • ' in the View Access section of User Access'
  • ' in the Edit Access section of User Access'
  • ' in the "Main project settings" section'
  • ' in the "Use surveys in this project?" row in the "Main project settings" section'
  • ' in the "Use longitudinal data collection with defined events?" row in the "Main project settings" section'
  • ' in the "Use the MyCap participant-facing mobile app?" row in the "Main project settings" section'
  • ' in the "Enable optional modules and customizations" section'
  • ' in the "Repeating instruments and events" row in the "Enable optional modules and customizations" section'
  • ' in the "Auto-numbering for records" row in the "Enable optional modules and customizations" section'
  • ' in the "Scheduling module" row in the "Enable optional modules and customizations" section'
  • ' in the "Randomization module" row in the "Enable optional modules and customizations" section'
  • ' in the "Designate an email field for communications (including survey invitations and alerts)" row in the "Enable optional modules and customizations" section'
  • ' in the "Twilio SMS and Voice Call services for surveys and alerts" row in the "Enable optional modules and customizations" section'
  • ' in the "Mosio SMS services for surveys and alerts" row in the "Enable optional modules and customizations" section'
  • ' in the "SendGrid Template email services for Alerts & Notifications" row in the "Enable optional modules and customizations" section'

Author: Mark McEver

I export all data in {string} format and expect {int} record(s)

Parameters
value (string) type of export
num (int) expect this many records

Exports all data in selected export type

Author: Rushi Patel

I move the Hour slider for the open date picker widget to {int}

Parameters
hour (int) the desired hour position we want

Moves the slider to a specific position for the Hour slider

Author: Adam De Fouw

I move the Minute slider for the open date picker widget to {int}

Parameters
minute (int) the desired minute position we want

Moves the slider to a specific position for the Minute slider

Author: Adam De Fouw

I move the slider field labeled {string} to the position of {int}

Parameters
label (string) the label of the field
position (string) the desired position we want to move the slider to

Moves the slider to a specific position

Author: Adam De Fouw

I remember to click cancel on the confirmation dialog that appears after the following step

Cancels the confirmation dialog displayed during the following step

Author: Mark McEver

I select {string} (in)(on) the{ordinal} {dropdownType} (field labeled)(of the open date picker widget for) {string}{baseElement}

Parameters
text (string) the text to enter into the field
ordinal
  • 'first'
  • 'second'
  • 'third'
  • 'fourth'
  • 'fifth'
  • 'sixth'
  • 'seventh'
  • 'eighth'
  • 'ninth'
  • 'tenth'
  • 'eleventh'
  • 'twelfth'
  • 'thirteenth'
  • 'fourteenth'
  • 'fifteenth'
  • 'sixteenth'
  • 'seventeenth'
  • 'eighteenth'
  • 'nineteenth'
  • 'twentieth'
  • 'last'
dropdownType
  • 'dropdown'
  • 'multiselect'
  • 'checkboxes'
  • 'radio'
label (string) the label of the field
baseElement
  • ' on the tooltip'
  • ' in the tooltip'
  • ' on the role selector dropdown'
  • ' in the role selector dropdown'
  • ' on the dialog box'
  • ' in the dialog box'
  • ' on the Add/Edit Branching Logic dialog box'
  • ' in the Add/Edit Branching Logic dialog box'
  • ' within the data collection instrument list'
  • ' on the action popup'
  • ' in the action popup'
  • ' in the Edit survey responses column'
  • ' in the open date picker widget'
  • ' in the File Repository table'
  • ' in the View Access section of User Access'
  • ' in the Edit Access section of User Access'
  • ' in the "Main project settings" section'
  • ' in the "Use surveys in this project?" row in the "Main project settings" section'
  • ' in the "Use longitudinal data collection with defined events?" row in the "Main project settings" section'
  • ' in the "Use the MyCap participant-facing mobile app?" row in the "Main project settings" section'
  • ' in the "Enable optional modules and customizations" section'
  • ' in the "Repeating instruments and events" row in the "Enable optional modules and customizations" section'
  • ' in the "Auto-numbering for records" row in the "Enable optional modules and customizations" section'
  • ' in the "Scheduling module" row in the "Enable optional modules and customizations" section'
  • ' in the "Randomization module" row in the "Enable optional modules and customizations" section'
  • ' in the "Designate an email field for communications (including survey invitations and alerts)" row in the "Enable optional modules and customizations" section'
  • ' in the "Twilio SMS and Voice Call services for surveys and alerts" row in the "Enable optional modules and customizations" section'
  • ' in the "Mosio SMS services for surveys and alerts" row in the "Enable optional modules and customizations" section'
  • ' in the "SendGrid Template email services for Alerts & Notifications" row in the "Enable optional modules and customizations" section'

Selects a specific item from a dropdown

Author: Adam De Fouw

I select {string} for the file upload field labeled {string}

Parameters
filename (string) the path to the file
label (string) the label of the file upload field

Selects the specified file on the specified file upload field

Author: Mark McEver

I select the checkbox option {string} for the field labeled {string}

Parameters
checkbox_option (string) option we want to select from the dropdown
field_label (string) the label on the field we want to select

Clicks the dropdown option on the field specified

Author: Adam De Fouw

I select the dropdown option {string} for the Data Collection Instrument field labeled {string}

Parameters
dropdown_option (string) option we want to select from the dropdown
field_label (string) the label on the field we want to select

Clicks the dropdown option on the field specified

Author: Adam De Fouw

I select the last file downloaded for the file upload field labeled {string}

Parameters
label (string) the label of the file upload field

Selects the last downloaded file on the specified file upload field

Author: Mark McEver

I select the radio option {string} for the field labeled {string}{baseElement}

Parameters
option (string) option we want to select from the radio options
field_label (string) the label on the field we want to select

Clicks the radio option on the field specified

Author: Adam De Fouw

I select the submit option labeled "{instrumentSaveOptions}" on the Data Collection Instrument

Parameters
instrumentSaveOptions
  • 'Save & Stay'
  • 'Save & Exit Record'
  • 'Save & Go To Next Record'
  • 'Save & Exit Form'
  • 'Save & Go To Next Form'
  • 'Save & Go To Next Instance'
  • 'Save & Add New Instance'

Clicks a specific submit option to save a record on a Data Collection Instrument

Author: Adam De Fouw

I set the input file field named {string} to the file at path {string}{baseElement}

Parameters
name (string) the name attribute of the input file field
path (string) the path of the file to upload
baseElement
  • ' on the tooltip'
  • ' in the tooltip'
  • ' on the role selector dropdown'
  • ' in the role selector dropdown'
  • ' on the dialog box'
  • ' in the dialog box'
  • ' on the Add/Edit Branching Logic dialog box'
  • ' in the Add/Edit Branching Logic dialog box'
  • ' within the data collection instrument list'
  • ' on the action popup'
  • ' in the action popup'
  • ' in the Edit survey responses column'
  • ' in the open date picker widget'
  • ' in the File Repository table'
  • ' in the View Access section of User Access'
  • ' in the Edit Access section of User Access'
  • ' in the "Main project settings" section'
  • ' in the "Use surveys in this project?" row in the "Main project settings" section'
  • ' in the "Use longitudinal data collection with defined events?" row in the "Main project settings" section'
  • ' in the "Use the MyCap participant-facing mobile app?" row in the "Main project settings" section'
  • ' in the "Enable optional modules and customizations" section'
  • ' in the "Repeating instruments and events" row in the "Enable optional modules and customizations" section'
  • ' in the "Auto-numbering for records" row in the "Enable optional modules and customizations" section'
  • ' in the "Scheduling module" row in the "Enable optional modules and customizations" section'
  • ' in the "Randomization module" row in the "Enable optional modules and customizations" section'
  • ' in the "Designate an email field for communications (including survey invitations and alerts)" row in the "Enable optional modules and customizations" section'
  • ' in the "Twilio SMS and Voice Call services for surveys and alerts" row in the "Enable optional modules and customizations" section'
  • ' in the "Mosio SMS services for surveys and alerts" row in the "Enable optional modules and customizations" section'
  • ' in the "SendGrid Template email services for Alerts & Notifications" row in the "Enable optional modules and customizations" section'

Selects a file path to upload into input named name

Author: Tintin Nguyen

I wait for (another ){int} {timeType}

Parameters
null-null (int) the number of seconds/minutes to wait
timeType
  • 'seconds'
  • 'second'
  • 'minutes'
  • 'minute'

Waits for specified number of second(s)/minute(s) before allowing anything else to happen

Author: Adam De Fouw

I wait for {int} hour(s)

Parameters
null-null (int) the number of hours for which to simulate waiting

Does not actually wait for hours, but instead simulates the specified number of hours passing by modifying the database as if all past events has occurred the specified number of hours ago.

Author: Mark McEver

Logging

I export all logging from the project and verify the result against expected logging results for this version of REDCap

Exports all logging from the Logging page

Author: Adam De Fouw

I select the {string} option from the Filter by username dropdown field

Parameters
text (string) dropdown option

Select logging option from the Filter by username dropdown field

Author: Rushi Patel

Login

I {loginTypes} the user {string}

Parameters
user (string) the user we are logging in as (e.g. 'Test_User1' or 'Test_Admin' as specified in the cypress.env.json file)

Logs in to REDCap using a seeded user type.

Author: Adam De Fouw

I logout

Logs a given user out of REDCap

Author: Adam De Fouw

Longitudinal Events

I (should )see the {string} icon for the {string} longitudinal instrument( for instance ){optionalString} on event {string}

Parameters
icon (string) the name of the icon expected
instrumentName (string) the name of the Data Collection Instrument targeted
instance (string) (optional) the name of the instance, if using repeating instruments
eventName (string) the name of the specific event targeted

Verifies the icon given a specific longitudinal instrument and event (optional instance for repeating instruments)

Author: Adam De Fouw

I (should) see the {string} icon for the {string} longitudinal instrument on event {string} for record {string}

Parameters
icon (string) the name of the icon expected
instrumentName (string) the name of the Data Collection Instrument targeted
eventName (string) the name of the specific event targeted
record (string) the name of the specific event targeted

Verifies the icon given a specific longitudinal instrument and event for a given record

Author: Adam De Fouw

I {notSeeDC} {string} for the Event named {string}

Parameters
instrumentName (string) the name of the instrument
eventName (string) the name of the event

Verifies an instrument exists within an event on a longitudinal project

Author: Adam De Fouw

I add an event named {string} with offset of {int} day(s) into the currently selected arm

Parameters
eventName (string) the name of the event
days (int) number of days offset

Adds an event via the "Define My Events" page for a Longitudinal Project

Author: Adam De Fouw

I change the current Event Name from {string} to {string}

Parameters
currentName (string) the name of the event when this step is reached
proposedName (string) the name of the event to change the current event name to

Changes the name of an event on the "Define My Events" page for a Longitudinal Project

Author: Adam De Fouw

I click on the {editEvent} image for the event named {string}

Parameters
editEvent
  • 'Edit'
  • 'Delete'
eventName (string) name of the Event targeted

Clicks on the image link of the action you want to perform on a event

Author: Adam De Fouw

I disable the Data Collection Instrument named {string} for the Event named {string}

Parameters
instrumentName (string) the name of the Data Collection Instrument we are disabling for a specific event
eventName (string) the name of the event to disable the Data Collection Instrument for

Disables a Data Collection Instrument for a specific Event within a Longitudinal Project. (Assumption: User is on "Designate Instruments for My Events" page.)

Author: Adam De Fouw

I enable the Data Collection Instrument named {string} for the Event named {string}

Parameters
instrumentName (string) the name of the Data Collection Instrument we are enabling for a specific event
eventName (string) the name of the event to enable the Data Collection Instrument for

Enables a Data Collection Instrument for a specific Event within a Longitudinal Project. (Assumption: User is on "Designate Instruments for My Events" page.)

Author: Adam De Fouw

I verify I cannot change the Event Name of {string} while in production

Parameters
currentName (string) the name of the event when this step is reached

Verifies the event name cannot be changed in production mode

Author: Adam De Fouw

I verify the Data Collection Instrument named {string} is disabled for the Event named {string}

Parameters
instrumentName (string) the name of the Data Collection Instrument we are disabling for a specific event
eventName (string) the name of the event to disable the Data Collection Instrument for

Verifies a Data Collection Instrument is disabled for a specific Event within a Longitudinal Project. (Assumption: User is on "Designate Instruments for My Events" page.)

Author: Adam De Fouw

I verify the Data Collection Instrument named {string} is enabled for the Event named {string}

Parameters
instrumentName (string) the name of the Data Collection Instrument we are disabling for a specific event
eventName (string) the name of the event to disable the Data Collection Instrument for

Verifies a Data Collection Instrument is enabled for a specific Event within a Longitudinal Project. (Assumption: User is on "Designate Instruments for My Events" page.)

Author: Adam De Fouw

I verify the Data Collection Instrument named {string} is unmodifiable for the Event named {string}

Parameters
instrumentName (string) the name of the Data Collection Instrument we are disabling for a specific event
eventName (string) the name of the event to disable the Data Collection Instrument for

Verifies a Data Collection Instrument is unmodifiable for a specific Event within a Longitudinal Project. (Assumption: User is on "Designate Instruments for My Events" page.)

Author: Adam De Fouw

Longitudinal Project Setup

I should NOT see the Delete image for the Event named {string}

Parameters
eventName (string) name of event in row where X would be

Verifies the Delete image for the event is not present

Author: Mintoo Xavier

Misc

I {shouldOrShouldNot} see a file on the External Storage server whose name contains {string}

Parameters
action
  • 'click on'
  • 'check'
  • 'uncheck'
  • 'should see'
  • 'should NOT see'
partialFilename (string) a filename or portion of a filename to check

Verifies whether a file exists on the External Storage server

Author: Mark McEver

Online Designer

I (should )see {string} within the field with variable name {string}

Parameters
text (string) the text we're looking for
variable_name (string) the REDCap field within with to look

Looks for the specified text within the specified REDCap field

Author: Adam De Fouw

I (should) see the instrument named {string} in the{ordinal} row

Parameters
instrument (string) the naame of the instrument being drag-n-dropped
ordinal
  • 'first'
  • 'second'
  • 'third'
  • 'fourth'
  • 'fifth'
  • 'sixth'
  • 'seventh'
  • 'eighth'
  • 'ninth'
  • 'tenth'
  • 'eleventh'
  • 'twelfth'
  • 'thirteenth'
  • 'fourteenth'
  • 'fifteenth'
  • 'sixteenth'
  • 'seventeenth'
  • 'eighteenth'
  • 'nineteenth'
  • 'twentieth'
  • 'last'

Interactions - Drag and drop the instrument to the int position

Author: Tintin Nguyen

I {enterType} Choice(s) of {string} in(to) the open "{addEditField}" dialog box

Parameters
enterType
  • 'verify'
  • 'enter'
  • 'clear field and enter'
  • 'click on'
choices (string) the choices in string format
addEditField
  • 'Add New Field'
  • 'Edit Field'

Author: Adam De Fouw

I add a new {fieldType} field labeled {string} with variable name {string} and click on the {string} button

Parameters
fieldType
  • 'Text Box'
  • 'Notes Box'
  • 'Drop-down List'
  • 'Radio Buttons'
  • 'Checkboxes'
  • 'Yes - No'
  • 'True - False'
  • 'Signature'
  • 'File Upload'
  • 'Slider'
  • 'Descriptive Text'
  • 'Begin New Section'
  • 'Calculated Field'
variable_name (string) variable name

Creates a new field in the Online Designer

Author: Madilynn Peterson

I add an instrument below the instrument named {string}

Parameters
instrument (string) the name of the instrument you are adding an instrument below

Interactions - Clicks the Add Instrument Here button below a specific Instrument name

Author: Tintin Nguyen

I click on the {addField} input button below the field named {string}

Parameters
addField
  • 'Add Field'
  • 'Add Matrix of Fields'
  • 'Import from Field Bank'
target (string) the name of the field you want to add a field below

Clicks on one of the add field options below a specified field name

Author: Tintin Nguyen

I click on the {editField} image for the field named {string}

Parameters
editField
  • 'Edit'
  • 'Edit Matrix'
  • 'Branching Logic'
  • 'Copy'
  • 'Move'
  • 'Delete Field'
field (string) the name of the field you want to edit

Clicks on the image link of the action you want to perform on a field

Author: Tintin Nguyen

I click on the Instrument Action {string} for the instrument named {string}

Parameters
action
  • 'click on'
  • 'check'
  • 'uncheck'
  • 'should see'
  • 'should NOT see'
instrument (string) the name of the instrument that a form should be added below

Interactions - Clicks the "choose action" button and clicks an anchor link

Author: Tintin Nguyen

Parameters
field_label (string) the label of the field

Interactions - Clicks the reset link for a specific field label

Author: Adam De Fouw

I delete the field named {string}

Parameters
type (string) the type of edit action you want to perform on a field

Interactions - Clicks on the image link of the action you want to perform on a field

Author: Adam De Fouw

I drag (on )the field variable named {string} {aboveBelow} the field variable named {string}

Parameters
field (string) the name of the field being drag-n-dropped
position (int) the position (index starting from 0) where the instrument should be placed

Interactions - Drag and drop the field to the int position

Author: Tintin Nguyen

I drag on the instrument named {string} to position {int}

Parameters
instrument (string) the naame of the instrument being drag-n-dropped
position (int) the position (index starting from 0) where the instrument should be placed

Interactions - Drag and drop the instrument to the int position

Author: Tintin Nguyen

I drag the field named {string} to the{ordinal} row

Parameters
field (string) the name of the field being drag-n-dropped
ordinal
  • 'first'
  • 'second'
  • 'third'
  • 'fourth'
  • 'fifth'
  • 'sixth'
  • 'seventh'
  • 'eighth'
  • 'ninth'
  • 'tenth'
  • 'eleventh'
  • 'twelfth'
  • 'thirteenth'
  • 'fourteenth'
  • 'fifteenth'
  • 'sixteenth'
  • 'seventeenth'
  • 'eighteenth'
  • 'nineteenth'
  • 'twentieth'
  • 'last'

Interactions - Drag and drop the field to the int position

Author: Tintin Nguyen

I drag the instrument named {string} to the{ordinal} row

Parameters
instrument (string) the naame of the instrument being drag-n-dropped
ordinal
  • 'first'
  • 'second'
  • 'third'
  • 'fourth'
  • 'fifth'
  • 'sixth'
  • 'seventh'
  • 'eighth'
  • 'ninth'
  • 'tenth'
  • 'eleventh'
  • 'twelfth'
  • 'thirteenth'
  • 'fourteenth'
  • 'fifteenth'
  • 'sixteenth'
  • 'seventeenth'
  • 'eighteenth'
  • 'nineteenth'
  • 'twentieth'
  • 'last'

Interactions - Drag and drop the instrument to the int position

Author: Tintin Nguyen

I enter {string} into the Field Label of the open "{addEditField}" dialog box

Parameters
label (string) the label of the field to edit
addEditField
  • 'Add New Field'
  • 'Edit Field'

Edits the field label of the open dialog box

Author: Adam De Fouw

I enter {string} into the Variable Name of the open "{addEditField}" dialog box

Parameters
variable_name (string) the variable_name of the field to edit
addEditField
  • 'Add New Field'
  • 'Edit Field'

Edits the variable name of the open dialog box

Author: Adam De Fouw

I enter the equation {string} into Calculation Equation of the open "{addEditField}" dialog box

Parameters
equation (string) the equation to enter
addEditField
  • 'Add New Field'
  • 'Edit Field'

Enters specified equation into a Calculated Field within an open "Edit Field" dialog box

Author: Adam De Fouw

I mark the field as an identifier

Marks a field as required within the Online Designer.

Author: Adam De Fouw

I mark the field as NOT an identifier

Marks a field as NOT an identifier within the Online Designer.

Author: Adam De Fouw

I mark the field as NOT required

Marks a field as NOT required within the Online Designer.

Author: Adam De Fouw

I mark the field required

Marks a field as required within the Online Designer.

Author: Adam De Fouw

I move the field named {string} after the field named {string}

Parameters
field_name (string) name of field you want to move
after_field (string) name of field you want to move AFTER

Moves a field AFTER the field specified

Author: Adam De Fouw

I select {string} from the Field Type dropdown of the open "{addEditField}" dialog box

Parameters
label (string) the label of the field to edit
addEditField
  • 'Add New Field'
  • 'Edit Field'

Selects option from the Field Type dropdown in open "Edit Field" dialog box

Author: Adam De Fouw

I select {string} from the Validation dropdown of the open "{addEditField}" dialog box

Parameters
label (string) the label of the field to edit
addEditField
  • 'Add New Field'
  • 'Edit Field'

Selects option from the Validation dropdown in open "Edit Field" dialog box

Author: Adam De Fouw

I should see (a )(the )field named {string} {beforeAfter} field named {string}

Parameters
fieldBefore (string) the field name that comes before
beforeAfter
  • 'before'
  • 'after'

Visually verifies that the fieldBefore is before fieldAfter

Author: Tintin Nguyen

Project Setup

I (should )see that repeatable instruments are {repeatability}

Parameters
repeatability
  • 'enabled'
  • 'disabled'
  • 'modifiable'
  • 'unchangeable'

Visually verifies Repeatable Instrument functionality is enabled or disabled in the project.

Author: Corey Debacker

I open the dialog box for the Repeatable Instruments and Events module

Opens the dialog box for the Repeatable Instruments and Events module on the Project Setup page.

Author: Adam De Fouw

Record Home Page

I click the (bubble)("X" icon)( to ){addOrSelect}( )(a record for the)(for the row labeled)( ){string}( longitudinal)( instrument) on (the)( )(event)( column labeled)( ){string}{cellAction}

Parameters
addOrSelect
  • 'add'
  • 'select'
instrument (string) the name of the instrument you want to add a record to
event (string) the name of the event you want to add a record to
cellAction
  • ' and click the new instance link'
  • ' and click on the bubble'
  • ' and click the repeating instrument bubble for the first instance'
  • ' and click the repeating instrument bubble for the second instance'
  • ' and click the repeating instrument bubble for the third instance'

Clicks on an instrument / event pairing to add a record on the Record Home Page

Author: Adam De Fouw

Record Status Dashboard

I click on the bubble for the {string} data collection instrument for {recordIDEvent} {string}

Parameters
text (string) the text value of data collection instrument you want to target
recordIDEvent
  • 'record ID'
  • 'event'

Clicks on a bubble within the Record Status Dashboard based upon record ID and the data instrument specified.

Author: Adam De Fouw

Parameters
event (string) name of the event displayed on the Record Home Page

Activates a pop-up confirming that user wants to delete all data on a specific even within a record

Author: Adam De Fouw

I locate the bubble for the {string} instrument on event {string} for record ID {string}{cellAction}

Parameters
instrument (string) the data collection instrument you want to target
event (string) the event name you want to target
record_id (string) the value of the record_id you want to target
cellAction
  • ' and click the new instance link'
  • ' and click on the bubble'
  • ' and click the repeating instrument bubble for the first instance'
  • ' and click the repeating instrument bubble for the second instance'
  • ' and click the repeating instrument bubble for the third instance'

Clicks on a bubble within the Record Status Dashboard based upon record ID and the longitudinal data instrument specified within an event.

Author: Adam De Fouw

I select record ID {string} from arm name {string} on the (Add|View) / Edit record page

Parameters
record_id (string) the name of the record ID
arm_name (string) name of the arm as displayed in the dropdown menu (e.g. Arm 1: Arm 1)

Selects a specific record from the Add / Edit record page

Author: Adam De Fouw

Reporting

I click on the {string} button for the {string} report in the My Reports & Exports table

Parameters
button (string) the text label of the Report you are looking for
report_name (string) the name of the report you want

Interactions - Opens the Export Data dialog for a specific Report Name

Author: Tintin Nguyen

I click on the button labeled {string} for the report named {string}

Parameters
button (string) the text on the button element you want to click
report (string) the name of the report you want to click buttons for

Interactions - Clicks on a button element with a specific text label for a specific report name

Author: Tintin Nguyen

I click on the download icon(s) to receive the file(s) for the {string} format

Parameters
format (string) the text format of the data export you are looking to receive

Interactions - Checks the hyperlinks and download formats for the data export

Author: Tintin Nguyen

Parameters
file (string) the text file name of image you are looking for
text (string) the text label of the table row you are looking for

Interactions - Clicks on the image of the table row with the text label

Author: Tintin Nguyen

Parameters
record (string) the name of the record you want to click the link for
text (string) the name of the event you want to click the record for

Interactions - Clicks on a button element with a specific text label for a specific report name

Author: Tintin Nguyen

I should (see) (have) (a) (latest downloaded) {string} file (that contains) (containing) (including) the (headings) (headings and rows) below

Parameters
format (string) the text format of the data export you are looking to receive
headings (DataTable) the DataTable of headings this file should have

Interactions - Checks the number of rows (excluding header) the file should have

Author: Tintin Nguyen

I should have a {string} file that contains {int} distinct records

Parameters
format (string) the text format of the data export you are looking to receive
count (int) the number of distinct records of data this file should have

Interactions - Checks the number of distinct records the file should have

Author: Tintin Nguyen

I should have a {string} file that contains {int} repeating instrument rows

Parameters
format (string) the text format of the data export you are looking to receive
count (int) the number of repeating instrument rows

Interactions - Checks the number of repeating instrument rows the file should have

Author: Tintin Nguyen

I should have a {string} file that contains {int} rows

Parameters
format (string) the text format of the data export you are looking to receive
count (int) the number of rows of data this file should have

Interactions - Checks the number of rows (excluding header) the file should have

Author: Tintin Nguyen

I should see the report with {int} distinct records

Parameters
count (int) the number of different records seen in a report

Visibility - Visually verifies that the report has the correct number of distinct records

Author: Tintin Nguyen

I should see the report with {int} repeating instrument rows

Parameters
count (int) the number of repeating instrument rows seen in a report

Visibility - Visually verifies that the report has the correct number of repeating instrument rows

Author: Tintin Nguyen

I should see the report with {int} row(s)

Parameters
number (int) the number of rows seen in a report

Visibility - Visually verifies that the report has the correct number of rows

Author: Tintin Nguyen

I should see the report with the column named {string} {ordering}

Parameters
name (string) the column name that should be ordered.
order (string) the order of the record IDs.

Visibility - Visually verifies that the report has record IDs in correct order

Author: Tintin Nguyen

Survey

I click on the survey option label containing {string} label{optionalString}

Parameters
survey_option_label (string) the label of the survey option specified
tag (string) (optional) the value of the tag specified

Clicks on a survey option label. Track it via an optional tag.

Author: Adam De Fouw

I enter the Username: {string} and password {string} for e-signature

Parameters
username (string) username
password (string) password

Enters credentials when enabling e-signature on survey

Author: Rushi Patel

I return to the REDCap page I opened the survey from

Returns user to the REDCap page they were on before they exited to take a survey

Author: Adam De Fouw

User Rights

I {clickType} the User Right named "{userRightsChecks}"

Parameters
text (string) name of User Right

Assign the user right

Author: Rushi Patel

I {userRightAction} all Basic Rights within the open User Rights dialog box

Parameters
userRightAction
  • 'add'
  • 'remove'

Checks or Unchecks all Basic Rights within the User Rights dialog box.

Author: Adam De Fouw

I assign an expired expiration date to user {string} with username of {string}

Parameters
name (string) the proper name of the user (e.g. Jane Doe)
username (string) the username assigned to the user (e.g. jdoe)

Assigns 'Expiration Date' user right to a given user

Author: Adam De Fouw

I remove the expiration date to user {string} with username of {string}

Parameters
name (string) the proper name of the user (e.g. Jane Doe)
username (string) the username assigned to the user (e.g. jdoe)

Removes 'Expiration Date' user right to a given user when provided a valid Project ID.

Author: Adam De Fouw

I select the User Right named {string} and choose {string}

Parameters
user_right (string) name of user right
option (string) name of the option to select

Assign user right to role/user

Author: Rushi Patel

Visibility

I (should )see (a )(an ){string} within the {string} row of the column labeled {string}{tableName}

Parameters
table_item (string) the item that you are searching for - includes "checkmark", "x", or any {string}
row_label (string) the label of the table row
column_label (string) the label of the table column
tableName
  • ''
  • ' of the User Rights table'
  • ' of the Reports table'
  • ' of the Participant List table'

Identifies specific text or special item within a cell on a table based upon row and column labels

Author: Adam De Fouw

I (should )see (a )table( ){headerOrNot}( row)(s) containing the following values in (the ){tableTypes} table{baseElement}:

Parameters
headerOrNot
  • 'header and'
  • 'header'
tableTypes
  • 'a'
  • 'logging'
  • 'browse users'
  • 'file repository'
  • 'administrators'
  • 'reports'
  • 'report data'
  • 'define events'
  • 'data access groups'
  • 'DAGs Switcher'
  • 'record status dashboard'
  • 'data collection instruments'
  • 'codebook'
  • 'import data display'
  • 'participant list'
  • 'user rights'
  • 'record locking'
  • 'e-signature and locking management'
  • 'record home page'
baseElement
  • ' on the tooltip'
  • ' in the tooltip'
  • ' on the role selector dropdown'
  • ' in the role selector dropdown'
  • ' on the dialog box'
  • ' in the dialog box'
  • ' on the Add/Edit Branching Logic dialog box'
  • ' in the Add/Edit Branching Logic dialog box'
  • ' within the data collection instrument list'
  • ' on the action popup'
  • ' in the action popup'
  • ' in the Edit survey responses column'
  • ' in the open date picker widget'
  • ' in the File Repository table'
  • ' in the View Access section of User Access'
  • ' in the Edit Access section of User Access'
  • ' in the "Main project settings" section'
  • ' in the "Use surveys in this project?" row in the "Main project settings" section'
  • ' in the "Use longitudinal data collection with defined events?" row in the "Main project settings" section'
  • ' in the "Use the MyCap participant-facing mobile app?" row in the "Main project settings" section'
  • ' in the "Enable optional modules and customizations" section'
  • ' in the "Repeating instruments and events" row in the "Enable optional modules and customizations" section'
  • ' in the "Auto-numbering for records" row in the "Enable optional modules and customizations" section'
  • ' in the "Scheduling module" row in the "Enable optional modules and customizations" section'
  • ' in the "Randomization module" row in the "Enable optional modules and customizations" section'
  • ' in the "Designate an email field for communications (including survey invitations and alerts)" row in the "Enable optional modules and customizations" section'
  • ' in the "Twilio SMS and Voice Call services for surveys and alerts" row in the "Enable optional modules and customizations" section'
  • ' in the "Mosio SMS services for surveys and alerts" row in the "Enable optional modules and customizations" section'
  • ' in the "SendGrid Template email services for Alerts & Notifications" row in the "Enable optional modules and customizations" section'
options (dataTable) the Data Table of values specified

Allows us to check tabular data rows within REDCap

Author: Adam De Fouw

I (should )see a dialog containing the following text: {string}

Parameters
text (string) the text that should be displayed in a dialog box

Visually verifies that the dialog box contains text

Author: Adam De Fouw

I (should )see the {dropdownType} field labeled {string} with the option {string} selected

Parameters
dropdownType
  • 'dropdown'
  • 'multiselect'
  • 'checkboxes'
  • 'radio'
label (string) the label of the field
option (string) the option selected

Selects a specific item from a dropdown

Author: Adam De Fouw

I (should )see the date( and time) {string} in the field labeled {string}

Parameters
date_time (string) the date or datetime value for the field
field_label (string) the label of the date or datetime field

Verifies the value of the date or datetime field

Author: Adam De Fouw

I should NOT see {string} on the( ){ordinal} dropdown field labeled {string}

Parameters
text (string) the text visually seen on screen
baseElement
  • ' on the tooltip'
  • ' in the tooltip'
  • ' on the role selector dropdown'
  • ' in the role selector dropdown'
  • ' on the dialog box'
  • ' in the dialog box'
  • ' on the Add/Edit Branching Logic dialog box'
  • ' in the Add/Edit Branching Logic dialog box'
  • ' within the data collection instrument list'
  • ' on the action popup'
  • ' in the action popup'
  • ' in the Edit survey responses column'
  • ' in the open date picker widget'
  • ' in the File Repository table'
  • ' in the View Access section of User Access'
  • ' in the Edit Access section of User Access'
  • ' in the "Main project settings" section'
  • ' in the "Use surveys in this project?" row in the "Main project settings" section'
  • ' in the "Use longitudinal data collection with defined events?" row in the "Main project settings" section'
  • ' in the "Use the MyCap participant-facing mobile app?" row in the "Main project settings" section'
  • ' in the "Enable optional modules and customizations" section'
  • ' in the "Repeating instruments and events" row in the "Enable optional modules and customizations" section'
  • ' in the "Auto-numbering for records" row in the "Enable optional modules and customizations" section'
  • ' in the "Scheduling module" row in the "Enable optional modules and customizations" section'
  • ' in the "Randomization module" row in the "Enable optional modules and customizations" section'
  • ' in the "Designate an email field for communications (including survey invitations and alerts)" row in the "Enable optional modules and customizations" section'
  • ' in the "Twilio SMS and Voice Call services for surveys and alerts" row in the "Enable optional modules and customizations" section'
  • ' in the "Mosio SMS services for surveys and alerts" row in the "Enable optional modules and customizations" section'
  • ' in the "SendGrid Template email services for Alerts & Notifications" row in the "Enable optional modules and customizations" section'

Visually verifies that text does NOT exist within the HTML object.

Author: Adam De Fouw

I should NOT see a table with header {string}

Parameters
headerName (string) the header of the table

verifies a table does not contain the specified header

Author: Mintoo Xavier

I should NOT see the lock image on the Record Home Page for the Data Collection Instrument labeled {string} for event {string}

Parameters
recordId (string) ID of the record we are focused on
instrument (string) instrument we are focused on
event (string) event we are focused on

Determine whether the lock image is visible or not for a given record

Author: Adam De Fouw

I should see {string} in (the ){tableTypes} table

Parameters
text (string) text to look for
tableTypes
  • 'a'
  • 'logging'
  • 'browse users'
  • 'file repository'
  • 'administrators'
  • 'reports'
  • 'report data'
  • 'define events'
  • 'data access groups'
  • 'DAGs Switcher'
  • 'record status dashboard'
  • 'data collection instruments'
  • 'codebook'
  • 'import data display'
  • 'participant list'
  • 'user rights'
  • 'record locking'
  • 'e-signature and locking management'
  • 'record home page'

Identify specific text within a table

Author: Rushi Patel

I should see {string} in the data entry form field {string}

Parameters
field_value (string) the text that should be displayed in the field
field_name (string) the text that identifies the field in the form

Visually verifies the text within a data entry form field

Author: Adam De Fouw

I should see {string} in the title

Parameters
title (string) the HTML page title

Visually verifies that text does exist in the HTML page title.

Author: Adam De Fouw

I should see a downloaded file named {string}

Parameters
filenamePlaceholder (string)

Verifies that a file with the specified filename pattern was recently downloaded. Date format strings in the filename pattern will match any date/time.

Author: Mark McEver

I should see a field named {string}

Parameters
text (string)

Verifies that the specified fields exists in the Online Designer

Author: Mark McEver

I should see a table with {int} row(s)

Parameters
num (int) number of row(s)

verifies a table contains the specified number of row(s)

Author: Mintoo Xavier

I should see an alert box with the following text: {string}

Parameters
text (string)

Verifies that an alert box was displayed with the specified text

Author: Mark McEver

I should see the {dropdownType} field labeled {string} with the options below

Parameters
dropdownType
  • 'dropdown'
  • 'multiselect'
  • 'checkboxes'
  • 'radio'
label (string) the label of the row the selector belongs to
options (dataTable) the Data Table of selectable options

Visibility - Visually verifies that the element selector has the options listed

Author: Tintin Nguyen

Allows us to check whether PDF has loaded in iframe

Author: Adam De Fouw

I should see the exact time in the field labeled {string}

Parameters
text (string)

Verifies that exact time is contained in the specified field

Author: Mark McEver

I should see the radio labeled {string} with option {string} {select}

Parameters
label (string) the text that should be displayed in an alert box
select
  • 'selected'
  • 'unselected'

Visually verifies that the alert box contains text

Author: Adam De Fouw

I should see today's date in the field labeled {string}

Parameters
text (string)

Verifies that today's date is contained in the specified field

Author: Mark McEver

Visit Page

I visit the REDCap login page

Instructs Cypress to the REDCap login page

Author: Adam De Fouw

I wait for background processes to finish

Executes REDCap's crons and returns to the previous page

Author: Mark McEver