Note:

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

Acceptance testing/Contributing automated tests: Difference between revisions

From MoodleDocs
m (Protected "Acceptance testing/Contributing automated tests": Developer Docs Migration ([Edit=Allow only administrators] (indefinite)))
 
(7 intermediate revisions by 5 users not shown)
Line 1: Line 1:
The issue MDLQA-1 contains testing tasks required to manually test many of the features and functions of Moodle.
{{Template:Migrated|newDocId=/general/development/process/testing/qa#automating-a-test}}
 
We are aiming to automate as many of these tests as possible using Moodle's new behat-based testing framework, so that they can be run weekly, and so that real users can focus on more exploratory testing instead. Currently there are over 400 MDLQA tests, so help in automating them is much appreciated!
 
==Automating a test==
 
# Choose a test from this list: [https://tracker.moodle.org/issues/?jql=parent%20%3D%20%4DDLQA-1%20and%20priority%20%3D%20Blocker Top priority MDLQA tests to be automated].
# Create a new MDL issue with summary 'Automate MDLQA-wxyz' and component 'Automated functional tests' and any MDLQA component such as 'Forum' which is also an MDL component.
# Add the '''mdlqa_conversion''' label
# Link to the MDLQA test by selecting 'Will help resolve' as the link type.
# Follow the instructions provided in the section 'Writing features' in the [[Acceptance testing#Writing_features|Acceptance testing guide]].
# Include 'MDLQA-wxyz' and a short description of what is being automated to the commit message/s where the .feature files are added/edited.
 
''Many thanks for helping with test automating!''
 
Note: Once the 'Top priority MDLQA tests to be automated' list is reduced to zero, choose a test from the following lists:
* [https://tracker.moodle.org/issues/?jql=parent%20%3D%20%4DDLQA-1%20and%20priority%20%3D%20Critical Secondary priority MDLQA tests to be automated]
* [https://tracker.moodle.org/issues/?jql=parent%20%3D%20%4DDLQA-1%20and%20priority%20%3D%20Major More secondary priority MDLQA tests to be automated]
 
==Quick start: Test automating==
 
To skip steps 1. to 3. above, simply choose an issue from this list: [https://tracker.moodle.org/issues/?jql=Component%20%3D%20%22Automated%20functional%20tests%22%20AND%20status%20%3D%20Open%20and%20created%20%3E%3D%20%222013-10-11%22%20and%20summary%20%7E%20%22Automate%22 Quick start test automating issues] and then follow the instructions provided in the section 'Writing features' in the [[Acceptance testing#Writing_features|Acceptance testing guide]].
 
==Tests which cannot be automated==
 
Certain tests cannot be automated, as they require integration with other systems, code base modifications or other actions outside the browser scope.
 
Existing tests which have been identified as such are:
* [https://tracker.moodle.org/issues/?jql=parent%20%3D%20%4DDLQA-1%20and%20priority%20%3D%20Minor MDLQA tests which are a challenge to automate]
* [https://tracker.moodle.org/issues/?jql=parent%20%3D%20%4DDLQA-1%20and%20priority%20%3D%20Trivial MDLQA tests impossible to automate]
 
New features and improvements which cannot have an automated test written for them should be labelled [https://tracker.moodle.org/issues/?jql=labels%20%3D%20qa_test_required qa_test_required] and detailed testing instructions provided which can then be used when writing a new MDLQA test.
 
==Removing automated tests from the list of manual QA tests==
 
When a test is automated, it needs to be moved from MDLQA-1 to MDLQA-5249.
 
[[Category:Quality Assurance]][[Category:Behat]]

Latest revision as of 04:05, 7 May 2024

Important:

This content of this page has been updated and migrated to the new Moodle Developer Resources. The information contained on the page should no longer be seen up-to-date.

Why not view this page on the new site and help us to migrate more content to the new site!