Note:

If you want to create a new page for developers, you should create it on the Moodle Developer Resource site.

Acceptance testing/Compatibility changes: Difference between revisions

From MoodleDocs
(This page will not be migrated to new devdocs)
 
(25 intermediate revisions by 4 users not shown)
Line 1: Line 1:
{{Template:WillNotMigrate}}
As new features are developed for Moodle, some UI changes can cause changes which unfortunately affect behat feature files. This page is intended to document important compatibility changes for behat test developers.
As new features are developed for Moodle, some UI changes can cause changes which unfortunately affect behat feature files. This page is intended to document important compatibility changes for behat test developers.
 
= Compatibility changes =
== Moodle 3.3 ==
== Moodle 3.3 ==
 
=== And I follow "Course 1" ===
=== 'And I follow "Course 1"' becomes  'And I am on "Course 1" course homepage' ===
<b>Summary</b>
 
{| class="wikitable"
{| class="wikitable"
|-
|-
|Previous step:
|Previous step/s:
| And I follow "Course 1"
| And I follow "Course 1"
|-
|-
|New step/s
|New step/s
|And I am on "Course 1" course homepage<br>And I am on "Course 1" course homepage'
|And I am on "Course 1" course homepage<br>And I am on "Course 1" course homepage with editing mode on
|-
|-
|Backported to:
|Backported to:
|Moodle 3.1.6, 3.2.3 and up.  
|Moodle 3.1.6, 3.2.3 and up.  
|}
{| class="wikitable"
|-
|-
|Why:
|+Examples
|UI Changes mean its not possible to rely on the existing loose text search returns multiple results
|-
|}
|Before
 
|<syntaxhighlight lang="php">
<b>Before:</b>
<code>
Scenario: I am on the course homepage
Scenario: I am on the course homepage
     When I log in as "student1"
     When I log in as "student1"
Line 27: Line 28:
     And I follow "Course 1"
     And I follow "Course 1"
     Then I should see "Topic 1"
     Then I should see "Topic 1"
</code>
</syntaxhighlight>
<b>After:</b>
|-
<code>
|After
|<syntaxhighlight lang="php">
Scenario: I am on the course homepage
Scenario: I am on the course homepage
     When I log in as "student1"
     When I log in as "student1"
     And I am on "Course 1" course homepage
     And I am on "Course 1" course homepage
     Then I should see "Topic 1"
     Then I should see "Topic 1"
</code>
</syntaxhighlight>
|}
<b>Why did this change?</b>


UI changes in the new dashboard mean the existing 'loose' step matches multiple values. The replacement step should help speed up your tests.
== Moodle 3.2 ==
== Moodle 3.2 ==
=== And I click on "Edit settings" "link" in the "Administration" "block" ===
<b>Summary</b>
{| class="wikitable"
|-
|Previous step/s:
| And I click on "Edit settings" "link" in the "Administration" "block"
|-
|New step/s
|And I navigate to "Edit settings" in current page administration
|-
|Backported to:
|Moodle 3.2.1, 3.1.4 and up.
|}
{| class="wikitable"
|-
|+Examples
|-
|Before
|<syntaxhighlight lang="php">
Scenario: Going to course settings
    When I log in as "teacher1"
    And I follow "Course 1"
    When I click on "Edit settings" "link" in the "Administration" "block"
</syntaxhighlight>
|-
|After
|<syntaxhighlight lang="php">
Scenario: Going to course settings
    When I log in as "teacher1"
    And I am on "Course 1" course homepage
    When I navigate to "Edit settings" in current page administration
</syntaxhighlight>
|}
<b>Why did this change?</b>
The boost theme changes how navigation works and the new steps are compatible with boost and bootstrap based themes.
Note: since 4.0 ''Edit Settings'' has been changed into ''Settings''. Refs: MDL-72093.
=== And I navigate to "Participants" node in "My courses > C1" ===
<b> Summary </b>
{| class="wikitable"
|-
|Previous step/s:
| And I navigate to "Participants" node in "My courses > C1"<br>And I navigate to "Site blogs" node in "Site pages"
|-
|New step/s
| And I navigate to course participants
|-
|Backported to:
|Moodle 3.2.1, 3.1.4 and up.
|}
{| class="wikitable"
|-
|+Examples
|-
|Before
|<syntaxhighlight lang="php">
Scenario: Going to course settings
    When I log in as "student1"
    And I follow "Course 1"
    And I navigate to "Participants" node in "Current course > C1"
</syntaxhighlight>
|-
|After
|<syntaxhighlight lang="php">
Scenario: Going to course participants
    When I log in as "student1"
    And I follow "Course 1"
    And I navigate to course participants
</syntaxhighlight>
|}
<b> Why did this change? </b>


The boost theme changes how navigation works and the new steps are compatible with boost and bootstrap based themes.
== Moodle 3.1 ==
== Moodle 3.1 ==
=== Behat migration from 2.5 to 3.x ===
Behat 3 brings a lot of extensibility and modularity but there are compatibility changes for running tests and writing step definitions. See [[Acceptance testing/Migrating from Behat 2.5 to 3.x in Moodle]] for fully details when coming from earlier versions of Moodle.
= See also =
* [[Running_acceptance_test]]
[[Category:Quality Assurance]]
[[Category:Behat]]

Latest revision as of 14:37, 22 August 2023


Warning: This page is no longer in use. The information contained on the page should NOT be seen as relevant or reliable.


As new features are developed for Moodle, some UI changes can cause changes which unfortunately affect behat feature files. This page is intended to document important compatibility changes for behat test developers.

Compatibility changes

Moodle 3.3

And I follow "Course 1"

Summary

Previous step/s: And I follow "Course 1"
New step/s And I am on "Course 1" course homepage
And I am on "Course 1" course homepage with editing mode on
Backported to: Moodle 3.1.6, 3.2.3 and up.
Examples
Before
Scenario: I am on the course homepage
    When I log in as "student1"
    And I am on site homepage
    And I follow "Course 1"
    Then I should see "Topic 1"
After
Scenario: I am on the course homepage
    When I log in as "student1"
    And I am on "Course 1" course homepage
    Then I should see "Topic 1"

Why did this change?

UI changes in the new dashboard mean the existing 'loose' step matches multiple values. The replacement step should help speed up your tests.

Moodle 3.2

And I click on "Edit settings" "link" in the "Administration" "block"

Summary

Previous step/s: And I click on "Edit settings" "link" in the "Administration" "block"
New step/s And I navigate to "Edit settings" in current page administration
Backported to: Moodle 3.2.1, 3.1.4 and up.
Examples
Before
Scenario: Going to course settings
    When I log in as "teacher1"
    And I follow "Course 1"
    When I click on "Edit settings" "link" in the "Administration" "block"
After
Scenario: Going to course settings
    When I log in as "teacher1"
    And I am on "Course 1" course homepage
    When I navigate to "Edit settings" in current page administration

Why did this change?

The boost theme changes how navigation works and the new steps are compatible with boost and bootstrap based themes.

Note: since 4.0 Edit Settings has been changed into Settings. Refs: MDL-72093.

And I navigate to "Participants" node in "My courses > C1"

Summary

Previous step/s: And I navigate to "Participants" node in "My courses > C1"
And I navigate to "Site blogs" node in "Site pages"
New step/s And I navigate to course participants
Backported to: Moodle 3.2.1, 3.1.4 and up.
Examples
Before
Scenario: Going to course settings
    When I log in as "student1"
    And I follow "Course 1"
    And I navigate to "Participants" node in "Current course > C1"
After
Scenario: Going to course participants 
    When I log in as "student1"
    And I follow "Course 1"
    And I navigate to course participants

Why did this change?

The boost theme changes how navigation works and the new steps are compatible with boost and bootstrap based themes.

Moodle 3.1

Behat migration from 2.5 to 3.x

Behat 3 brings a lot of extensibility and modularity but there are compatibility changes for running tests and writing step definitions. See Acceptance testing/Migrating from Behat 2.5 to 3.x in Moodle for fully details when coming from earlier versions of Moodle.

See also