Editing Extras-testing/QA checklist

Warning: You are not logged in. Your IP address will be recorded in this page's edit history.
The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision Your text
Line 4: Line 4:
Please check the points of this list. Don't rush to give thumbs up to an application before it is tested. But don't try to delay the release of an app with minor bugs or enhancement proposals separate from this discrete QA checklist.
Please check the points of this list. Don't rush to give thumbs up to an application before it is tested. But don't try to delay the release of an app with minor bugs or enhancement proposals separate from this discrete QA checklist.
-
 
+
===QA Improvements===
-
==QA Improvements==
+
There is a ongoing QA improvements discussion in talk.maemo.org (see [http://talk.maemo.org/showthread.php?t=41179 here] and [http://talk.maemo.org/showthread.php?t=33317 here]) and the [http://lists.maemo.org/pipermail/maemo-community/2010-January/003834.html mailing list]. One task is to [http://talk.maemo.org/showthread.php?t=42055 establish a testing squad].
-
 
+
The results can be find at this wiki page:[[Extras-testing/QA_Checklist/QA_Improvements|QA improvements]]
-
There is a ongoing QA (Quality Assurance) improvements discussion in talk.maemo.org (see [http://talk.maemo.org/showthread.php?t=41179 here] and [http://talk.maemo.org/showthread.php?t=33317 here]) and the [http://lists.maemo.org/pipermail/maemo-community/2010-January/003834.html mailing list]. One task is to [http://talk.maemo.org/showthread.php?t=42055 establish a testing squad].
+
-
The results can be found at this wiki page: [[Extras-testing/QA_Checklist/QA_Improvements|QA improvements]]
+
===QA checklist===
===QA checklist===
-
 
Use this checklist until the extras-testing approval interface is fixed. It helps to see what you have tested and what other testers should still test. This checklist condenses the blockers explained below, read the explanation below before you mark a test as done.
Use this checklist until the extras-testing approval interface is fixed. It helps to see what you have tested and what other testers should still test. This checklist condenses the blockers explained below, read the explanation below before you mark a test as done.
Line 28: Line 25:
</pre>
</pre>
-
'''Note: Only paste this template if there is some problem with the application or if you have not tested some of the points above, let's not spam the developers.'''
+
'''Note: Only paste this template if there's some problem with the application or if you haven't tested some of the points above, let's not spam the developers.'''
* Copy&paste this to the comment box.
* Copy&paste this to the comment box.
Line 55: Line 52:
</pre>
</pre>
-
==== Blockers ====
+
=== Blockers ===
-
A "blocker" is any item not met in the QA checklist.  If any one of the criteria in the QA checklist is not met, the application cannot go into Extras. A Critical bug at http://bugs.maemo.org/ against the application is required to justify your thumbs down.
+
If one of these criteria is not met, the application cannot go into Extras. A Critical bug at http://bugs.maemo.org/ against the application is required to justify your thumbs down.
-
Lack of bug reporting database
+
==== Lack of bug reporting database ====
-
#: It needs to be [[Packaging#Bugtracker location|identified in the http://maemo.org/packages/ page]].<br> http://bugs.maemo.org/ is the preferred option.
+
It needs to be [[Packaging#Bugtracker location|identified in the http://maemo.org/packages/ page]]. http://bugs.maemo.org/ is the preferred option.  
-
#: '''A missing bugtracker is NOT a blocker''' as of 01.09.2010, but use of bugtracking facilities IS strongly recommended.
+
-
#:''Developers: If the bugtracker field is not specified, the address is defaulted to be that of the package itself on maemo.org: <nowiki>http://maemo.org/packages/view/<package>(/<version>)</nowiki> Resolutions for bugtracking are found at [[Packaging#Bugtracker_location]]''
+
-
# Licensing and legal issues
+
-
#: Evident licensing problems or copyright violation. The open source licenses need to be compliant. It needs to be clear that the product is not officially supported by Nokia, Maemo or other commercial entities and trademarks.
+
-
# Illegal or dubious content
+
-
#: To avoid any doubt, the content must not depict explicit sexual activity; depict or endorse acts that cause or are intended to cause excessive pain or suffering; promote or endorse the misuse of alcohol, tobacco, illegal drugs or other addictive substances; promote intolerance or discrimination based on racial, political, ethnic, religious, gender differences or sexuality; promote invasion of rights of privacy; promote gambling or promote illegal activity.
+
-
# Working features, broken functionality or reproducible crashes
+
-
#: There is some functionality that does not work or produces a crash. Report the problem in the application's bug reporting database. There you can provide a list of steps that lead to the problem.
+
-
# Missing announced features
+
-
#:Core features advertised through UI or product page don't work or are missing.
+
-
# Optification
+
-
#: '''''Test using the ''df'' command:'''''
+
-
#: In Xterminal, run <code>df -h | grep -e rootfs -e mmcblk0p2</code> before and after you install the package being tested, and see how much the usage of each partition changes. If more than, say, 300 kb (0.3 MB) are added to usage of rootfs, it's too much and the package needs to be optified.
+
-
#: '''''Test using the ''dpkg'' command:'''''
+
-
#: After installation of the package being tested, run in Xterminal <code>dpkg -L packagename</code> It will show all the files installed by the package.  Inspect the result to confirm that some of the files are placed in the /opt or MyDocs directories.
+
-
#: Please add those packages which fail optification to the list at [[Opt_Problem/Non-Optified_packages]].
+
-
#: ''Developers: An application is correctly "optified" if all files created during the normal operation of the application are created and stored in /opt or MyDocs, since these directories are not stored on the root filesystem.  If the application or its dependencies ignore the recommendation to [[Documentation/Maemo 5 Developer Guide/Packaging, Deploying and Distributing/Installing under opt and MyDocs|use the eMMC to install as much files as possible]], filling the root partition with 500kb or more, this can be considered a blocker.  Also see [[Opt Problem]].''
+
-
# System performance compromised
+
-
#: Running the application visibly affects the performance and responsiveness of the system, either through specific actions or leaving the application open/running during a long period of time.
+
-
# Power management issues
+
-
#: Battery life is diminished beyond acceptable standards by having the application running in the background or just through normal use. The use case of a full day without charging should not be compromised.
+
-
#: If specific applications are explicitly using a lot of power to boost speed or performance (for instance games, Wi-Fi heavy apps) then they must warn the user explicitly with a first boot banner.
+
-
# Security risks
+
-
#: The main security risks are financial damage, access to private data and harm to device components. If you find such risk in an application then you need to [http://maemo.org/community/security/ report] it and the app can't be uploaded to Extras until a deeper analysis has been done with favourable results.
+
-
====Non-blockers====
+
Developers: filling the ''XSBC-Bugtracker'' field in your packages addresses this problem. Please see the [[Tracking bugs in Extras]] wiki page for the range of valid bugtrackers you can use. You can [[Bugs:Adding_Extra_products|get your bugtracker at bugs.maemo.org]], use an external bugtracker (such as a project [[Getting started with Maemo_Garage#Trackers and tasks|bugtracker at garage.maemo.org]]), or a talk.maemo.org thread. An e-mail address for small projects (wallpapers, for example) can be used with the following field in the <code>debian/control</code> file of the package:
-
The extras-testing QA process should not be used to delay the release of new applications and updates with minor/normal bugs or enhancement requests. These can be filed as bugs just as usual.
+
XSBC-Bugtracker: mailto:yourname@example.com
-
* Developers are encouraged to adopt the Maemo 5 UI guidelines and optimize their application to finger use. However, lack of Maemo 5 UI optimization is not a reason to block an application in its way to Extras unless it is unusable even with stylus.
+
The bugtracker field is mandatory for software to be promoted from Extras-devel to Extras-testing.
-
* Maemo 5 offers stock icons covering most regular use cases, but developers can use the icons they prefer as long as they respect copyrights. Broken icons can be a major bug stopping a release to Extras but discussions about beauty/ugliness of a UI are out of scope in the QA process.
+
-
====Warnings====
+
==== Licensing and legal issues ====
 +
Evident licensing problems or copyright violation. The open source licenses need to be compliant. It needs to be clear that the product is not officially supported by Nokia, Maemo or other commercial entities and trademarks.
-
If one of these warning criteria are not met, the developers will be asked to fix them urgently. Still, the app can make it slowly to Extras unless a blocker is raised.
+
==== Illegal or dubious content ====
 +
To avoid any doubt, the content must not depict explicit sexual activity; depict or endorse acts that cause or are intended to cause excessive pain or suffering; promote or endorse the misuse of alcohol, tobacco, illegal drugs or other addictive substances; promote intolerance or discrimination based on racial, political, ethnic, religious, gender differences or sexuality; promote invasion of rights of privacy; promote gambling or promote illegal activity.
 +
 
 +
==== Broken functionality or reproducible crashes ====
 +
There is some functionality that does not work or produces crash. Report the problem in the application's bug reporting database. There you can provide a list of steps that lead to the problem.
 +
 
 +
==== Missing announced features ====
 +
Core features advertised through UI or product page don't work or are missing.
 +
 
 +
==== Too much memory used in root partition ====
 +
The application or its dependencies ignore the recommendation to [[Documentation/Maemo 5 Developer Guide/Packaging, Deploying and Distributing/Installing under opt and MyDocs|use the eMMC to install as much files as possible]], filling the root partition with 500kb or more.
 +
 
 +
dpkg -L packagename shows all files installed by a package. Also see [[Opt Problem]].
 +
 
 +
Feel free to add those packages to [[Opt_Problem/Non-Optified_packages]].
 +
 
 +
==== System performance compromised ====
 +
Running the application visibly affects the performance and responsiveness of the system, either through specific actions or leaving the application open/running during a long period of time.
 +
 
 +
==== Power management issues ====
 +
Battery life is diminished beyond acceptable standards by having the application running in the background or just through normal use. The use case of a full day without charging shouldn't be compromised.
 +
 
 +
If specific applications are explicitly using a lot of power to boost speed or performance (for instance games, Wi-Fi heavy apps) then they must warn the user explicitly with a first boot banner.
 +
 
 +
==== Security risks ====
 +
The main security risks are financial damage, access to private data and harm to device components. If you find such risk in an application then you need to [http://maemo.org/community/security/ report] it and the app can't be uploaded to Extras until a deeper analysis has been done with favourable results.
 +
 
 +
===Warnings===
 +
If one of these warning criterias is not met, the developers will be asked to fix them urgently. Still, the app can make it slowly to Extras unless a blocker is raised.
* Details at http://maemo.org/packages/ are missing or incomplete: summary, URL to project, updates info.
* Details at http://maemo.org/packages/ are missing or incomplete: summary, URL to project, updates info.
Line 102: Line 103:
Testers with good technical knowledge are invited to look deeper in the [http://maemo.org/maemo_release_documentation/maemo4.1.x/node16.html Maemo Quality considerations] (((waiting for Fremantle update))) in order to find weak points in applications waiting to be promoted.
Testers with good technical knowledge are invited to look deeper in the [http://maemo.org/maemo_release_documentation/maemo4.1.x/node16.html Maemo Quality considerations] (((waiting for Fremantle update))) in order to find weak points in applications waiting to be promoted.
-
===Command Line applications===
+
===Non-blockers===
 +
The extras-testing QA process shouldn't be used to delay the release of new applications and updates with minor/normal bugs or enhancement requests. These can be filed as bugs just as usual.
 +
 
 +
* Developers are encouraged to adopt the Maemo 5 UI guidelines and optimize their application to finger use. However, lack of Maemo 5 UI optimization is not a reason to block an application in its way to Extras unless it is unusable even with stylus.
 +
* Maemo 5 offers stock icons covering most regular use cases, but developers can use the icons they prefer as long as they respect copyrights. Broken icons can be a major bug stopping a release to Extras but discussions about beauty/ugliness of a UI are out of scope in the QA process.
 +
==Command Line applications==
Command line applications are a special case, so two extra checks should be performed, these are blockers:
Command line applications are a special case, so two extra checks should be performed, these are blockers:
* The application uses the [[Extras-testing/Command_line_applications | CLI icon]] in the application manager.
* The application uses the [[Extras-testing/Command_line_applications | CLI icon]] in the application manager.
-
* The application [[Extras-testing/Command_line_applications#Description|description]] clearly says that the application only runs from the command line.
+
* The application [[Extras-testing/Command_line_applications#Description|description]] clearly says that the application only runs from the command line.  
-
==Testing software==
+
=Testing software=
 +
==Power use==
 +
The N900 has extensive powersaving technologies. It can achieve in some circumstances very good battery life.
-
===Power use===
+
For example, with a wifi AP that supports powersaving properly, connected over ssh and to a GSM network, battery life can be around 5 days idle.
-
 
+
-
The [[Nokia N900|N900]] has extensive powersaving technologies. It can achieve in some circumstances very good battery life. For example, with a wifi AP that supports powersaving properly, connected over ssh and to a GSM network, battery life can be around 5 days idle.
+
Leaving an application inactive (accidentally or not) is not uncommon, and the application must not use significant power when doing nothing with the screen locked.
Leaving an application inactive (accidentally or not) is not uncommon, and the application must not use significant power when doing nothing with the screen locked.
Line 119: Line 125:
This is a list of some applications that may be of use to ensure that the application you are testing does not damage suspend time.  
This is a list of some applications that may be of use to ensure that the application you are testing does not damage suspend time.  
-
* Powertop - is available in [http://maemo.org/packages/package_instance/view/fremantle_extras-devel_non-free_armel/powertop/1.0/ the extras-devel] repository.
 
-
(for best results, run with screen locked, over ssh, with nothing plugged into USB, as this minimises normal system activity)
+
* Powertop - this is not available in any repository as of now, it was available on the root filesystem of PR1.0, as [http://forums.internettablettalk.com/showthread.php?p=634362 discussed on this thread on talk.maemo.org]  And was packaged as a .deb [http://www.2shared.com/file/11135428/bbe19274/powertop_111-1_armel.html for download here].
 +
 
 +
(for best results, run with screen locked, over ssh)
  C#      | Ratio  | Avg/dura | Frequency | Ratio
  C#      | Ratio  | Avg/dura | Frequency | Ratio
Line 134: Line 141:
The CPU is continually active.
The CPU is continually active.
-
The 'C0' state is the state where the CPU is actively running - 60% of the time, and it is spending 100% of its time when running at 500 MHz.
+
The 'C0' state is the state where the CPU is actively running - 60% of the time, and it is spending 100% of its time when running at 500MHz.
The battery may last 10-12 hours.
The battery may last 10-12 hours.
-
C1 through C4 are various powersaving states - with C4 being the deepest, it is spending at most 3 ms - 1/300th of a second in shallow powersaving.
+
C1 through C4 are various powersaving states - with C4 being the deepest, it is spending at most 3ms - 1/300th of a second in shallow powersaving.
In comparison - the same phone when idle - the stats look like:
In comparison - the same phone when idle - the stats look like:
Line 150: Line 157:
       C4 |  78.3% |  810.5ms |  
       C4 |  78.3% |  810.5ms |  
-
The phone spends most of its time in the deepest powersaving state, is only actually running 1% of the time, and when it does, is running at 250 MHz.
+
The phone spends most of its time in the deepest powersaving state, is only actually running 1% of the time, and when it does, is running at 250MHz.
The battery in this case will last over 110 hours.
The battery in this case will last over 110 hours.
-
===top===
+
==top==
 +
 
 +
Top or [http://maemo.org/packages/view/htop/ htop in extras] can also be very handy. If when idle, the package you're testing is using 50% CPU - it's never going to be very good for battery life!
 +
 
 +
Cumulative time can be of use here - if every time you've looked, it's been using .4% CPU, but over half an hour it's used 10 min of CPU, something's fishy.
-
Top or [http://maemo.org/packages/view/htop/ htop in extras] can also be very handy. If when idle, the package you're testing is using 50% CPU - it is never going to be very good for battery life!
 
-
Cumulative time can be of use here - if every time you have looked, it has been using .4% CPU, but over half an hour it has used 10 min of CPU, something is wrong.
 
[[Category:Quality Assurance]]
[[Category:Quality Assurance]]

Learn more about Contributing to the wiki.


Please note that all contributions to maemo.org wiki may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see maemo.org wiki:Copyrights for details). Do not submit copyrighted work without permission!


Cancel | Editing help (opens in new window)

Templates used on this page: