Note:

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

Jira as a Test Case Management Software: Difference between revisions

From MoodleDocs
No edit summary
No edit summary
Line 1: Line 1:
{{stub}}[[Category:Quality Assurance]]
{{stub}}[[Category:Quality Assurance]]
=Preface=
=Preface=
==Introduction ==
===Introduction ===
Moodle team uses Atlassian Jira as a Bug Tracker system. With a bit of tweaking Jira can become a Test Case Management software. For Moodle 2.0, we improved our QA department. We've been through testing a range of test management software that we could integrate to Jira. We tried more deeply Test Link, an open source software. It gave a us a good understanding of the basic Test Case Management software functionalities. Finally we decide to setup Jira for QA testing purpose. The main reason is that people working on Moodle are well familiar with Jira interface, and it will be easy for them to learn how to create, run test case, or generate report.
Moodle team uses Atlassian Jira as a Bug Tracker system. With a bit of tweaking Jira can become a Test Case Management software. For Moodle 2.0, we improved our QA department. We've been through testing a range of test management software that we could integrate to Jira. We tried more deeply Test Link, an open source software. It gave a us a good understanding of the basic Test Case Management software functionalities. Finally we decide to setup Jira for QA testing purpose. The main reason is that people working on Moodle are well familiar with Jira interface, and it will be easy for them to learn how to create, run test case, or generate report.


==Jira and Test Case Management==
===Jira and Test Case Management===
Jira as a Test Case Management is attractive since it:
Jira as a Test Case Management is attractive since it:
#Uses an existing and known tool
#Uses an existing and known tool
Line 11: Line 11:
#Supports multiple releases
#Supports multiple releases


==Scope of this document==
===Scope of this document===
This document describes how to install and setup Jira as a Test Case Management software.
This document describes how to install and setup Jira as a Test Case Management software.


=Running a QA test cycle=
=Running a QA test cycle=
For the first QA cycle we will need to set up Jira and write the test cases.
For the first QA cycle we will need to set up Jira and write the test cases.
== How to use Jira ==
=== How to use Jira ===
This way to use Jira is explained below. However it has never been fully tested, it needs to be approved:
This way to use Jira is explained below. However it has never been fully tested, it needs to be approved:
# we create a new Jira project
# we create a new Jira project
Line 24: Line 24:
# at the end of the test case execution, we should be able to do a search on the cloned test cases only, in order to check all Passed/Failed
# at the end of the test case execution, we should be able to do a search on the cloned test cases only, in order to check all Passed/Failed


==Report a bug==
===Report a bug===
If a tester finds a bug, he creates a new issue and associate the test case to this issue. He finally mark the test case as failed.
If a tester finds a bug, he creates a new issue and associate the test case to this issue. He finally mark the test case as failed.


==Generate and Analize a report==
===Generate and Analize a report===
We search for all test cases with the Moodle Version field . The resulting set of test cases can then be sorted and counted by number passed, failed, not run etc. Producing historical reports can be done with the Timecharts plugin for Jira, which shows a graph of how the results in a report change over time.
We search for all test cases with the Moodle Version field . The resulting set of test cases can then be sorted and counted by number passed, failed, not run etc. Producing historical reports can be done with the Timecharts plugin for Jira, which shows a graph of how the results in a report change over time.


=Setup the entire Jira QA environment=
=Setup the entire Jira QA environment=


==Installing Jira (Linux)==
===Installing Jira (Linux)===
Download the enterprise edition zip file on the Jira website. Extract the the files. Run jira-enterprise/bin/startup.sh. You should be able to connect to http://localhost:8080
Download the enterprise edition zip file on the Jira website. Extract the the files. Run jira-enterprise/bin/startup.sh. You should be able to connect to http://localhost:8080


== create a project "==
=== Create a project "===
it could be called "Moodle QA"
it could be called "Moodle QA"
== create a main task ==
=== create a main task ===
create a new Issue type: "QA Cycle"
create a new Issue type: "QA Cycle"
== create as many subtask as test case ==
=== Create as many subtask as test case ===
create a new Issue type: "Test case"
create a new Issue type: "Test case"
== create new fields==
=== Create new fields===


