TestEngineering/UI/AMO/AddonUpdates: Difference between revisions

From MozillaWiki
Jump to navigation Jump to search
No edit summary
 
(8 intermediate revisions by 2 users not shown)
Line 1: Line 1:
=Add-on Updates=<br>  
=== Add-on Updates<br> ===


update.php is what Mozilla apps asks to see if there are add-on updates available. We have migrated it to Python and need to ensure that there are no regressions.<br>  
update.php is what Mozilla apps asks to see if there are add-on updates available. We have migrated it to Python and need to ensure that there are no regressions.<br>  
Line 5: Line 5:
<br>  
<br>  


=Settings=<br>  
=== Settings<br> ===


To test the updates on the staging server we need to tweak the settings.  
To test the updates on the staging server we need to tweak the settings.  


<u>Settings for Firefox 3.6/4.0:</u>  
'''<u>Settings for Firefox 3.6/4.0:</u>'''


To test update on the staging server, change the following setting in your about:config <br>extensions.update.url to<br>
https://addons.allizom.org/update/VersionCheck.php?reqVersion=%REQ_VERSION%&amp;id=%ITEM_ID%&amp;version=%ITEM_VERSION%&amp;maxAppVersion=%ITEM_MAXAPPVERSION%&amp;status=%ITEM_STATUS%&amp;appID=%APP_ID%&amp;appVersion=%APP_VERSION%&amp;appOS=%APP_OS%&amp;appABI=%APP_ABI%&amp;locale=%APP_LOCALE%&amp;currentAppVersion=%CURRENT_APP_VERSION%&amp;updateType=%UPDATE_TYPE%<br> <br>'''<u>Settings for Fennec:</u>'''
 
https://addons.allizom.org/update/VersionCheck.php?reqVersion=%REQ_VERSION%&amp;id=%ITEM_ID%&amp;version=%ITEM_VERSION%&amp;maxAppVersion=%ITEM_MAXAPPVERSION%&amp;status=%ITEM_STATUS%&amp;appID=%APP_ID%&amp;appVersion=%APP_VERSION%&amp;appOS=%APP_OS%&amp;appABI=%APP_ABI%&amp;locale=%APP_LOCALE%&amp;currentAppVersion=%CURRENT_APP_VERSION%&amp;updateType=%UPDATE_TYPE%<br> <br><u>Settings for Fennec:</u>  


<br> To test update on the staging server, change the following setting in your about:config <br>extensions.update.url to<br>  
<br> To test update on the staging server, change the following setting in your about:config <br>extensions.update.url to<br>  


<br> https://addons.allizom.org/update/VersionCheck.php?reqVersion=%REQ_VERSION%&amp;id=%ITEM_ID%&amp;version=%ITEM_VERSION%&amp;maxAppVersion=%ITEM_MAXAPPVERSION%&amp;status=%ITEM_STATUS%&amp;appID=%APP_ID%&amp;appVersion=%APP_VERSION%&amp;appOS=%APP_OS%&amp;appABI=%APP_ABI%&amp;locale=%APP_LOCALE%&amp;currentAppVersion=%CURRENT_APP_VERSION%&amp;updateType=%UPDATE_TYPE%  
<br>  
https://addons.allizom.org/update/VersionCheck.php?reqVersion=%REQ_VERSION%&amp;id=%ITEM_ID%&amp;version=%ITEM_VERSION%&amp;maxAppVersion=%ITEM_MAXAPPVERSION%&amp;status=%ITEM_STATUS%&amp;appID=%APP_ID%&amp;appVersion=%APP_VERSION%&amp;appOS=%APP_OS%&amp;appABI=%APP_ABI%&amp;locale=%APP_LOCALE%&amp;currentAppVersion=%CURRENT_APP_VERSION%&amp;updateType=%UPDATE_TYPE%  


You need to restart Fennec after changing the update.url  
You need to restart Fennec after changing the update.url  


<u>Settings for Thunderbird:</u>  
'''<u>Settings for Thunderbird:</u>'''


