You are currently viewing a snapshot of www.mozilla.org taken on April 21, 2008. Most of this content is highly out of date (some pages haven't been updated since the project began in 1998) and exists for historical purposes only. If there are any pages on this archive site that you think should be added back to www.mozilla.org, please file a bug.



You are here: Mozilla MailNews Functional / UI Tests > Offline: Basic Functionality within News

Feature Test Spec: Mail and News Component

Mail and News Component: Offline: Basic Functionality within News

Written by Gary Chan

References:

UI and/or Functional Specifications: http://www.mozilla.org/mailnews/specs/offline/
Other: Laurel Carlson's original Offline News Functional test plan: http://www.mozilla.org/quality/mailnews/tests/sea-mn-offline-news.html

Disclaimer: This testplan is based on Laurel Carlson's original testplan originally written for Seamonkey. The wording and test plans will be very similar and changes to the test plan are made where appropriate.

The testcases outlined in this document are intended for coverage of basic news functionality when involved with Offline use.

Approximate number of test cases: 350 per platform or server configuration

Most of the functionality cases here should be tested against various version/type news servers. Given the time constraints in our overall schedule, it is not anticipated that each and every testcase could be run against each and every server variety -- it is just not possible to do so with our given testing resources. It is more likely that a basic sampling of cases would be run against a sample of server types.

Overall testing instruction: These are the types of newsgroups/servers to run tests against:

  • non-secure
    • standard port
    • irregular port
  • secure
    • standard port
    • irregular port
  • password protected group/server
  • various version servers

Overall testing instruction: Each testcase should be done with a verification of how the action behaves when in offline mode and again how it is merged/played back when going back to the online state.

  1. General UI tests: covered under separate test spec Offline: General UI.
  2. Offline Preferences overall look: covered within the UI test spec Offline: General UI.
  3. Offline preferences particular to news usage: Exercise each option to make sure it's working. Specific cases may also appear in other sections of this testspec.
    Note: some of these prefs are also included in the mail testspec, but should be briefly checked again when working with news-oriented offline situations
    1. Prefs|Offline&DiskSpace|When going online/unsent message prompt: General working order cases here, more specific unsent cases in Unsent Message section.
      1. Ask me: verify you are asked about sending unsent messages when going online when you've got unsent news messages
        • If answered Yes --> verify unsent messages are indeed sent, unsent message folder cleared
        • If answered No --> verify unsent messages are not sent, messages stay in unsent message folder
      2. Ask me: verify you are not asked about sending unsent messages when going online when there are no unsent messages
        • you've not created any unsent messages
        • you had some unsent messages, but deleted them from the unsent folder (without attempting to send)
      3. Automatically Send: verify unsent news messages are sent when going online without user interference (unless some error occurs), unsent folder cleared.
      4. Don't send: verify unsent messages are not sent, unsent message folder not cleared.
    2. Prefs|Offline|When going offline/download message prompt: General working order cases here.
      1. Ask me: verify you are asked about downloading messages before going offline
        • If answered Yes (Download)--> verify messages are indeed downloaded
        • If answered No (Don't Download) --> verify messages are not downloaded
      2. Ask me: verify you are not asked about downloading messages when going offline when there are no messages to download
        • there are no messages in your inbox/folders to be downloaded
        • you had some messages in your inbox/folder, but deleted them from the folder before you go offline.
      3. Automatically download: verify messages are downloaded when going offline without user interference (unless some error occurs), all messages are downloaded.
      4. Don't download: verify messages are not downloaded.
    3. To save download time and disk space:
      1. Mail&News Account Settings|News|Offline&Disk Space|Do not download messages locally larger than X kb (bugzilla bug 101985)
        1. Enabled: select, synchronize and go offline for a newsgroup which was previously accessed in online state and has a mix of various size messages. Verify only items less than X kb are downloaded and available for offline reading.
        2. Disabled: select, synchronize and go offline for a newsgroup which was previously accessed in online state and has a mix of various size messages. Verify all different sized items are available for offline reading.
      2. Mail&News Account Settings|News|Offline&Disk Space|Download only Unread Messages:
        1. Enabled: select, synchronize and go offline for a newsgroup which was previously accessed in online state and has a mix of read and unread messages. Verify only unread items are downloaded and available for offline reading.
        2. Disabled: select, synchronize and go offline for a newsgroup which was previously accessed in online state and has a mix of read and unread messages. Verify both read and unread items are available for offline reading.
        3. Works in conjunction with date restrictions: Verify the above two cases work properly in conjunction with varied date range restrictions enabled in the "download by date" option.
          • use a date restriction from the dropdown list, i.e. "from 2 weeks ago"
          • use a date restriction input into edit box, i.e. "since 30 days ago"
        4. Works with "download by date" option disabled.
      3. Mail&News Account Settings|News|Offline&Disk Space|Download only messages since X days ago
        1. Editable date range ("since N days ago") option enabled: select, synchronize and go offline for a newsgroup which was previously accessed in online state and has a mix of read and unread messages. Verify only messages falling within the selected range are available for offline reading. Sample a variety of ranges:
          • 0
          • single digit number of days
          • double digit
          • triple digit
        2. Download by Date fully disabled: verify all available newsgroup messages are available for offline reading.
        Matrix for testing 'Save download time and disk space'
        1 2 3 4 5 6 7 8
        Do not download mesg bodies larger than x kb x x x x
        Download only unread mesg x x x x
        Download only mesg w/in past x day x x x x
    4. When it is time to clean up messages:
      1. Mail&News Account Settings|News|Offline&Disk Space|
        1. Keep messages which have arrived within past X days
          • Enabled: select, synchronize and go offline for a newsgroup which was previously accessed in online state and has a mix of various messages before, exactly, and after X days. Verify only items that have arrived within past X days are present.
        2. Keep all messages
          • Enabled: select, synchronize and go offline for a newsgroup which was previously accessed in online state. Verify all items are present and there are no day restrictions or limit to the quantity (X number) of messages.
        3. Keep the newest X messages
          • Enabled: select, synchronize and go offline for a newsgroup which was previously accessed in online state and had more than X messages. Verify only the newest X items are present.
      2. Mail&News Account Settings|News|Offline&Disk Space|Keep only unread messages
        1. Enabled: select, synchronize and go offline for a newsgroup which was previously accessed in online state and has a mix of read and unread messages. This will delete all read messages when you go back online? Verify only unread items are available for reading when you go back offline.
        2. Disabled: select, synchronize and go offline for a newsgroup which was previously accessed in online state and has a mix of various size messages. Verify all read/unread items are available for offline reading.
      3. Mail&News Account Settings|News|Offline&Disk Space|Remove message bodies older than X days
        1. Enabled: select, synchronize and go offline for a newsgroup which was previously accessed in online state and has a mix of read and unread messages older than X days. Go online. Exit Messenger. Restart Messenger, verify messages are deleted that are older than X days.
        2. Disabled: select, synchronize and go offline for a newsgroup which was previously accessed in online state and has a mix of read and unread messages older than X days. Go online. Exit Messenger. Restart Messenger, verify messages aren't deleted that are older than X days.
        Matrix for testing 'When it is time to clean up messages'
        1 2 3 4 5 6 7 8 9 10 11 12
        keep mesg arrived with x days (radio) x x x x
        keep all mesg (radio) x x x x
        keep newest x mesgs (radio) x x x x
        keep only unread mesgs
        (deletes read mesgs when go offline/online)?
        x x x x x x
        remove mesg bodies older than x days (gone? See bug Matrix for testing 'Save download time and disk space' ) x x x x x x
  4. Process/access going offline for news use: basic tests for each procedural component to make sure each is working
    Note: these cases are also included in the mail testspec, but should be checked again when working with news-oriented offline situations
    1. Select items: select at least one newsgroup
      1. access from main menu item/main mail window
      2. access through preferences
      3. access through properties
    2. Synchronize without going offline -- verify online state is maintained after synch
    3. Synchronize and go offline -- verify state is offline after synch
    4. Synchronize and do not send unsent messages (disabled) -- verify unsent messages are not sent after synch
    5. Synchronize and do send unsent messages (enabled) -- verify unsent messages are sent
    6. Cancel synchronize process at various places in process -- verify no adverse effects. (Ref: #324950 for 4.5)
      [Currently Synchronize Status window not implemented as of 5/1/2001]
      1. Cancel and do some other process (not offline related)
      2. Cancel and do same offline process as was canceled
      3. Cancel and do some other offline process
    7. During a synchronization set to not go offline after completed, click the offline indicator/icon (while synch still in progress -- ref #323846) [Currently Synchronize Status window not implemented as of 5/1/2001]
    8. Verify progress dialogs appear and for each: (Not implemented yet, appears in bottom portion of 3rd pane in Messenger)
      1. Identifies what process is ongoing
      2. Identifies what folder/object the process is being applied
      3. identifies what point in the process you're at -- thermometer
      4. has a cancel button
  5. Synchronize
    Overall testing instruction: throughout the synchronize test cases, coverage should be over groups which have never previously had headers downloaded and, groups accessed before/have had headers downloaded in conjunction with the various "chunk download preference" (a news preference which warns user when downloading over a specified number of headers. Found at Server Settings pref for a newsgroup: "ask me before I download x messages").
    1. synchronize -- initial header download/group not previously accessed:
      1. empty newsgroup
      2. newsgroup with just a few messages
      3. newsgroup with approx. 50 - 100 messages
      4. newsgroup with 1000+ messages
      5. newsgroups at different hierarchy levels
      6. full subhierarchy(ies) of groups
      7. password group
    2. synchronize -- initial header download/group not previously accessed, CHUNK DOWNLOAD PREF ON, GET ALL HEADERS: (Note: warning dialog will come up, but in that warning dialog choose to download all (as opposed to some) headers.
      1. empty newsgroup --> no warning dialog should appear
      2. newsgroup with just a few messages (not over N) --> no warning dialog
      3. newsgroup with approx. 50 - 100 messages
      4. newsgroup with 1000+ messages
      5. category group(s) at various levels: Note: it is my understanding that the client will not distinguish categorized newsgroups in Mojo (subject to change). However, when testing we should try to access groups that are set up as categorized groups on the news server (Netscape Collabra servers version 3.0 through 4.0 -- not sure about later server versions.)
      6. password group
    3. synchronize-- initial header download/group not previously accessed, CHUNK DOWNLOAD PREF ON, GET PARTIAL HEADERS, LEAVE REMAINING HEADERS UNREAD: (Note: leaving remaining headers unread should show unread in total count and upon doing a Get Next N messages should retrieve those older messages in unread state.)
      1. newsgroup with no headers to get --> no warning dialog should appear on synchronize for that group
      2. newsgroup with just a few messages (not over N) --> no warning should appear
      3. newsgroup with approx. up to 100 new messages over specified N warning limit --> warning dialog should appear
      4. newsgroup with 1000+ new messages --> warning dialog should appear
      5. category group(s) at various levels with over N messages: Note: it is my understanding that the client will not distinguish categorized newsgroups in Mojo (subject to change). However, when testing we should try to access groups that are set up as categorized groups on the news server (Netscape Collabra servers version 3.0 through 4.0 -- not sure about later server versions.)
      6. password group with over N messages
    4. synchronize -- initial header download/group not previously accessed, GET ALL HEADERS, CHUNK DOWNLOAD PREF ON, MARK REMAINING HEADERS READ: (Note: marking remaining headers read should show no unread items in total count and upon doing a Get Next N messages, should retrieve those older messages in a read state.)
      1. empty newsgroup
      2. newsgroup with just a few messages (not over N)
      3. newsgroup with approx. 50 - 100 messages new messages over specified N warning limit
      4. newsgroup with 1000+ messages
      5. category group(s) at various levels: Note: it is my understanding that the client will not distinguish categorized newsgroups in Seamonkey (subject to change). However, when testing we should try to access groups that are set up as categorized groups on the news server (Netscape Collabra servers version 3.0 through 4.0 -- not sure about later server versions.)
      6. password group
    5. synchronize -- Get more headers/group previously accessed CHUNK DOWNLOAD PREF OFF
      1. no new messages to get
      2. 50-100 messages to get
      3. 1000+ messages to get
      4. category group(s): Note: it is my understanding that the client will not distinguish categorized newsgroups in Seamonkey (subject to change). However, when testing we should try to access groups that are set up as categorized groups on the news server (Netscape Collabra servers version 3.0 through 4.0 -- not sure about later server versions.)
      5. password group
    6. synchronize -- Get more New Message headers/group previously accessed CHUNK DOWNLOAD ON
      1. no new messages to get
      2. 50-100 messages to get
      3. 1000+ messages to get
      4. category group(s): Note: it is my understanding that the client will not distinguish categorized newsgroups in Seamonkey (subject to change). However, when testing we should try to access groups that are set up as categorized groups on the news server (Netscape Collabra servers version 3.0 through 4.0 -- not sure about later server versions.)
      5. password group
    7. synchronize -- Get N (older messages) headers/group previously accessed CHUNK DOWNLOAD ON
      1. 50-100 messages to get
      2. 1000+ messages to get
      3. category group(s): Note: it is my understanding that the client will not distinguish categorized newsgroups in Seamonkey (subject to change). However, when testing we should try to access groups that are set up as categorized groups on the news server (Netscape Collabra servers version 3.0 through 4.0 -- not sure about later server versions.)
      4. password group
    8. synchronize messages -- contents to check which can be synched in news
      1. attachments
      2. long message
      3. cross posted
      4. signed
    9. Synchronize using Download|News Messages prefs set, then change the prefs and repeat synchronize within session. Verify the pref range of messages downloaded is correct according to the later/reset values in the prefs. Try this several times with different reset values.
      1. reset Unread only to different value
      2. reset Download by Date, from weeks/months ago setting to different value
      3. reset Download by Date, since days ago setting to different value
      4. reset a combination of the above
  6. Get Selected Messages
    1. from messenger window
    2. from standalone message window
    3. when single selection
    4. when multiple messages selected
    5. synch various selected message types:
      1. short message
      2. long message
      3. with attachments (note attachments not available offline, bug 108107):
        • vcards
        • forwarded messages
        • graphics attachments: gif, jpeg, etc.
        • text file attachments
        • attached web pages
      4. html with inserted images
      5. <other type of messages>
  7. Get Flagged Messages
    1. from messenger window
    2. from standalone message window
    3. when single selection
    4. when multiple messages flagged
    5. synch various flagged message types:
      1. short message
      2. long message
      3. with attachments (note attachments not available offline, bug 108107):
        • vcards
        • forwarded messages
        • graphics attachments: gif, jpeg, etc.
        • text file attachments
        • attached web pages
      4. html with inserted images
      5. <other type of messages>
  8. Newsgroups -- basic operations positive/success situations in offline state:
    Overall testing instruction: Test each operation in offline state then verify it's handled appropriately and check folder pane display when going online again.
    1. Subscribe
      1. subscribe dialog: subscribe should work for items not requiring server contact if server was previously accessed and full newsgroup list was retrieved when online
        • subscribe to a group
        • search for newsgroup (not implemented?)
        • subscribe to a group from Search (not implemented?)
    2. Delete/Unsubscribe
      1. subscribe dialog
      2. drag to trash in folder pane
      3. delete from folder pane
      4. From Menu: Edit|Unsubscribe
    3. Reorder in folder pane
    4. Open
      1. by url
      2. by usual open group method
      3. by navigation to next group
  9. Newsgroups -- basic operations error/negative situations in offline state:
    Overall testing instruction: Test each operation in offline state then verify it's handled appropriately and check folder pane display when going online again.
    1. Subscribe
      1. subscribe dialog: items causing server to be contacted should fail, erroring gracefully and suggesting user try procedure again after going online. (i.e. just setup your news account, you go offline, and then try to bring up the subscribe window) (See bug 92852 )
        • refresh newsgroup listing
      2. url to newsgroup for which you haven't added server
      3. url to newsgroup for which server, although added previously, has not yet retrieved full newsgroup list when online
    2. Open
      1. open group which is password protected (no previous authentication within session)
        • via regular open
        • via navigation
        • via url
  10. News Messages -- basic operations positive/success situations in offline state:
    Overall testing instruction: wherever applicable, message commands should be tested in main Messenger window and in any separate message windows.
    1. Compose News messages -- some cases may be itemized here, but comprehensive coverage under separate test spec Offline: Composition.
    2. Get Messages -- using Get Message, not Synchronize (synchronize is the process to download messages for offline use)
      1. using Get New Messages should remind user they're in offline state and ask if they want to go online to get messages
        • answer Yes --> Go online and new message retrieval begins
          • try with "Do not download messages locally that are larger than X kb" set in Offline&Disk Space
          • try with "Download only unread messages" set in Offline&Disk Space
          • try with "Download only messages since X days ago" set in Offline&Disk Space
        • answer No --> should remain offline and client in usable state, no adverse effects
    3. Read/Navigate messages (only if downloaded)
      1. spacebar reading/navigation
      2. next message
      3. next unread within folder
        • next unread message
        • next unread thread
      4. next unread which will take across folder(s)/group(s)
        • next unread message
        • next unread thread
        • next unread folder/group
      5. verify when landing on message(s) which have been downloaded for offline, the entire contents are viewable
      6. verify when landing on message(s) which have not been downloaded for offline, there is an error message explaining why message is not readable
      7. verify when going online again, the "not downloaded for offline use" message is cleared for message(s) not downloaded for offline use
    4. Follow links in news messages:
      1. mailto (works)
      2. http url (won't)
      3. ftp url (won't)
      4. news url (won't)
    5. Mark messages
      1. single message read/unread
        • top level
        • sublevel
      2. multiple selection read/unread
      3. thread as read
      4. mark all read
      5. mark newsgroup read (context menu command/different from mark all read)
      6. mark by date
      7. ignore a thread
        • top level
        • sublevel
      8. watch a thread
        • top level
        • sublevel
      9. undo for above actions
    6. Sort messages: verify sort methods in offline state and preserved when going back online
      1. verify sorts work via menu, column heading click
        • sort by thread
        • sort by subject
        • sort by sender
        • sort by order received (different then date?)
        • sort by date
        • sort by status
          • check for folders which had no status change when offline
          • check for folders which you made status changes to in offline state: reply, forward, read, etc.
        • sort by size
        • sort by flag
        • sort by priority
        • sort by Unread
        • View->Sortby->
          • ascending
          • descending
    7. Change message views: verify view method in offline state and preserved when going back online
      1. View All
        • ignore toggle on
        • ignore toggle off
      2. View Unread
      3. View Threads with Unread
      4. View Watched Threads with Unread
      5. Ignore Threads
      6. Place messages in thread mode
        • expand all threads
        • collapse all threads
    8. Save/File/Copy messages (only if downloaded)
      1. Save as
        • text
        • html
        • Ignore Threads
        • template
      2. Move/File message
        • drag and drop
        • menu
        • file to IMAP folder
        • file to local mail folder
        • with attachments
      3. Copy message
        • drag and drop
        • menu
        • file to IMAP folder
        • file to local mail folder
        • with attachments
    9. Delete/Cancel messages -- should not be allowed. Verify this is so.
    10. Filter messages
      1. offline state: create a user mail filter, sample each criteria/action combination (also see Filters: Basic Functionality - News)
      2. offline state: edit a user mail filter, sample each editable area
      3. synchronize: verify filters honored for user created filters, sample each criteria/action combination
      4. synchronize: verify filters honored for spam filters, sample each criteria/action combination (also see Filters: Spam Filtering)
      5. synchronize: verify filters honored for news host filter
      6. offline state: use user-created filters (sample each criteria) and apply after-the-fact (also see Filters: After the Fact Filtering)
      7. offline state: apply after the fact for spam filters on folders which have spam-type messages already downloaded (also see Filters: Junk Mail Filters: After the Fact Filtering)
      8. offline state: verify filters after the fact for news host
    11. Search messages -- also see Search: Basic Functionality - News
      1. search options should default to "search local system"
      2. search a server folder
      3. search a newsgroup
      4. search with no matches
      5. search with results
      6. search operations from results:
        • open message to message window
        • use "go to folder" button to go to open group displaying message in context
        • copy(file) messages
          • to imap mail folder
          • to local mail folder
        • delete/cancel message shouldn't be available
  11. Messages -- basic operations error/negative situations:
    1. Compose News messages -- some cases may be itemized here, but comprehensive coverage under separate test spec Offline: Composition.
    2. Shouldn't be able to reply/forw non-downloaded mesgs
    3. Shouldn't be able to read non-downloaded mesgs
    4. Filter messages -- also see Filters: Basic Functionality - News
    5. Search messages -- also see Search: Basic Functionality - News
  12. Unsent Messages -- basic tests error/negative situations:
    1. Going online errors trying to send unsent message with addressee error
    2. Going online errors trying to send unsent messages because server is down/unavailable
    3. Going online, network unavailable
    4. Messages other than unsent in the unsent message folder -- verify error message identifies foreign unsent messages, handling has no adverse affects.
  13. Security issues for news
  14. Modem variations
  15. Direct connection variations