Calendar:Proposed Test Case Grouping
From the QA Chat on July 20th I have proposed a test plan organization for the calendar test plans. These groupings will be the high level focus areas of the test plan, and will also serve as testcase groupings in Litmus.
I have tried to follow the model that Thunderbird and Firefox use for this. I've also used the Toronto documents and the Bugzilla Components list to show how these groupings map to those other organization methods. My primary thought was that each test group should be a major feature of the product, an area that makes sense to focus a fair amount of testing.
|Subgroup||Feature||Bugzilla Comp||Goal for basic testcases of this feature|
|Local Calendar||Core||Provider: Local Storage||To test basic calendar creation/modify/delete|
|WebDav Calendar||Sharing/Publishing||Provider: ICS\WebDav||To test basic calendar creation/modify/delete and calendar server settings|
|CalDav Calendar||Sharing/Publishing||Provider: Caldav||To test basic calendar creation/modify/delete and calendar server settings|
|Display of Events||Core/Item Creation||Calendar Views||Test basic creation/modify/delete of events. Test that all event fields can be added to an event. Test most common recurrence types. Make certain that features of Event dialog are working (such as go to URL). Ensure events are displayed properly throughout|
|Display of Tasks||Core/Item Creation||Tasks||Test basic creation/modify/delete of tasks. Test that all task fields can be added. Test most common recurrence types.
Make certain that features of task creation dialog are working. Ensure tasks are displayed properly.
|Import/Export||Interoperability||Import and Export||Test import and export of sunbird generated ICS data. Test import from common data sources. Test import\export for known data loss regressions. Test Backup solution.|
|Navigation||Core||Calendar Views||Test navigation via minimonth, month, multiweek, week, day views. Also test go to date and go to today features|
|Month/Multiweek View||Core||Calendar Views||Test basic operations, copy/cut/paste, undo/redo, mouseover, click, double click, right click, drag/drop|
|Day/Week View||Core||Calendar Views||Test basic operations, copy/cut/paste, undo/redo, mouseover, click, double click, right click, drag/drop, drag to create|
|Alarms||Alarms||Alarms||Test basic alarms: email, sms, visual/audio. Test alarm dialog features|
|Preferences||Core||General||Preference window displays. basic features work as expected|
|Extensions||Customizability||Internal Components||Ensure simple extensions can be added, invalid extensions are not allowed|
|Themes||Customizability||Internal Components||Ensure themes can be loaded, ensure invalid themes are not allowed|
|Printing||Core||Printing||Print Month/Week/Day views properly. Ensure Print Preview works.|
|Look and Feel||User Experience||Sunbird Only||Menus,keyboard shortcuts,workflow|
|Search||Search||Internal Components||Categories(Tags)/plain text/date range/item type|
|Publishing||Publish||Provider: *||Specific publishing tests, publish readonly, publish calendar with private data etc|
|Subscribe||Subscribe||Provider: *||Subscribe to remote calendar, subscribe readonly, modify remote calendar|
|Sharing||Sharing||Provider: *||Share calendar with another user, ensure private and opaque data remains concealed|
|Meeting Requests||Interoperability||Internal Components||Send meeting request/receive meeting request|
|Freebusy||Freebusy||Internal Components||Send freebusy information, receive freebusy information, ensure freebusy UI options work.|
|Device Sync||Sync||Internal Components||Ensure simple connection and sync to a supported device|
|Web Service Integration||Web Service||Internal Components||Test most common web service integration, for example, weather.|
|System Integration||* integration||Internal Components||Test address book integration, email integration, autocomplete, etc|
|Security||Core||Security||Would probably not be a public test group. Would contain security related test cases.|
|Install\Uninstall||Core||Sunbird Only||Ensure that default installation and uninstallation work|
|Software Update||Core||Sunbird Only||Ensure the automatic software update features work (including talkback etc)|
|Help||Core||calendarHelp Project||Ensure that users can easily access help and that it is usable.|