Skip to content

Functional Tests

Ken Manheimer edited this page May 16, 2013 · 12 revisions

Table of Contents

Application Entry - Clean Slate

"Clean Slate" = no pending "remembered" login. Note that login screen is only one that lacks action bar (black bar with a menu button) at top.

  1. brief or no splash screen (SpiderOak emblem)
  2. then Login screen

Login screen actions

Use "Log in" button:
  • Fill in username and password (password characters are hidden)
  • Elect whether or not to set remember button
  • Hit Log in button
    • If "Remember me" is checked *and* it's the first time you are using it with the selected account, you're conveyed to a "Please note" caution screen.
      • Either choice you make on this screen will continue the login. The choice effects the conduct of the application next time it is started.
      • The effect of hitting "Ok, I understand" is that you will automatically be logged into this account next time in subsequent times that the app is restarted, until you explicitly log out (or unless you alter the "remember me" status using the settings section).
      • If you select "Forget it, Forget me", then quitting the app (without logging out from this login) and restarting it will place you in the login screen.
      • Regardless, subsequent attempts to log in to this account with "Remember me" active will not' present this caution screen.
      • (I wonder how testing of these behaviors will be included in a formal testing agenda?)
    • On continuing a login past those preliminaries, or a transient "Please wait" // "Authenticating" // scrolling dots animation black "toast" box
    • and then either the Hive view, if the account has SpiderOak hive, or the account's Devices view
  • Login success:
    • Proceeds to either the Hive top-level screen, if account has Hive,
    • else account's Storage/Devices top-level screen
  • Login fails:
    • Presented with persistent dialog: "Authentication error" // "Authentication failed - incorrect username or password", plus "Ok" button to dismiss
    • Returned to Login screen with credentials left as they were
Use "Go to ShareRooms" button
  • It has no values to fill in
  • Proceeds to ShareRooms top-level screen
  • Note' that this is the way, without logging in, to get to a page with the action bar, by which you can get to the menu sheet.
Hit "Learn more about SpiderOak »" link
  • Proceeds to "About SpiderOak" screen

Application Entry - With remembered login pending

The login conduct for the pending account ensues.

Features of All screens that have Action bar

Every screen except the Login screen has an action bar - a black bar on the top of the screen with a "Back" button on the upper left corner. Some screens have context-specific action buttons on the right hand side of their action bar, which I'll describe when present.

The back button returns to the screen from which most traversal, besides either login or traversal caused by the back button, was incurred. The "top", or starting point of back traveral, reveals a menu pane - see next.

The Menu Sheet

Often hidden under the left side of the main page is a menu of top-level sections, called the Menu Sheet. The main page slides right to reveal it when you hit the action bar "back" button from the top of one of the sections, or when you apply a swipe-right gesture to the action bar.

The menu sheet is covered, by the main page sliding left, when you select one of the menu sheet items, or when you tap in a blank spot on the visible parts of the main page.

The contents of the menu sheet vary depending on whether or not you are logged in. When logged-in, it includes these items that are not present when not logged-in:

  • a SpiderOak Hive item
  • a Devices section, and
  • a Log Out item
Conversely, when not logged-in, the menu sheet includes:
  • a Log In item, instead of the Log Out item
In both situations, there is a Sections section with:
  • ShareRooms
  • Favorites
  • Recents, and
  • Settings items
and, finally, in both situations there is
  • an About SpiderOak item.

Content Navigation

There are several common features of the content list items in sections that present user content: SpiderOak Hive, Devices, ShareRooms, Favorites, and Recents.

The list-item presentation of content items that contain other content items consistes of an icon that indicates the type of container, followed by the name.

The list-item presentation of non-container content items, ie files, includes:

  • on the left hand side: the item-type icon, its name, text indicating the icon type, and a rough statement of the item's data size
  • on the right hand side: a rough indication of the the modification time and then a star, filled in if the item has been selected as a favorite and empty if not.
A plain tap on most items results in opening that item. (I'll note exceptions by case.)

For most containers - content items that contain other content items, including devices, share rooms, and folders - the application effectively "descends" to a view that lists the container's contents. The action bar "back" button in the resulting view returns to the container from which the descent was made.

Tapping on file-like item's star is a way to toggle whether or not the item is retained as a "favorite". (Only file-like items can be marked as favorites. No containers can be.) Items with Favorite status are listed in the Favorites section, and their content is downloaded so it is available at any time, including when it is offline. Tapping on the star of an item that is a favorite will clear the downloaded content for the item.

The first time in the use of the app that you select an item as a favorite, you are presented with a dialog explaining that the content will be downloaded, and asked for confirmation. If you accept, that dialog will not be presented to you again, and the item gets favorite status. If you refuse, then the item will not get favorite status, and you will be presented with the confirmation dialog next time you initiate marking an item as a favorite.

A long tap on many items, particularly some special containers and all files, pops up a menu that offers actions on the long-pressed item. It's a modal menu, meaning things outside of the menu are dimmed and not accessible. There are some actions common to most or all items with action menus, including Open and Details. All files also include Send link, Save file, Share file, and either Remove from favorites or Add to favorites, depending on whether or not the item is already a favorite.

Other actions, specific to particular contexts, will be described in those contexts.

The pop-up action menu can be dismissed without selecting an item by hitting the device (not the one on the app's action bar) Back button.

Sections

SpiderOak Hive section

Devices section

ShareRooms section

My ShareRooms subsection

ShareRooms associate with the currently logged-in account.

Public ShareRooms subsection

Add share room
The last setting for the Remember ShareRoom toggle persists, throughout use of the app and across sessions, until changed.

Favorites section

Recents section

Settings section

  • Send feedback
    Send Feedback item
    Tapping on it launches ?mail composition?
  • Account section: present only if logged in:
    Account - reveals
    Tapping on it goes to Account Details screen
    Remember me
    Tapping on "No | Yes" button toggles
  • Primary Server section
    ...
  • Version
    Version
    Displays the current release version

Server

  • Change while not logged in
  • Change while logged in

About SpiderOak section

Really just a screen with text.

Account Details screen

Logout transition

Some recents and favorites are removed on logout, so info private to authenticated operation is not leaked to unauthenticated operation. The exact particulars need to be described, and checked.

Similar hold for details about what share rooms are conveyed from non-authenticated session into authenticated sessions, and vice versa.