Meego Wiki
Views

Quality/QA-tools

From MeeGo wiki
(Difference between revisions)
Jump to: navigation, search
m (Tools and Maintainers: Updated mcts and mnts)
Line 41: Line 41:
| [[Quality/QA-tools/Autotest-guide#Automatic_image_installations|MeeGo Automated installer]] ||[http://gitorious.org/qa-tools/meego-ai Gitorious] ||  Timo Härkönen || N/A
| [[Quality/QA-tools/Autotest-guide#Automatic_image_installations|MeeGo Automated installer]] ||[http://gitorious.org/qa-tools/meego-ai Gitorious] ||  Timo Härkönen || N/A
|-
|-
-
| MeeGo Core Test Suite || [http://gitorious.org/qa-tools/mcts Gitorious] ||Matti Salmi || Jeff Zheng
+
| [[Quality/TestSuite/MCTS|MeeGo Core Test Suite]] || [http://meego.gitorious.org/meego-quality-assurance/mcts/ Gitorious] ||Matti Salmi || Jeff Zheng
|-  
|-  
-
| MeeGo Netbook Test Suite || [http://gitorious.org/qa-tools/mnts Gitorious] ||Jeff Zheng || N/A
+
| [[Quality/Netbook Test Suite and Utilities|MeeGo Netbook Test Suite]] || [http://meego.gitorious.org/meego-quality-assurance/mnts/ Gitorious] ||Jeff Zheng || N/A
|-
|-
| [[Quality/QA-tools/qtuitest-mbt-adapter|Model-Based Testing adapter for qtuitest]]  || [http://gitorious.org/qa-tools/qtuitest-mbt-adapter Gitorious] || Riku Halonen || N/A
| [[Quality/QA-tools/qtuitest-mbt-adapter|Model-Based Testing adapter for qtuitest]]  || [http://gitorious.org/qa-tools/qtuitest-mbt-adapter Gitorious] || Riku Halonen || N/A

Revision as of 09:23, 6 January 2011

Contents

Quality Assurance (QA) Tools

Quality Assurance tools are developed to ensure MeeGo SW quality. QA tools team develops and maintains tools for Quality Assurance.

Open source tools  – available for all, available for development and contributions. Make people accountable for quality.

Anyone is welcome to contribute and non-member contributions will be treated with same process and review as member contributions. We follow MeeGo contribution guidelines. In addition, you may take personal clone from our git repositories and create merge request. Tool maintainers in our projects will review your contributions and decide on merge.

Targets:

* Improve MeeGo test reporting tools - target from MeeGo Quality Assurance
  * Currently test reports are published manually to wiki  
* Improve MeeGo test automation (execution and software installation) - target from MeeGo release engineering

"As Core OS release release manager I want to verify trunk:testing packages frequently so that I know the quality of nightly/weekly releases."

Tools and Maintainers

Tool maintainers are selected based on developer experience with particular tool/package or seniority. Tool maintainers have been agreed in the QA-tools weekly meeting Tuesday September 7th 2010. Changes, if needed, are discussed also there.

In practice only tool maintainers will have commit and review right to particular repository - later several people may have rights to repository based on merit (as proposed by tool maintainer). Others must follow MeeGo contribution guidelines to submit patches or personal clone + merge request approach.

The maintainer of the tree shall update the changelog.

Tool (link to wiki page) GitoriousMaintainer Substitute
test-definitionGitorious Sampo Saaristo Timo Härkönen
testrunner-lite Gitorious Sampo Saaristo Kyösti Ranto
Testrunner Gitorious Kyösti Ranto Timo Härkönen
Testplanner Gitorious Kyösti Ranto N/A
eat - enables automated testing Gitorious Timo Härkönen Timo Mäkimattila
ots - open testing system Gitorious Teemu Vainio Tom Galvin
MeeGo Automated installer Gitorious Timo Härkönen N/A
MeeGo Core Test Suite Gitorious Matti Salmi Jeff Zheng
MeeGo Netbook Test Suite Gitorious Jeff Zheng N/A
Model-Based Testing adapter for qtuitest Gitorious Riku Halonen N/A
MIN test framework Gitorious Sampo Saaristo Timo Mäkimattila
Testability Driver Gitorious Petri Kiiskinen Tatu Lahtela
Rich Core dumper Gitorious Carol Rus Raimo Gratseff
Crash Reporter Gitorious Carol Rus Raimo Gratseff
Crash Reporter settings Gitorious Carol Rus Raimo Gratseff
Hardware Accessory for Testing (HAT) Gitorious Marko Junttila Riku Halonen
QA Reports Gitorious Sami Hangaslammi Jarno Keskikangas
Scripts and utils Gitorious N/A N/A
handset_ux_tests Gitorious JessicaJi N/A
MeeGo Fast Feedback Testing (MeeGo-FFT) Gitorious Alexey Kuznetsov Timo Härkönen
Service OS based Flasher Gitorious Jing Wang N/A

You can install Testrunner UI, testrunner-lite, Testplanner, OTS, Meego-ai and eat from Tools:Testing repository. The instructions for setting up the repositories can be found here.

See the rest of our team members and our collaboration spaces below. If you are interested in the user experience work regarding these tools, you can find more information here.

Overview

The figure below tries to summarize the relations and tasks of the tools when used in test automation context.

Testautomationtools.png

xfig file:File:Qatools.fig

Release Practices

Here's the workflow for QA-tools release practices.

Role Description
Developer Anyone who wants to participate in qa-tools development
VCS Maintainer Component owner who has commit rights in version control system (VCS)
Package Maintainer Integrator whose responsibility is the OBS packaging
Release Management Third party who is responsible of trunk:testing releases(?)

Release.png

Kivio file: File:Release.flw

  1. Developer creates merge request(s) in gitorious.
  2. VCS Maintainer tests and accepts merge requests.
  3. VCS Maintainer checks/updates change logs.
  4. VCS Maintainer tags a version.
  5. VCS maintainer sends email to meego-qa mailing list based on the following template

Topic: Integration request: package-name version

PACKAGE: package-name
TAG: tag name
URL: link to sources
CHANGES: short description of changes containing bugs.meego.com bug numbers of fixed bugs
  1. Package maintainer updates the OBS package.
  2. Package maintainer tests the OBS package.
  3. If the package belongs to tools:testing and passes testing, Package Maintainer may accept it. If the package belongs to trunk:testing, Package Maintainer creates a promotional request to Release Management. (If the package belongs to both repositories, we let the Release Management set bugs fixed by the package to RELEASED state).
  4. Host side tools are updated to tools:testing after verifying functionality
  5. Package maintainer replies to meego-qa list about the actions done with the updated package. e.g. 'Updated in devel:quality and sent promotion request to testing'
  6. Release Management accepts the package. Or not. (Follow meego-packaging and meego-commits.)

If you shoot a video to YouTube, promote it on meego-qa mailing list!

YouTube videos

YouTube is a good way to communicate new features. You can find existing demo videos on meegoqatools channel on Youtube.

If you shoot a video to YouTube, promote it on meego-qa mailing list!

You can find some hints how to shoot, edit, and upload a video here: YouTube_Hints

Release checklist

To make sure fixes are released without delay, check that the following conditions are met

  1. Change logs are updated and contain relevant references to MeeGo bugzilla
  2. Created obs request include fixes bug numbers from MeeGo bugzilla
  3. Bugzilla items listed in changes are set as resolved
  4. Spec file matches MeeGo packaging guidelines
  5. Rpmlint warnings are either fixed or explained by comments in the spec file. e.g. eat packages install files into root's home and the reasoning for it needs to be explained
  6. Host side tool packages use the same source tar ball to produce debian and rpm packages

Features and Bugs

Want to report an feature idea or bug to us? - Please do it here

Bugzilla workflow: Bugzilla/how-report-bugs

Documentation

This section will contain links to various guides and user documentation. See the wiki pages of the tools for tool-specific documentation.

Design/ Planning

Meetings

All meetings will be held in #meego-meeting on irc.freenode.net.

Team meetings

QA tools team meetings will be held on need basis for specific topics. This was agreed in the last weekly meeting held on December 7th 2010

Architecture meetings

Architecture meetings will be held on-demand basis i.e. when topics do not fit in QA-Tools weekly meeting time frame.

Workshops

Face-2-face meetings within the team.

Team Members and Collaboration Spaces

The current team members are (in no particular order):

Name Role Affiliation IRC nickname
Ville Ilvonen Team lead (act.) Nokia vilvo
Riku Halonen Team member Nokia rikhalon
Kari Sievi Team member Digia sievi
Timo Härkönen Team member Digia timoph
Carol Rus Team member Digia carrus
Sami Lahtinen Team member Digia slahtinen
Raimo Gratseff Team member Digia rrraimo
Kyösti Ranto Team member Digia kyranto
Arto Sinnelä Team member Digia asinnela
Joonas Kylänpää Team member Digia Kaadlajk
Timo Mäkimattila Team member Digia timakima
Elias Luttinen Team member Digia eluttine
Ville Niutanen Team member Digia Villen
Esa-Pekka Miettinen Team member Digia E-P
Vesa Poikajärvi Team member Digia vesse
Alexey Kuznetsov Team member Digia alkuznet
Sergey Timofeev Team member Digia setimofe
Daniil Chuiko Team member Digia dachuiko
Sampo Saaristo Team member Sofica sampos
Ling Yu Team member Intel -
Jing Wang Team member Intel -
Teemu Vainio Team member Ixonos tvainio
Tuomo Mäkinen Team member Ixonos -
Jouni Leppäkases Team member Ixonos jouni
Tom Galvin Team member Ixonos -
Jarno Keskikangas Team member Leonidas jakeskik
Janne Hietamäki Team member Leonidas _janne
Sami Hangaslammi Team member Leonidas sahangas

Team communication is in English. Our collaboration spaces are:

Personal tools