To test update on the staging server, change the following setting in your about:config<br> extension.update.url to<br> <br> https://addons.allizom.org/update/VersionCheck.php?reqVersion=%REQ_VERSION%&amp;id=%ITEM_ID%&amp;version=%ITEM_VERSION%&amp;maxAppVersion=%ITEM_MAXAPPVERSION%&amp;status=%ITEM_STATUS%&amp;appID=%APP_ID%&amp;appVersion=%APP_VERSION%&amp;appOS=%APP_OS%&amp;appABI=%APP_ABI%<br> <u><br>Settings for Seamonkey:</u><br> <br> To test update on the staging server, change the following setting in your about:config<br> extension.update.url to<br> <br> https://addons.allizom.org/update/VersionCheck.php?reqVersion=%REQ_VERSION%&amp;id=%ITEM_ID%&amp;version=%ITEM_VERSION%&amp;maxAppVersion=%ITEM_MAXAPPVERSION%&amp;status=%ITEM_STATUS%&amp;appID=%APP_ID%&amp;appVersion=%APP_VERSION%&amp;appOS=%APP_OS%&amp;appABI=%APP_ABI%&amp;locale=%APP_LOCALE%&amp;currentAppVersion=%CURRENT_APP_VERSION%<br> <br>  
To test update on the staging server, change the following setting in your about:config<br> extension.update.url to<br> <br>  
https://addons.allizom.org/update/VersionCheck.php?reqVersion=%REQ_VERSION%&amp;id=%ITEM_ID%&amp;version=%ITEM_VERSION%&amp;maxAppVersion=%ITEM_MAXAPPVERSION%&amp;status=%ITEM_STATUS%&amp;appID=%APP_ID%&amp;appVersion=%APP_VERSION%&amp;appOS=%APP_OS%&amp;appABI=%APP_ABI%<br> <u><br></u>'''<u>Settings for Seamonkey:</u>'''<br> <br> To test update on the staging server, change the following setting in your about:config<br> extension.update.url to<br> <br> https://addons.allizom.org/services/update?reqVersion=%REQ_VERSION%&amp;id=%ITEM_ID%&amp;version=%ITEM_VERSION%&amp;maxAppVersion=%ITEM_MAXAPPVERSION%&amp;status=%ITEM_STATUS%&amp;appID=%APP_ID%&amp;appVersion=%APP_VERSION%&amp;appOS=%APP_OS%&amp;appABI=%APP_ABI%&amp;locale=%APP_LOCALE%&amp;currentAppVersion=%CURRENT_APP_VERSION%<br> <br>


== Usecase Scenarios:  ==
== Usecase Scenarios:  ==


testcase 1: Update add-on versions  
'''testcase 1: Update add-on versions '''


*Check that clicking on “Find updates”, lists the latest supported versions for your installed add-ons  
*Check that clicking on “Find updates”, lists the latest supported versions for your installed add-ons  
*Ensure that the update is successful
*Ensure that the update is successful


testcase 2: Update Firefox versions (with add-on updates)  
'''testcase 2: Update Firefox versions (with add-on updates)'''


*Install an older version of Firefox  
*Install an older version of Firefox  
Line 40: Line 40:
*Ensure that the update is successful<br>
*Ensure that the update is successful<br>


testcase 3:Update Firefox versions (with no add-on updates)  
'''testcase 3:Update Firefox versions (with no add-on updates) '''


*Install an older version of Firefox  
*Install an older version of Firefox  
Line 47: Line 47:
*Check that when Firefox starts, there are no fake prompts for updates<br>
*Check that when Firefox starts, there are no fake prompts for updates<br>


testcase 4:Update prompt while opening a Firefox profile  
'''testcase 4:Update prompt while opening a Firefox profile'''


*Create a profile which has a few older versions of add-ons installed.  
*Create a profile which has a few older versions of add-ons installed.  
*Quit Firefox  
*Quit Firefox  
*Start the firefox profile  
*Open a different profile
*Switch back to the original profile
*Check that there are updates for incompatible add-on versions
*Check that there are updates for incompatible add-on versions


testcase 5: Update prompt for beta add-ons  
'''testcase 5: Update prompt for beta add-ons'''


*Select an add-on which has multiple beta versions(say b1-b4)  
*Select an add-on which has multiple beta versions(say b1-b4)  
Line 62: Line 63:
*Update is successful
*Update is successful


testcase 6: Check that updates are only offered when the newer versions of the add-on are public  
'''testcase 6: Check that updates are only offered when the newer versions of the add-on are public'''


*Pick an add-on with an unreviewed latest version.  
*Pick an add-on with an unreviewed latest version.  
Line 69: Line 70:
*Check that there are no updates
*Check that there are no updates


