QA/Jetpack/AddonBuilderTestPlan/Testcases

From MozillaWiki
< QA‎ | Jetpack‎ | AddonBuilderTestPlan
Revision as of 20:39, 30 December 2010 by Ashah (talk | contribs)
Jump to navigation Jump to search

LEGEND:
Black = Done
Red = Pending
Blue = Blocker

Following are the test cases for the Add-on builder.

  • Home Page:
    • Automated:
      • User should be able to login to add-on builder through the Sign-in button on the home page. The Dashboard should be displayed.
      • User should be redirected to the text editor page when clicked on the create add-on button, after he is authenticated.
      • All links on the home page should be clickable and redirected to the proper page.
      • When the user is not logged in,the home page should only show the "Test" and "Source" buttons(enabled).(change)
      • "Disable" button should be shown on the home page to the user for the add-ons that have been created by them.(user needs to be logged in)(change)
      • User should be redirected to the library text editor page when they click on "Create Library" button (done)
    • Manual(in-litmus):
      • Latest Jetpack SDK should be downloaded when the user clicks on the "Download Add-ons builder SDK"
  • Editor Page:
    • This page has two phases for Add-ons and Libraries:
      • View
      • Edit
    • Automated:
      • When in Edit mode, the add-on editor should have Six buttons: "Test", "Download", "Save", "Copy", "Revision", "Properties".(change)
      • When in View mode, the add-on editor should have Five buttons: "Test", "Download", "Copy", "Revision", "Properties".(change)
      • When in Edit mode, the library editor should have "Save", "Copy", "Revision", "Properties" buttons.(change)
      • When in View mode, the library editor should have "Copy", "Revision", "Properties" buttons.(change)
      • Clicking on Copy button should create a fresh new package with the copied contents from the original package.(done)
      • The user should be able to add/remove modules and libraries
      • The revision should change when the user adds/removes modules(done).
      • The total number of modules should be displayed in the modules section.(done)
      • The "Revision" button should display all the revisions that have been recorded for that add-on.(done)
      • The information of the current add-on can be edited by clicking the "Properties" button on the editor. (Note:You should be in the edit mode for this to work.)
      • You should *NOT* be able to change the information of the add-on in view source mode.(The Properties button should just display information and no editable fields)(done)
      • A new revision should be generated when the user saves after making changes to the existing addon code.(done)
      • The code for the add-on library should be saved when the save button is pressed.(done)
      • The SDK version to be used for the current add-on can be changed from the libraries section.
      • The revision should change when the user adds/removes libraries
      • The total number of libraries added should be displayed in the libraries section
    • Manual(in-litmus):
      • The "Test" button should install the add-on into the browser without a restart. It should change state to "pressed" after the addon is installed
      • Clicking on the pressed button again will uninstall the addon and the button will be released.
      • Clicking on the "Download" button should generate an XPI file.
      • The user should be able to add attachments.
      • Adding attachments should update the revision number of the current addon.
      • If the user is in the "Edit" mode, the attachments should be editable in the text editor. The editable attachments are .js, .css and .txt) (new)
      • If the user is in the "View" mode, the text attachments should *NOT* be editable.(new)
  • My account page:
    • Automated:
      • The add-ons on this page should be tagged "initial"(default) for a newly saved packages.(done)
      • It should be tagged "copy" for copied new packages.(done)
      • The page should also show the count of the number of add-ons that you have created.(done)
      • When clicking on the "Your Add-ons"/"Your Libraries" link, add-ons/libraries should be shown in a pagination manner if there are more than 10 add-ons for the user.(done)
      • In "Your Latest Add-ons" section, each add-on must have "Test", "Source", and "Disable" buttons.(done)
      • In "Your Latest Libraries" section, each library should have "Source"and "Disable" buttons.(done)
      • This page should show you the total count of the number of add-ons and the number of libraries that you have created.(done)
      • Clicking on disable button disables the addon
      • You can reactivate the disabled add-on by clicking the "Activate" button from the Disabled add-ons page.(new)
      • You can reactivate the disabled libraries by clicking the "Activate" button from the Disabled libraries page.(new)
      • You can upload an xpi file from your computer by clicking the "upload package" link on this page.(new)
    • Manual (in-litmus)
      • The saved and enabled (default) Addons and libraries should be shown on this page.
  • Library editor page:
    • Automated:
      • The library editor should have "Save", Copy", Revision" and "Properties" button when in "Edit" mode.(new)
      • The library editor should have "Copy", Revision" and "Properties" button when in "View" mode.(new)
      • The library should be saved through the "Save" button. (done in home page)
      • The code for the library should be edited and should be saved when the save button is pressed.(done)
      • Modules and libraries should be allowed to be added to the current library.
      • Library information should be editable when the "Properties" button is clicked.(Note: This can be done only when the user is in edit mode)
      • The revision can be checked through the revision button. (done,combined with above test case)
      • The libraries created by the user should be reflected in the libraries section when the user is writing the code for an add-on.
    • Manual:
      • Attachments should be allowed to be added to the current library.
      • Attachments should be editable(in the same manner as for add-ons).(new)