Note: You are currently viewing documentation for Moodle 3.8. Up-to-date documentation for the latest stable version of Moodle may be available here: Dataform Tests.

Dataform Tests: Difference between revisions

From MoodleDocs
No edit summary
No edit summary
Line 17: Line 17:
===Available features===
===Available features===
====Activity====
====Activity====
=====dataform add=====
=====dataform basics=====
Adds a Dataform activity to a course.
Adds a Dataform activity to a course.
=====dataform add fields=====
Adds an instance of each field type to a Dataform activity, and with a default view opens and submits an entry form with all the fields.
=====dataform max entries=====
=====dataform max entries=====
=====dataform max entries with interval=====
=====dataform max entries with interval=====
Line 83: Line 81:


This step is essential for any standalone scenario that adds or updates entries with content since such a scenario has to refer to input elements by fixed field ids and entry ids.
This step is essential for any standalone scenario that adds or updates entries with content since such a scenario has to refer to input elements by fixed field ids and entry ids.
====Given I go to dataform page "DATAFORM_URL_STRING"====
====Given I go to dataform page "DATAFORM_URL_STRING"====
Opens Dataform url.
Opens Dataform url.
====Given I add a dataform with "DATAFORM_URL_STRING"====
====Given I add a dataform with "DATAFORM_URL_STRING"====
Adds a dataform as teacher 1 in course 1 and displays the dataform.
Adds a dataform as teacher 1 in course 1 and displays the dataform.
====Then the dataform settings should match "FORM_DATA_STRING"====
====Then the dataform settings should match "FORM_DATA_STRING"====
Validates dataform activity settings.
Validates dataform activity settings.
====Given I add a test dataform====
====Given I add a test dataform====
Adds a test dataform as teacher 1 in course 1 and displays the dataform.
Adds a test dataform as teacher 1 in course 1 and displays the dataform.
====Given I delete this dataform====
====Given I delete this dataform====
Deletes the dataform.
Deletes the dataform.
====Given I go to manage dataform "TAB_NAME_STRING"====
====Given I go to manage dataform "TAB_NAME_STRING"====
Go to the specified manage tab of the current dataform.
Go to the specified manage tab of the current dataform.
====Given I add a dataform field "FIELD_TYPE_STRING" with "FORM_DATA_STRING"====
====Given I add a dataform field "FIELD_TYPE_STRING" with "FORM_DATA_STRING"====
Adds a field of the specified type to the current dataform with the provided table data (usually Name).
Adds a field of the specified type to the current dataform with the provided table data (usually Name).
====Given I add a dataform view "VIEW_TYPE_STRING" with "FORM_DATA_STRING"====
====Given I add a dataform view "VIEW_TYPE_STRING" with "FORM_DATA_STRING"====
Adds a view of the specified type to the current dataform with the provided table data (usually Name).
Adds a view of the specified type to the current dataform with the provided table data (usually Name).
====Given I set view "VIEW_NAME_STRING" as default view====
====Given I set view "VIEW_NAME_STRING" as default view====
Sets a view as the default view of a dataform instance.
Sets a view as the default view of a dataform instance.
====Given I add a dataform filter with "FORM_DATA_STRING"====
====Given I add a dataform filter with "FORM_DATA_STRING"====
Adds a filter with the specified data to the current dataform.
Adds a filter with the specified data to the current dataform.
====Given I prepend "TEXT_STRING" to field "FIELD_STRING"====
====Given I prepend "TEXT_STRING" to field "FIELD_STRING"====
Prepends text to the field's content.
Prepends text to the field's content.
====Given I apppend "TEXT_STRING" to field "FIELD_STRING"====
====Given I apppend "TEXT_STRING" to field "FIELD_STRING"====
Appends text to the field's content.
Appends text to the field's content.
====Given I set dataform field "FIELD_NAME_STRING" options to "OPTIONS_STRING"====
====Given I set dataform field "FIELD_NAME_STRING" options to "OPTIONS_STRING"====
Sets a dataform field setting to the given content.
Sets a dataform field setting to the given content.
====Given I set the field "FIELD_NAME_STRING" to====
====Given I set the field "FIELD_NAME_STRING" to====
Sets field value to the specified text passed as PyStringNode.
Sets field value to the specified text passed as PyStringNode.
====Given I fill textarea "FIELD_STRING" with "TEXT_STRING" ====
====Given I fill textarea "FIELD_STRING" with "TEXT_STRING" ====
Fills a textarea with the specified text replacing \n with new lines.
Fills a textarea with the specified text replacing \n with new lines.
===Step values===
===Step values===
====FORM_DATA_STRING====
====FORM_DATA_STRING====

