QA/Jetpack/AddonBuilderTestPlan/Testcases: Difference between revisions
< QA | Jetpack | AddonBuilderTestPlan
Jump to navigation
Jump to search
(8 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
LEGEND:<br> | LEGEND:<br> | ||
<font color="Black">Black</font> = Done<br> | <font color="Black">Black</font> = Done<br> | ||
<font color="Red">Red</font> = | <font color="Red">Red</font> = Waiting for Selenium 2 APIs<br> | ||
Following are the test cases for the Add-on builder. <br> | Following are the test cases for the Add-on builder. <br> | ||
Line 9: | Line 8: | ||
**User should be able to login to add-on builder through the Sign-in button on the home page. | **User should be able to login to add-on builder through the Sign-in button on the home page. | ||
**If the user is already logged in, the "My account" link on the top of the page should navigate the user to the dashboard. | **If the user is already logged in, the "My account" link on the top of the page should navigate the user to the dashboard. | ||
** | **User should be able to go to create add-on/create libraries page(opened in new tab) from the dropdown at the top of the page, after he is authenticated. | ||
**User should be redirected to the add-on editor page when clicked on the create add-on button, after he is authenticated. | **User should be redirected to the add-on editor page when clicked on the create add-on button, after he is authenticated. | ||
**User should be redirected to the library text editor page when they click on "Create Library" button. | **User should be redirected to the library text editor page when they click on "Create Library" button. | ||
Line 16: | Line 15: | ||
**For the add-ons created by other users, only "Test" and "View" buttons should be visible to the current user. | **For the add-ons created by other users, only "Test" and "View" buttons should be visible to the current user. | ||
**For the libraries created by other users, only "View" button should be visible to the current user. | **For the libraries created by other users, only "View" button should be visible to the current user. | ||
**" | **"Public" and "Private" button should be shown on the home page to the user for the add-ons/libraries that have been created by them.(user needs to be logged in) | ||
**<b>Clicking on the "Private" button for a personal public add-on should make that addon private and should not be visible on the homepage.</b> | |||
*Manual(in-litmus): | *Manual(in-litmus): | ||
** | **Latest Jetpack SDK should be downloaded when the user clicks on the "Download Add-ons builder SDK" | ||
** Check through the contents of the links on the page. | ** Check through the contents of the links on the page. | ||
Line 27: | Line 27: | ||
**Edit | **Edit | ||
*Automated: | *Automated: | ||
**When in Edit mode, the add-on editor should have Seven buttons: "Test", "Download", "Save", "Copy", "Error Console", "Revision", "Properties". | **When in Edit mode, the add-on editor should have Seven buttons: "Test", "Download", "Save", "Copy", "Error Console", "Revision", "Properties". | ||
**When in View mode, the add-on editor should have Five buttons: "Test", "Download", "Copy", "Revision", "Properties". | **When in View mode, the add-on editor should have Five buttons: "Test", "Download", "Copy", "Revision", "Properties". | ||
**When in Edit mode, the library editor should have "Save", "Copy", "Revision","Error Console", "Properties" buttons. | **When in Edit mode, the library editor should have "Save", "Copy", "Revision","Error Console", "Properties" buttons. | ||
**When in View mode, the library editor should have "Copy", "Revision", "Properties" buttons.<br> | **When in View mode, the library editor should have "Copy", "Revision", "Properties" buttons.<br> | ||
**Clicking on Copy button should create a fresh new package with the copied contents from the original package. | **Clicking on Copy button should create a fresh new package with the copied contents from the original package. | ||
**The "Revision" button should display all the revisions that have been recorded for that add-on. | **The "Revision" button should display all the revisions that have been recorded for that add-on. | ||
**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.) | **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.) | ||
Line 39: | Line 37: | ||
**A new revision should be generated when the user saves after making changes to the existing addon code. | **A new revision should be generated when the user saves after making changes to the existing addon code. | ||
**The code for the add-on library should be saved when the save button is pressed.<br> | **The code for the add-on library should be saved when the save button is pressed.<br> | ||
**<font color=" | **<font color="Red">The user should be able to add/remove Lib(modules) and Libraries and the list of modules/libraries should be updated.</font> | ||
**< | **<font color="Red">The revision should change when the user adds/removes libs(modules)/data(attachments) and libraries.</font> | ||
**< | **<font color="Red">The SDK version to be used for the current add-on can be changed from the plugins(libraries) section.</font> | ||
**<font color="Red">When the user hits download without saving the code, the downloaded XPI should still contain the final edits of the user(i.e.it should check for a edit after the last save, and if true, should autosave it in the XPI)</font> | |||
**<font color="Red">You should be able to edit the name of the Lib(module) by clicking on the pencil like button besides the name.</font> | |||
**< | **<font color="Red">The revision should also be updated when you edit the name of the lib(module)</font> | ||
**< | **<font color="Red">You should be able to edit the name of the Data(attachments) by clicking on the pencil like button besides the name.</font> | ||
**< | **<font color="Red">The revision should also be updated when you edit the name of the attachment.</font> | ||
** You should be able to add a file successfully. | **<font color="Red">You should be able to add a file successfully.</font> | ||
** You should be able to upload an attachment using an external URL. | **<font color="Red">You should be able to upload an attachment using an external URL.</font> | ||
** If a library is added to an addon and if it is updated in another tab, you should be able to see a refresh icon on mouse over the library is the addon editor. | **<font color="Red">If a library is added to an addon and if it is updated in another tab, you should be able to see a refresh icon on mouse over the library is the addon editor.</font> | ||
**<font color="Red">Check that Edit and save of the version and comment are working in the save button</font> | |||
*Manual(in-litmus): | *Manual(in-litmus): | ||
**The user should be able to select the entire text present in the text editor. | |||
**The user should be able to perform copy/paste functionality in the text editor. | |||
**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 | **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 pressed button again will uninstall the addon and the button will be released. | ||
**Clicking on the "Download" button should generate an XPI file. | **Clicking on the "Download" button should generate an XPI file. | ||
** | **The user should be able to upload attachments ('Data' button on the page). | ||
**The user should be able to add attachments from an URI (2 MB max filesize). | |||
**Adding attachments should update the revision number of the current addon. | **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 | **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) | ||
**If the user is in the "View" mode, the text attachments should *NOT* be editable. | **If the user is in the "View" mode, the text attachments should *NOT* be editable. | ||
==My account page== | ==My account page== | ||
Line 64: | Line 66: | ||
**The add-ons/libraries on this page should be tagged "initial"(default) for newly saved packages. | **The add-ons/libraries on this page should be tagged "initial"(default) for newly saved packages. | ||
**It should be tagged "copy" for copied new packages. | **It should be tagged "copy" for copied new packages. | ||
**The page should also show the count of the number of add-ons and libraries that you have created.<br> | |||
**The page should also show the count of the number of add-ons and libraries that you have created. | |||
**When clicking on the "Public Add-ons"/"Public Libraries" link, add-ons/libraries should be shown in a pagination manner if there are more than 10 add-ons for the user. | **When clicking on the "Public Add-ons"/"Public Libraries" link, add-ons/libraries should be shown in a pagination manner if there are more than 10 add-ons for the user. | ||
**When clicking on the "Private Add-ons"/"Private Libraries" link, add-ons/libraries should be shown in a pagination manner if there are more than 10 add-ons for the user. | **When clicking on the "Private Add-ons"/"Private Libraries" link, add-ons/libraries should be shown in a pagination manner if there are more than 10 add-ons for the user. | ||
Line 71: | Line 72: | ||
**On the dashboard, each library must have "Edit", "Delete", "Public" and "Private" buttons. | **On the dashboard, each library must have "Edit", "Delete", "Public" and "Private" buttons. | ||
**Clicking on Private button disables the add-on/library and sends it to Private add-ons/Private libraries section. | **Clicking on Private button disables the add-on/library and sends it to Private add-ons/Private libraries section. | ||
** | **You can reactivate the private add-on by clicking the "Public" button from the Private add-ons page. | ||
** | **You can reactivate the private libraries by clicking the "Public" button from the private libraries page. | ||
** | **Clicking on the "Private add-ons" link should show you the currently disabled addons. | ||
** | **Clicking on the "Private libraries" link should show you the currently disabled libraries. | ||
** You should be able to go to editor page when you click edit button. | ** You should be able to go to editor page when you click edit button. | ||
** Add on should be permanently deleted when you hit the Delete button | ** Add on should be permanently deleted when you hit the Delete button | ||
*Manual (in-litmus) | *Manual (in-litmus) | ||
** | **All the saved and public (default) Addons and libraries should be shown on this page. | ||
**It should be tagged "uploaded" for packages that have been uploaded. | |||
**You can upload an xpi file from your computer by clicking the "upload package" link on this page. | |||
** Add on should be installed when you hit the Test button. | |||
==Library editor page== | ==Library editor page== |
Latest revision as of 20:38, 28 April 2011
LEGEND:
Black = Done
Red = Waiting for Selenium 2 APIs
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.
- If the user is already logged in, the "My account" link on the top of the page should navigate the user to the dashboard.
- User should be able to go to create add-on/create libraries page(opened in new tab) from the dropdown at the top of the page, after he is authenticated.
- User should be redirected to the add-on editor page when clicked on the create add-on button, after he is authenticated.
- User should be redirected to the library text editor page when they click on "Create Library" button.
- 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 "View" buttons(enabled).
- For the add-ons created by other users, only "Test" and "View" buttons should be visible to the current user.
- For the libraries created by other users, only "View" button should be visible to the current user.
- "Public" and "Private" button should be shown on the home page to the user for the add-ons/libraries that have been created by them.(user needs to be logged in)
- Clicking on the "Private" button for a personal public add-on should make that addon private and should not be visible on the homepage.
- Manual(in-litmus):
- Latest Jetpack SDK should be downloaded when the user clicks on the "Download Add-ons builder SDK"
- Check through the contents of the links on the page.
Add-on 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 Seven buttons: "Test", "Download", "Save", "Copy", "Error Console", "Revision", "Properties".
- When in View mode, the add-on editor should have Five buttons: "Test", "Download", "Copy", "Revision", "Properties".
- When in Edit mode, the library editor should have "Save", "Copy", "Revision","Error Console", "Properties" buttons.
- When in View mode, the library editor should have "Copy", "Revision", "Properties" buttons.
- Clicking on Copy button should create a fresh new package with the copied contents from the original package.
- The "Revision" button should display all the revisions that have been recorded for that add-on.
- 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)
- A new revision should be generated when the user saves after making changes to the existing addon code.
- The code for the add-on library should be saved when the save button is pressed.
- The user should be able to add/remove Lib(modules) and Libraries and the list of modules/libraries should be updated.
- The revision should change when the user adds/removes libs(modules)/data(attachments) and libraries.
- The SDK version to be used for the current add-on can be changed from the plugins(libraries) section.
- When the user hits download without saving the code, the downloaded XPI should still contain the final edits of the user(i.e.it should check for a edit after the last save, and if true, should autosave it in the XPI)
- You should be able to edit the name of the Lib(module) by clicking on the pencil like button besides the name.
- The revision should also be updated when you edit the name of the lib(module)
- You should be able to edit the name of the Data(attachments) by clicking on the pencil like button besides the name.
- The revision should also be updated when you edit the name of the attachment.
- You should be able to add a file successfully.
- You should be able to upload an attachment using an external URL.
- If a library is added to an addon and if it is updated in another tab, you should be able to see a refresh icon on mouse over the library is the addon editor.
- Check that Edit and save of the version and comment are working in the save button
- Manual(in-litmus):
- The user should be able to select the entire text present in the text editor.
- The user should be able to perform copy/paste functionality in the text editor.
- 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 upload attachments ('Data' button on the page).
- The user should be able to add attachments from an URI (2 MB max filesize).
- 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)
- If the user is in the "View" mode, the text attachments should *NOT* be editable.
My account page
- Automated:
- The add-ons/libraries on this page should be tagged "initial"(default) for newly saved packages.
- It should be tagged "copy" for copied new packages.
- The page should also show the count of the number of add-ons and libraries that you have created.
- When clicking on the "Public Add-ons"/"Public Libraries" link, add-ons/libraries should be shown in a pagination manner if there are more than 10 add-ons for the user.
- When clicking on the "Private Add-ons"/"Private Libraries" link, add-ons/libraries should be shown in a pagination manner if there are more than 10 add-ons for the user.
- On the dashboard, each add-on must have "Test", "Edit", "Delete", "Public" and "Private" buttons.
- On the dashboard, each library must have "Edit", "Delete", "Public" and "Private" buttons.
- Clicking on Private button disables the add-on/library and sends it to Private add-ons/Private libraries section.
- You can reactivate the private add-on by clicking the "Public" button from the Private add-ons page.
- You can reactivate the private libraries by clicking the "Public" button from the private libraries page.
- Clicking on the "Private add-ons" link should show you the currently disabled addons.
- Clicking on the "Private libraries" link should show you the currently disabled libraries.
- You should be able to go to editor page when you click edit button.
- Add on should be permanently deleted when you hit the Delete button
- Manual (in-litmus)
- All the saved and public (default) Addons and libraries should be shown on this page.
- It should be tagged "uploaded" for packages that have been uploaded.
- You can upload an xpi file from your computer by clicking the "upload package" link on this page.
- Add on should be installed when you hit the Test button.
Library editor page
- Automated:
- The library editor should have "Save", Copy", Revision" and "Properties" button when in "Edit" mode.
- The library editor should have "Copy", Revision" and "Properties" button when in "View" mode.
- The code for the library should be edited and should be saved when the save button is pressed.
- Lib(Modules) and plugins(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.
- The user should be able to edit the name of the lib(module) by clicking the pencil like edit button besides the name.
- The user should be able to delete lib(modules) and plugins(libraries).
- Manual:
- Attachments should be allowed to be added to the current library.
- The test cases for attachments are the same as in the add-on editor page(above).