Note:

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

Testing Roadmap: Difference between revisions

From MoodleDocs
No edit summary
 
Line 1: Line 1:
{{Work in progress}}
==Introduction==
==Introduction==
This page documents the current work being performed as a process of continuous improvement and testing planned at Moodle. Testing fulfils multiple roles within Moodle, from actually assisting Moodle developers to create a high quality product and mitigating risks during projects, to re-enforcing user confidence in the product through reporting, feedback and visibility.
This page documents the current work being performed as a process of continuous improvement and testing planned at Moodle. Testing fulfils multiple roles within Moodle, from actually assisting Moodle developers to create a high quality product and mitigating risks during projects, to re-enforcing user confidence in the product through reporting, feedback and visibility.

Latest revision as of 03:17, 6 September 2012

Introduction

This page documents the current work being performed as a process of continuous improvement and testing planned at Moodle. Testing fulfils multiple roles within Moodle, from actually assisting Moodle developers to create a high quality product and mitigating risks during projects, to re-enforcing user confidence in the product through reporting, feedback and visibility.

Areas of the Testing Process Improvement Currently Under Development

Due to dependencies such as the QA test cycle, testing is aligned with Moodle's 6 monthly times release cycle. Version 2.4 of Moodle is scheduled for release in December 2012.

Test Environments

  • MDLTEST-302 Implement Oracle and MSSQL test databases for test automation.

Test Automation

  • MDLTEST-240 Create the nightly build machine. A Jenkins server is required to run an automated nightly build of Moodle.
  • MDLTEST-246 Add performance testing comparison tool and performance tests to the nightly build.
  • MDLTEST-274 Implement Behat Behavioural Driven Development (BDD) framework with Selenium in PHP. We already have a suite of tests running in Selenium against core modules in Moodle on a nightly basis. This project adds usability to the tool allowing the community to implement automated tests easily using a ubiquitous, domain specific language.
  • MDLTEST-256 This implements our selenium tests on the nightly build machine against a Selenium 2 Grid.
  • MDLTEST-284 Implement Unit tests on the nightly build machine against Postgres database. The plan is to increase the coverage of tests against the different supported database drivers. We already run continuous integration against the MySQL database driver at every check-in.

Test Management

  • MDLTEST-296 Implement a new test management tool. Using Jira to document testing creates a large documentation overhead when adding or updating tests. Find a replacement.
  • MDLTEST-273 A test automation strategy document. This will define the processes and practices used when deciding what to automate and how.
  • MDLTEST-301 Add tests for the 2.4 QA cycle based upon the current roadmap.

Future Work

The work here is planned for the near future and, although unlikely, may be completed or partially competed before the 2.4 release of Moodle.

  • Implementation of a method for serving Development test environment VM's using a tool such as Vagrant and Chef. This will include the relevant templates.
  • Increase Selenium test automation coverage.
  • Add performance test jobs to the nightly build for MSSQL and Oracle databases.
  • Add unit test jobs to the nightly build for MSSQL and Oracle databases.
  • Add more browser interoperability testing to the nightly build using Selenium.
  • Performance testing reporting improvements.