Revision as of 15:10, 20 March 2014


Unit tests

TBC

Acceptance tests

Administrator can run Dataform acceptance tests with the Moodle behat command line tool (see https://docs.moodle.org/dev/Acceptance_testing#Running_tests).

Alternately administrator can use the Dataform Acceptance testing interface from

Administration > Site administration > Plugins > Activity modules > Dataform > Acceptance testing

for testing particular Dataform features by name or tags.

The current implementation of the Dataform Acceptance testing interface assumes that a selenium server is running. To run a test, select a feature or tags and click 'Run tests'. The page will hang until the tests are completed. If you run long tests it may be better to run them from a command line.

df-acceptance-testing.png

Available features

Activity

dataform basics

Adds a Dataform activity to a course.

dataform max entries
dataform max entries with interval
dataform not ready
dataform separate participants

field

field checkbox
field duration
field file
field number
field picture
field radiobutton
field select
field selectmulti
field text
field textarea
field time
field url

view

view all submission buttons
  • Scenario: Submit entries with different submission buttons
  • Scenario: Submission should not be allowed when no submission buttons enabled
view aligned
view csv
view grid
view interval
view rss
view tabular

Available steps

Given I start afresh with dataform "DATAFORM_NAME_STRING"

Prepares a fresh environment with the following components and a dataform activity 'Test dataform' in Course 1. Course:

| fullname | shortname | category
| Course 1 | C1 | 0

Users:

| username | firstname | lastname | email
| teacher1 | Teacher | 1 | teacher1@asd.com
| assistant1 | Assistant | 1 | assistant1@asd.com
| student1 | Student | 1 | student1@asd.com
| student2 | Student | 2 | student2@asd.com
| student3 | Student | 3 | student3@asd.com

Enrollments:

| user | course | role
| teacher1 | C1 | editingteacher
| assistant1 | C1 | teacher
| student1 | C1 | student
| student2 | C1 | student

Groups:

| name    | description | course  | idnumber |
| Group 1 | Anything    | C1 | G1   |
| Group 2 | Anything    | C1 | G2   |

Group members:

| user     | group  |
| student1 | G1 |        
| student2 | G2 |        

It also resets (truncates) all Dataform tables to remove any records and reset sequences.

This step is essential for any standalone scenario that adds or updates entries with content since such a scenario has to refer to input elements by fixed field ids and entry ids.

Given I go to dataform page "DATAFORM_URL_STRING"

Opens Dataform url.

Given I add a dataform with "DATAFORM_URL_STRING"

Adds a dataform as teacher 1 in course 1 and displays the dataform.

Then the dataform settings should match "FORM_DATA_STRING"

Validates dataform activity settings.

Given I add a test dataform

Adds a test dataform as teacher 1 in course 1 and displays the dataform.

Given I delete this dataform

Deletes the dataform.

Given I go to manage dataform "TAB_NAME_STRING"

Go to the specified manage tab of the current dataform.

Given I add a dataform field "FIELD_TYPE_STRING" with "FORM_DATA_STRING"

Adds a field of the specified type to the current dataform with the provided table data (usually Name).

Given I add a dataform view "VIEW_TYPE_STRING" with "FORM_DATA_STRING"

Adds a view of the specified type to the current dataform with the provided table data (usually Name).

Given I set view "VIEW_NAME_STRING" as default view

Sets a view as the default view of a dataform instance.

Given I add a dataform filter with "FORM_DATA_STRING"

Adds a filter with the specified data to the current dataform.

Given I prepend "TEXT_STRING" to field "FIELD_STRING"

Prepends text to the field's content.

Given I apppend "TEXT_STRING" to field "FIELD_STRING"

Appends text to the field's content.

Given I set dataform field "FIELD_NAME_STRING" options to "OPTIONS_STRING"

Sets a dataform field setting to the given content.

Given I set the field "FIELD_NAME_STRING" to

Sets field value to the specified text passed as PyStringNode.

Given I fill textarea "FIELD_STRING" with "TEXT_STRING"

Fills a textarea with the specified text replacing \n with new lines.

Step values

FORM_DATA_STRING

See also

  • Acceptance testing - information about preparing your Moodle installation for acceptance testing. Note that this is not recommended for production sites.
  • Writing features - general test writing guidelines.