Extras-testing

(Promotion / Demotion)
(Demotion: clearing ambiguities)
 
(53 intermediate revisions not shown)
Line 1: Line 1:
-
'''The software hosted in extras-testing might not be ready for end users!''' Please don't play with it unless you really know what you are doing.
+
{{Extras-testing}}
-
The maemo.org extras-testing repository hosts community applications and related packages that are waiting to be evaluated and promoted to Maemo 5 [[Extras]]. The packages hosted here are promoted from [[extras-devel]] and have gone through an automated quality check. Now they need real humans assessing that they are indeed ready to be released.
+
<br>
 +
The maemo.org extras-testing repository hosts community applications and related packages that are waiting to be evaluated and promoted to Maemo 5 [[Extras]]. The packages hosted here are promoted from [[extras-devel]] and have gone through an automated quality check. Now they need real humans assessing that they are indeed ready to be released. If this article is hard to understand but you want to test software, please see [[Help testing software]] -article.
-
== Target: Maemo 5 testers ==
+
== Community Quality Assurance ==
 +
Offering good quality community software to owners of Maemo devices is a top priority. We have a chance to show the world that open source software developed by community projects can match commercial software in terms of features, usability, reliability and fun. But we also face the risk of getting maemo.org Extras associated with beta quality software made by geeks for geeks only, without the last mile of polishing.
-
Power users willing to help Maemo 5 developers getting their apps ready are encouraged to activate this repository.
+
This is why we have put a community QA process in place in order to help developers to get their software ready for end users. Free community certification for free software.
-
'''Applications in extras-testing might break and cause trouble to your system!''' Regular users are encouraged to stay away.
+
You can help improve this QA process. Feel free to check the [[Talk:Extras-testing/QA_Checklist|discussion page]] and the [http://talk.maemo.org/showthread.php?t=33317 Talk discussion thread].
-
=== Activating extras-testing ===
+
We run occasional [[Extras-testing/Testing marathon | testing marathons]], where we get together for a day and work on getting through the extras-testing queue. Join in!
-
Users willing to give a hand testing and evaluating community applications must start activating the extras-testing repository in the Application Manager of their Maemo 5 compatible device.
+
== How it works in practice ==
 +
Developers upload their software to [[Extras-devel]], the unstable repository. extras-devel is where anything can break and where no end users are expected unless they know perfectly well what they are doing. When the developer of an application thinks that it's ready for the masses, he or she promotes it to extras-testing. There is a series of automatic tests to filter the jump from extras-devel to extras-testing already. If everything is ok, the application ends up in extras-testing, and from that point it will be subject to a human evaluation.
-
  Application manager --> Application catalogs --> New
+
===Follow new packages on Twitter (@maemoextras)===
 +
If you want to be informed when new packages enter the Extras-Testing repository, you might want to follow [http://twitter.com/maemoextras maemoextras on Twitter].
 +
 
 +
== The extras-testing QA queue & you ==
 +
The list of applications waiting to be evaluated in Extras-testing can be found at
 +
  http://maemo.org/packages/repository/qa/fremantle_extras-testing/
 +
 
 +
They are sorted by age: the first application is the oldest in the extras-testing queue and the last is the youngest. When a developer sends a new version of an application the old version disappears from the list and the new one is located at the end of the list.
 +
 
 +
There are three basic types of beta testers:
 +
* The ones that concentrate on the applications on top of the list (the apps that have been longest in the queue). Do this unless you have a better agenda. It is important to give feedback to developers soon. Either they get their software approved to Extras or they get bad reports so work on a new version in extras-devel.
 +
* The ones that concentrate on the applications they regularly use. By following this path you become an expert in specific applications, able to evaluate new releases quickly and get involved in the project as a regular.
 +
* The ones that concentrate on a type of testing. Some prefer to check that the features work and there are no crashes. Others might prefer to look at performance or power management metrics. Testing is a complex activity and nobody is expected to be an expert in all fields.
 +
 
 +
=== Report soon, report often ===
 +
Testing a specific version of an application thoroughly takes time, and most of us are busy. This is why you are encouraged to handle testing in chunks, testing a specific aspect of one application and reporting back to the page where the evaluations are made. If you report that the content of ExampleApp is correct (something that took you only ten minutes to check), then someone else after you can concentrate on something else. Ten people can look at one thing each, instead of ten people each having to go through the ten things.
 +
 
 +
=== Try to find the blockers first ===
 +
The [[Extras-testing/QA Checklist|QA Checklist]] contains several points that block an app from promotion to Extras. If there is a flagrant and evident blocker (e.g. wrong use of the Maemo trademark) then there is no immediate need to go further on testing more complex and subtle aspects like power management or system reliability. Just file the blocker bug and raise the flag asking the developer to prepare a fixed version in Extras-devel.
 +
 
 +
=== One after another ===
 +
If you are testing aspects like power management and system stability it is recommended that you install and try out applications one by one (this is a good idea for all users anyway). If you install many applications at once then it will be difficult to find out which one is causing trouble.
 +
 
 +
Below you have a modular checklist to help you evaluate apps soon and often.
 +
 
 +
== How to activate Extras-testing ==
 +
 
 +
Users willing to give a hand testing and evaluating community applications must start activating the extras-testing repository in the Application Manager of their Maemo 5 compatible device. Note, the word 'fremantle' contains only two letter 'e'. Note the trailing slash in the URL
 +
 
 +
Application manager, menu, Application catalogs, New
  Catalog name: maemo.org extras-testing
  Catalog name: maemo.org extras-testing
-
  Web address: http://repository.maemo.org/extras-testing
+
  Web address: http://repository.maemo.org/extras-testing/
  Distribution: fremantle
  Distribution: fremantle
  Components: free non-free
  Components: free non-free
-
=== Packages waiting to be evaluated ===
+
== Vote on Packages waiting to be evaluated ==
-
* Power users can install any of the [http://maemo.org/packages/repository/qa/fremantle_extras-testing_free_armel/ user applications] and start the evaluation.
+
* Voting for fremantle extras-testing packages takes place at [http://maemo.org/packages/repository/qa/fremantle_extras-testing/ Fremantle Repository QA Queue] after completing your QA evaluation.
-
* Developers might want to have a look to the [http://maemo.org/packages/repository/qa/all/fremantle_extras-testing_free_armel/ full list of packages] as well.
+
* Developers might want to have a look at the [http://maemo.org/packages/repository/qa/all/fremantle_extras-testing_free_armel/ full list of packages] as well.
== Quality Assurance criteria ==
== Quality Assurance criteria ==
-
There are several elements to be considered before voting Up/Down. Please take your time looking at them. Don't evaluate lightly an application! If you are busy or in a hurry just let others do the job.  
+
There are several elements to be considered before voting Up/Down. Please take your time looking at them. Don't evaluate an application lightly! If you are busy or in a hurry, perhaps let others do the testing.  
-
If you want to help evaluating one application follow the [[Extras-testing/QA_Checklist|Extras-testing QA_Checklist]]
+
If you want to help evaluating one application follow the [[Extras-testing/QA checklist|Extras-testing QA Checklist]]
=== Thumbs Up ===
=== Thumbs Up ===
 +
'''Don't vote up an application before having a good understanding of its quality''' based on your own testing and the opinion of other contributors involved.
'''Don't vote up an application before having a good understanding of its quality''' based on your own testing and the opinion of other contributors involved.
=== Thumbs Down ===
=== Thumbs Down ===
-
Whenever you decide to vote an application '''down''', please leave a comment describing what issues you found. The best feedback is a bug number, since this allow to track and discuss better the problems. Voting thumbs down without any explanation doesn't help the developer getting better software for you and the end users.
+
Whenever you decide to vote an application '''down''', please leave a comment describing the issues you found. The best feedback is a bug report from the bug-tracking system of the application because it allows the developers and testers to track and discuss the problems effectively. Voting thumbs down without any explanation doesn't help the developer in providing better software for you and the end users. Remember, this is not about "like" nearly as much as it is about "doesn't break things".
-
== Promotion / Demotion NOT FINAL FIXME ==
+
There is also a mailing [https://garage.maemo.org/mailman/listinfo/testingsquad-comments comments list] that contains all the traffic from the comments on QA pages - it is a good reference to see how testing communication works, what the common issues are, etc.
 +
 
 +
== Command line applications ==
 +
 
 +
[[/Command line applications | Command line apps]] are a special-case in apps and app testing. They have their own special icon, and should have detailed descriptions and documentation describing their function.
 +
 
 +
== Promotion  ==
An application is promoted to Extras when these criteria are fulfilled:
An application is promoted to Extras when these criteria are fulfilled:
* At least 10 days of quarantine
* At least 10 days of quarantine
-
* Karma 10 or more (1 vote up = 1 karma point / 1 vote down = -4 karma points)
+
* Karma >10 (1 vote up = 1 karma point / 1 vote down = -1 karma points)
-
* At least 3 members of the testers group have voted. (((what is the testers group needs to be defined, but they are meant to be senior and reliable contributors)))
+
* At least 3 members of the testers group have voted. (proposed improvement, not implemented/final)
-
An application is demoted to Extras-devel when blockers are found by at least 5 voters, or when the own developer decides to demote the version candidate.
+
== Demotion ==
 +
An application is demoted from Extras-testing to Extras-devel when these criteria are fulfilled:
 +
* At least 10 days of quarantine have expired and at least one of the following conditions is true
 +
* Karma < -5 (1 vote up = 1 karma point / 1 vote down = -1 karma points)
 +
* When the maintainer votes down the application
 +
*At least 3 members of the testers group have voted down. (proposed improvement, not implemented/final)
== Tools for testers ==
== Tools for testers ==
-
Testing tools help finding non-obvious flaws and getting useful data from visible problems.
+
{{main|Documentation/devtools/maemo5}}
-
All the tools mentioned below are available from the Maemo 5 SDK tools repository. Even though the repository is intended for SDK use, all tools in the repository can be run on-device as well.
+
Testing tools help finding non-obvious flaws and getting useful data from visible problems. Several things can be observed from the application to give an idea of whether it is performing as it should. For all these areas tools exist to analyse the application. To get an idea of what kind of tools are in the Maemo 5 SDK tools repository, see the list of [[Documentation/devtools/maemo5#Categories|Maemo 5 developer tools]].
-
To activate the tools repository go through the following steps:
+
Some the tools mentioned below are available from the Maemo 5 SDK tools repository. Even though the repository is intended for SDK use, all tools in the repository can be run on-device as well. To activate the tools repository, [[Documentation/devtools/maemo5#Installation|follow the installation instructions]].
-
Application manager --> Application catalogs --> New
 
-
Catalog name: Maemo 5 SDK tools
 
-
Web address: http://repository.maemo.org/
 
-
Distribution: fremantle/tools
 
-
Components: free non-free
 
-
 
-
The tools in the tools repository are command line utilities, so they will not add applications to the application manager list of downloadable applications. This also means that the tools need to be installed from the X terminal as root. Use rootsh from extras to gain root access.
 
-
 
-
To get an idea of what kind of tools are/will be in the Maemo 5 SDK tools repository see the [http://maemo.org/development/tools/ Maemo 4.1 SDK tools].
 
-
 
-
Several things can be observed from the application to give an idea of whether it is performing as it should. For all these areas tools exist to analyse the application.
 
=== Process tracing ===
=== Process tracing ===
Tracing process activity can tell whether the application is working as it should, but it is also a good indicator of battery usage. If an application wakes up unnecessarily (i.e. no user interaction or absolutely mandatory timed operations) this can be seen in traces.
Tracing process activity can tell whether the application is working as it should, but it is also a good indicator of battery usage. If an application wakes up unnecessarily (i.e. no user interaction or absolutely mandatory timed operations) this can be seen in traces.
 +
 +
=== CPU usage ===
 +
* Terminal applications: top, [[Documentation/devtools/maemo5/htop|htop]]
 +
* Applet: [http://maemo.org/downloads/product/Maemo5/load-applet/ load-applet] or [http://maemo.org/downloads/product/Maemo5/cpumem-applet/ cpumem-applet] from Extras are handy graphical tools to monitor CPU usage from the Status area on the desktop. The blinking column on the left indicates CPU activity.
 +
* Applications: [http://maemo.org/downloads/product/Maemo5/conky/ conky] can also be used to monitor cpu usage.
=== Memory usage ===
=== Memory usage ===
-
Following memory use for leaks.
+
Tracking memory use for leaks.
 +
 
 +
[http://maemo.org/downloads/product/Maemo5/load-applet/ load-applet from Extras] is a handy graphical tool to monitor memory usage from the Status area on the desktop. The blinking column on the right indicates memory use.
=== Network traffic ===
=== Network traffic ===
Line 75: Line 115:
=== Power consumption ===
=== Power consumption ===
For widgets:
For widgets:
-
Users should run as root the command "powertop" before and after adding the widget to the desktop.  Symptoms of a power-hungry application are a large increase in the number of overall wakeups from the "hildon-home" process.
+
Users should [[Root access|run as root]] the command "[http://maemo.org/packages/view/powertop/ powertop]" before and after adding the widget to the desktop.  Symptoms of a power-hungry application are a large increase in the number of overall wakeups from the "hildon-home" process.
 +
 
 +
== Testing marathons ==
 +
 
 +
Every now and again, we hold testing marathons, to help clear the queue of applications awaiting approval for extras-testing. You can find out more about the [[Extras-testing/Testing marathon | testing marathons]] here.
[[Category:Development]]
[[Category:Development]]
 +
[[Category:Quality Assurance]]

Latest revision as of 21:00, 12 April 2013

Image:Ambox_notice.png
The software hosted in extras-testing is not ready for normal users!
PLEASE use it only for testing purposes. Be ready to file proper bug reports instead of posting complaints.

Potential problems: crashes, battery drain, poor system performance, full disk space & more - SERIOUSLY!

Backing up your data is recommended. In case of trouble you might need to re-flash your device.



The maemo.org extras-testing repository hosts community applications and related packages that are waiting to be evaluated and promoted to Maemo 5 Extras. The packages hosted here are promoted from extras-devel and have gone through an automated quality check. Now they need real humans assessing that they are indeed ready to be released. If this article is hard to understand but you want to test software, please see Help testing software -article.

Contents

Community Quality Assurance

Offering good quality community software to owners of Maemo devices is a top priority. We have a chance to show the world that open source software developed by community projects can match commercial software in terms of features, usability, reliability and fun. But we also face the risk of getting maemo.org Extras associated with beta quality software made by geeks for geeks only, without the last mile of polishing.

This is why we have put a community QA process in place in order to help developers to get their software ready for end users. Free community certification for free software.

You can help improve this QA process. Feel free to check the discussion page and the Talk discussion thread.

We run occasional testing marathons, where we get together for a day and work on getting through the extras-testing queue. Join in!

How it works in practice

Developers upload their software to Extras-devel, the unstable repository. extras-devel is where anything can break and where no end users are expected unless they know perfectly well what they are doing. When the developer of an application thinks that it's ready for the masses, he or she promotes it to extras-testing. There is a series of automatic tests to filter the jump from extras-devel to extras-testing already. If everything is ok, the application ends up in extras-testing, and from that point it will be subject to a human evaluation.

Follow new packages on Twitter (@maemoextras)

If you want to be informed when new packages enter the Extras-Testing repository, you might want to follow maemoextras on Twitter.

The extras-testing QA queue & you

The list of applications waiting to be evaluated in Extras-testing can be found at

http://maemo.org/packages/repository/qa/fremantle_extras-testing/ 

They are sorted by age: the first application is the oldest in the extras-testing queue and the last is the youngest. When a developer sends a new version of an application the old version disappears from the list and the new one is located at the end of the list.

There are three basic types of beta testers:

  • The ones that concentrate on the applications on top of the list (the apps that have been longest in the queue). Do this unless you have a better agenda. It is important to give feedback to developers soon. Either they get their software approved to Extras or they get bad reports so work on a new version in extras-devel.
  • The ones that concentrate on the applications they regularly use. By following this path you become an expert in specific applications, able to evaluate new releases quickly and get involved in the project as a regular.
  • The ones that concentrate on a type of testing. Some prefer to check that the features work and there are no crashes. Others might prefer to look at performance or power management metrics. Testing is a complex activity and nobody is expected to be an expert in all fields.

Report soon, report often

Testing a specific version of an application thoroughly takes time, and most of us are busy. This is why you are encouraged to handle testing in chunks, testing a specific aspect of one application and reporting back to the page where the evaluations are made. If you report that the content of ExampleApp is correct (something that took you only ten minutes to check), then someone else after you can concentrate on something else. Ten people can look at one thing each, instead of ten people each having to go through the ten things.

Try to find the blockers first

The QA Checklist contains several points that block an app from promotion to Extras. If there is a flagrant and evident blocker (e.g. wrong use of the Maemo trademark) then there is no immediate need to go further on testing more complex and subtle aspects like power management or system reliability. Just file the blocker bug and raise the flag asking the developer to prepare a fixed version in Extras-devel.

One after another

If you are testing aspects like power management and system stability it is recommended that you install and try out applications one by one (this is a good idea for all users anyway). If you install many applications at once then it will be difficult to find out which one is causing trouble.

Below you have a modular checklist to help you evaluate apps soon and often.

How to activate Extras-testing

Users willing to give a hand testing and evaluating community applications must start activating the extras-testing repository in the Application Manager of their Maemo 5 compatible device. Note, the word 'fremantle' contains only two letter 'e'. Note the trailing slash in the URL

Application manager, menu, Application catalogs, New
Catalog name: maemo.org extras-testing
Web address: http://repository.maemo.org/extras-testing/
Distribution: fremantle
Components: free non-free

Vote on Packages waiting to be evaluated

Quality Assurance criteria

There are several elements to be considered before voting Up/Down. Please take your time looking at them. Don't evaluate an application lightly! If you are busy or in a hurry, perhaps let others do the testing.

If you want to help evaluating one application follow the Extras-testing QA Checklist

Thumbs Up

Don't vote up an application before having a good understanding of its quality based on your own testing and the opinion of other contributors involved.

Thumbs Down

Whenever you decide to vote an application down, please leave a comment describing the issues you found. The best feedback is a bug report from the bug-tracking system of the application because it allows the developers and testers to track and discuss the problems effectively. Voting thumbs down without any explanation doesn't help the developer in providing better software for you and the end users. Remember, this is not about "like" nearly as much as it is about "doesn't break things".

There is also a mailing comments list that contains all the traffic from the comments on QA pages - it is a good reference to see how testing communication works, what the common issues are, etc.

Command line applications

Command line apps are a special-case in apps and app testing. They have their own special icon, and should have detailed descriptions and documentation describing their function.

Promotion

An application is promoted to Extras when these criteria are fulfilled:

  • At least 10 days of quarantine
  • Karma >10 (1 vote up = 1 karma point / 1 vote down = -1 karma points)
  • At least 3 members of the testers group have voted. (proposed improvement, not implemented/final)

Demotion

An application is demoted from Extras-testing to Extras-devel when these criteria are fulfilled:

  • At least 10 days of quarantine have expired and at least one of the following conditions is true
  • Karma < -5 (1 vote up = 1 karma point / 1 vote down = -1 karma points)
  • When the maintainer votes down the application
  • At least 3 members of the testers group have voted down. (proposed improvement, not implemented/final)

Tools for testers

Main article: Documentation/devtools/maemo5


Testing tools help finding non-obvious flaws and getting useful data from visible problems. Several things can be observed from the application to give an idea of whether it is performing as it should. For all these areas tools exist to analyse the application. To get an idea of what kind of tools are in the Maemo 5 SDK tools repository, see the list of Maemo 5 developer tools.

Some the tools mentioned below are available from the Maemo 5 SDK tools repository. Even though the repository is intended for SDK use, all tools in the repository can be run on-device as well. To activate the tools repository, follow the installation instructions.


Process tracing

Tracing process activity can tell whether the application is working as it should, but it is also a good indicator of battery usage. If an application wakes up unnecessarily (i.e. no user interaction or absolutely mandatory timed operations) this can be seen in traces.

CPU usage

  • Terminal applications: top, htop
  • Applet: load-applet or cpumem-applet from Extras are handy graphical tools to monitor CPU usage from the Status area on the desktop. The blinking column on the left indicates CPU activity.
  • Applications: conky can also be used to monitor cpu usage.

Memory usage

Tracking memory use for leaks.

load-applet from Extras is a handy graphical tool to monitor memory usage from the Status area on the desktop. The blinking column on the right indicates memory use.

Network traffic

Network use can also be looked at to see whether the application is behaving as expected.

Power consumption

For widgets: Users should run as root the command "powertop" before and after adding the widget to the desktop. Symptoms of a power-hungry application are a large increase in the number of overall wakeups from the "hildon-home" process.

Testing marathons

Every now and again, we hold testing marathons, to help clear the queue of applications awaiting approval for extras-testing. You can find out more about the testing marathons here.