"QA cycle" issue type should have these fields
"QA cycle" issue type should have these fields
Line 54: Line 54:
* Build Run Against/Moodle Version: it should be an automatic copy of the parent task. Use the plugin parentfield [http://confluence.atlassian.com/display/JIRAEXT/Parent+Field+Plugin]  
* Build Run Against/Moodle Version: it should be an automatic copy of the parent task. Use the plugin parentfield [http://confluence.atlassian.com/display/JIRAEXT/Parent+Field+Plugin]  


==Create three new status:==
===Create three new status:===
* Not Run (transition to Passed/Failed)
* Not Run (transition to Passed/Failed)
* Passed (transition to Not Run)
* Passed (transition to Not Run)

Revision as of 02:38, 31 July 2009

Preface

Introduction

Moodle team uses Atlassian Jira as a Bug Tracker system. With a bit of tweaking Jira can become a Test Case Management software. For Moodle 2.0, we improved our QA department. We've been through testing a range of test management software that we could integrate to Jira. We tried more deeply Test Link, an open source software. It gave a us a good understanding of the basic Test Case Management software functionalities. Finally we decide to setup Jira for QA testing purpose. The main reason is that people working on Moodle are well familiar with Jira interface, and it will be easy for them to learn how to create, run test case, or generate report.

Jira and Test Case Management

Jira as a Test Case Management is attractive since it:

  1. Uses an existing and known tool
  2. Provides an easy way to link bugs to test cases and results
  3. Provides decent reporting of the state of testing
  4. Supports multiple releases

Scope of this document

This document describes how to install and setup Jira as a Test Case Management software.

Running a QA test cycle

For the first QA cycle we will need to set up Jira and write the test cases.

How to use Jira

This way to use Jira is explained below. However it has never been fully tested, it needs to be approved:

  1. we create a new Jira project
  2. we create a Jira task that will be a QA cycle template. In this QA cycle template we create multiple subtask. Every subtask will be one test case.
  3. we clone the QA cycle template everytime we want to run a new QA cycle. We set the correct Moodle version on the cloned task, assign people to its test cases if needed
  4. we execute the test cases.
  5. at the end of the test case execution, we should be able to do a search on the cloned test cases only, in order to check all Passed/Failed

Report a bug

If a tester finds a bug, he creates a new issue and associate the test case to this issue. He finally mark the test case as failed.

Generate and Analize a report

We search for all test cases with the Moodle Version field . The resulting set of test cases can then be sorted and counted by number passed, failed, not run etc. Producing historical reports can be done with the Timecharts plugin for Jira, which shows a graph of how the results in a report change over time.

Setup the entire Jira QA environment

Installing Jira (Linux)

Download the enterprise edition zip file on the Jira website. Extract the the files. Run jira-enterprise/bin/startup.sh. You should be able to connect to http://localhost:8080

Create a project "

it could be called "Moodle QA"

create a main task

create a new Issue type: "QA Cycle"

Create as many subtask as test case

create a new Issue type: "Test case"

Create new fields

"QA cycle" issue type should have these fields

  • Summary:
  • Description:
  • Build Run Against/Moodle Version: Moodle Version List

"Test case" issue type should have these fields:

  • Steps: test case steps (it's like a normal description field)
  • Component: should be same list as the one in Moodle project
  • Assignee:
  • Build Run Against/Moodle Version: it should be an automatic copy of the parent task. Use the plugin parentfield [1]

Create three new status:

  • Not Run (transition to Passed/Failed)
  • Passed (transition to Not Run)
  • Failed (transition to Not Run)
  • Obsolete/Inactive (transition to Not Run)

Add Timecharts plugin

  1. Download the Charting plugin http://confluence.atlassian.com/display/JIRAEXT/JIRA+Charting+Plugin
  2. Download the Timechart plugin http://confluence.atlassian.com/display/JIRAEXT/Timecharts
  3. Install the two file jar files into WEB-INF/lib
  4. Run shutdown.sh and startup.sh

Add clone plugin

In order to clone the QA cycle and all test cases, we need to add the clone functionality to Jira. [2]