testcase 7: Check that there are no updates for unreviewed add-ons  
'''testcase 7: Check that there are no updates for unreviewed add-ons'''


*Pick an add-on with multiple unreviewed versions  
*Pick an add-on with multiple unreviewed versions  
Line 76: Line 77:
*No updates
*No updates


testcase 8: Check that no updates are offered if the newer version is incompatible with user's browser version/platform  
'''testcase 8: Check that no updates are offered if the newer version is incompatible with user's browser version/platform'''


*Pick an add-on with an incompatible latest version  
*Pick an add-on with an incompatible latest version  
Line 83: Line 84:
*No updates are offered
*No updates are offered


testcase 9: Check for platform compatibility  
'''testcase 9: Check for platform compatibility'''


*Pick an add-on which has version (b-n) compatible with the test platform and version b not supported on your platform/OS  
*Pick an add-on which has version (b-n) compatible with the test platform and version b not supported on your platform/OS  
Line 89: Line 90:
*Tools-&gt; Add-ons --&gt;Click on “Find Updates”  
*Tools-&gt; Add-ons --&gt;Click on “Find Updates”  
*No updates are offered
*No updates are offered
'''testcase 10: admin disabled add-on versions'''
* Install an older version of the test add-on
* Admin-disable the latest version of that add-on
* Check for updates
* Ensure that no updates are offered
'''testcase 11: Downgrading add-on versions'''
* Install the latest version of an add-on
* Admin-disable that version
* Check for updates
* Previous version of the add-on is offered
'''testcase 12: Deleting beta channel'''
* Install the beta version of an add-on
* Ensure that there is a newer public version for that add-on
* Delete all beta versions
* Check for updates
* Ensure that the latest public version of the add-on is offered
'''testcase 13: Check updates for lite reviewed add-on'''
* Install an older version of a lite reviewed add-on
* Check for updates
* Ensure that the latest prelim reviewed add-on is offered in updates
'''testcase 14: Check updates for public add-on'''
* Install an older version of a public add-on
* Check for updates
* Ensure that the latest public add-on is offered in updates
'''testcase 15: Only public versions are offered as updates'''
* Install an older version of a public add-on
* Grant lite review to the newer version of that add-on
* Check for updates
* Ensure that there are no updates.
'''testcase 16: Updates for a lite+nominated add-on'''
* Install an older version of a lite+nominated add-on
* Grant lite review to the newer version of that add-on
* Check for updates
* Ensure that there are no updates.


<br> <br>
<br> <br>

Latest revision as of 20:19, 26 August 2016

Add-on Updates

update.php is what Mozilla apps asks to see if there are add-on updates available. We have migrated it to Python and need to ensure that there are no regressions.


Settings

To test the updates on the staging server we need to tweak the settings.

Settings for Firefox 3.6/4.0:

https://addons.allizom.org/update/VersionCheck.php?reqVersion=%REQ_VERSION%&id=%ITEM_ID%&version=%ITEM_VERSION%&maxAppVersion=%ITEM_MAXAPPVERSION%&status=%ITEM_STATUS%&appID=%APP_ID%&appVersion=%APP_VERSION%&appOS=%APP_OS%&appABI=%APP_ABI%&locale=%APP_LOCALE%&currentAppVersion=%CURRENT_APP_VERSION%&updateType=%UPDATE_TYPE%

Settings for Fennec:


To test update on the staging server, change the following setting in your about:config
extensions.update.url to


https://addons.allizom.org/update/VersionCheck.php?reqVersion=%REQ_VERSION%&id=%ITEM_ID%&version=%ITEM_VERSION%&maxAppVersion=%ITEM_MAXAPPVERSION%&status=%ITEM_STATUS%&appID=%APP_ID%&appVersion=%APP_VERSION%&appOS=%APP_OS%&appABI=%APP_ABI%&locale=%APP_LOCALE%&currentAppVersion=%CURRENT_APP_VERSION%&updateType=%UPDATE_TYPE%

You need to restart Fennec after changing the update.url

Settings for Thunderbird:

To test update on the staging server, change the following setting in your about:config
extension.update.url to

https://addons.allizom.org/update/VersionCheck.php?reqVersion=%REQ_VERSION%&id=%ITEM_ID%&version=%ITEM_VERSION%&maxAppVersion=%ITEM_MAXAPPVERSION%&status=%ITEM_STATUS%&appID=%APP_ID%&appVersion=%APP_VERSION%&appOS=%APP_OS%&appABI=%APP_ABI%

Settings for Seamonkey:

To test update on the staging server, change the following setting in your about:config
extension.update.url to

https://addons.allizom.org/services/update?reqVersion=%REQ_VERSION%&id=%ITEM_ID%&version=%ITEM_VERSION%&maxAppVersion=%ITEM_MAXAPPVERSION%&status=%ITEM_STATUS%&appID=%APP_ID%&appVersion=%APP_VERSION%&appOS=%APP_OS%&appABI=%APP_ABI%&locale=%APP_LOCALE%&currentAppVersion=%CURRENT_APP_VERSION%

Usecase Scenarios:

testcase 1: Update add-on versions

  • Check that clicking on “Find updates”, lists the latest supported versions for your installed add-ons
  • Ensure that the update is successful

testcase 2: Update Firefox versions (with add-on updates)

  • Install an older version of Firefox
  • Install older versions of add-ons which are not supported on the version you are updating to.(pick one extension, theme,dictionary and a language pack
  • Upgrade Firefox to a newer version
  • Check that when Firefox starts, it prompts you to upgrade all your incompatible add-ons
  • Ensure that the update is successful

testcase 3:Update Firefox versions (with no add-on updates)

  • Install an older version of Firefox
  • Install the latest versions of add-ons(pick one extension, theme,dictionary and a language pack
  • Upgrade Firefox to a newer version
  • Check that when Firefox starts, there are no fake prompts for updates

testcase 4:Update prompt while opening a Firefox profile

  • Create a profile which has a few older versions of add-ons installed.
  • Quit Firefox
  • Open a different profile
  • Switch back to the original profile
  • Check that there are updates for incompatible add-on versions

testcase 5: Update prompt for beta add-ons

  • Select an add-on which has multiple beta versions(say b1-b4)
  • Install an older version of a beta add-on(b1
  • Tools-> Add-ons -->Click on “Find Updates”
  • Check that b4 versions is listed as an update
  • Update is successful

testcase 6: Check that updates are only offered when the newer versions of the add-on are public

  • Pick an add-on with an unreviewed latest version.
  • Install the previous version of that add-on
  • Tools-> Add-ons -->Click on “Find Updates” in the add-ons manager
  • Check that there are no updates

testcase 7: Check that there are no updates for unreviewed add-ons

  • Pick an add-on with multiple unreviewed versions
  • Install an older version
  • Tools-> Add-ons -->Click on “Find Updates”
  • No updates

testcase 8: Check that no updates are offered if the newer version is incompatible with user's browser version/platform

  • Pick an add-on with an incompatible latest version
  • Install an older version and restart
  • Tools-> Add-ons -->Click on “Find Updates”
  • No updates are offered

testcase 9: Check for platform compatibility

  • Pick an add-on which has version (b-n) compatible with the test platform and version b not supported on your platform/OS
  • Install version (b-n) and restart
  • Tools-> Add-ons -->Click on “Find Updates”
  • No updates are offered

testcase 10: admin disabled add-on versions

  • Install an older version of the test add-on
  • Admin-disable the latest version of that add-on
  • Check for updates
  • Ensure that no updates are offered

testcase 11: Downgrading add-on versions

  • Install the latest version of an add-on
  • Admin-disable that version
  • Check for updates
  • Previous version of the add-on is offered

testcase 12: Deleting beta channel

  • Install the beta version of an add-on
  • Ensure that there is a newer public version for that add-on
  • Delete all beta versions
  • Check for updates
  • Ensure that the latest public version of the add-on is offered

testcase 13: Check updates for lite reviewed add-on

  • Install an older version of a lite reviewed add-on
  • Check for updates
  • Ensure that the latest prelim reviewed add-on is offered in updates

testcase 14: Check updates for public add-on

  • Install an older version of a public add-on
  • Check for updates
  • Ensure that the latest public add-on is offered in updates

testcase 15: Only public versions are offered as updates

  • Install an older version of a public add-on
  • Grant lite review to the newer version of that add-on
  • Check for updates
  • Ensure that there are no updates.

testcase 16: Updates for a lite+nominated add-on

  • Install an older version of a lite+nominated add-on
  • Grant lite review to the newer version of that add-on
  • Check for updates
  • Ensure that there are no updates.