QA/Fennec/Milestones/2.0/TestPlan:Virtual Keyboard

< QA‎ | Fennec‎ | Milestones‎ | 2.0
Revision as of 17:36, 7 September 2010 by Nhirata (talk | contribs) (→‎Functional)

General Information

Area Details
Team:
  • Developer: Jim Chen (:jchen)
  • Designer: Madhava Enros (:madhava)
  • QA: Naoki Hirata (:nhirata)

Bug Tracking

Tracking Bugs Details
  • All:
  • Android:
  • Maemo:
  • Related Bugs:
449895 Add support for copy & paste

Test Plan

Design Documentation/Background Research

Important reference materials are as follows :

https://wiki.mozilla.org/Mobile/Projects/Virtual_Keyboard

Current list of keyboards are testable on the android market: swiftkey beta, openwnn plus, simeji, google pinyin, swype, htc touch input, and motorola multi-touch

System Testing

Mobile OS

  • Android 2.2
  • Maemo 5, 6

Mobile Device

Nokia N900

Test Outline

Note : This test out line is a brain storm of all possible conditions to consider for testing. The scope of the testing will be narrowed from this list based on design information, risks of breakage, etc.

Positive Smoke/Alpha Tests

UI

  • General
    • Keyboard Menu
    • Copy
    • Cut
    • Paste
    • Highlights
    • cursor insertions
  • Single Touch
    • Single key Press : depends on IME and key
    • Special Key : See Functionality
  • Double Touch
    • Two keys pressed : depends on IME and key
  • Triple+ Touch
    • Three keys pressed : depends on IME and key
    • four keys pressed : depends on IME and key

Functional

  • UI Based Functionality
    • verify that the keys function accordingly
    • special keys :
      • White Space
        • Space, Enter, Tab Return
      • Modifier Keys
        • Shift, Caps, Option, Command, Control
      • Positional Keys :
        • Arrows, Home, End, PageUp/Down
      • Symbols:
        • Astricks () {} [] & ^ % $ # @ ! ~ etc.
      • Other:
        • Esc, Delete, Clear
    • Screen size (making sure that things fit)
  • Conditional Functionality
    • dismiss keyboard
    • start virtual keyboard
    • selection
      • drag/drop
      • character selection
      • multicharacter selection
      • Word selection
      • multiword selection
      • split word selection
        • hyphenated
        • carriage return
        • partial character in words

Beta Conditional

  • Virtual Conditions
    • click in text box
    • double click in text box
    • click outside of Virtual Keyboard : dismissing keyboard
    • scrolling above the on-screen keyboard
    • Change Cursor Focus
    • slide right, slide left [ Panels ]
  • Physical Conditions
    • While Charged
    • While not Charged
  • Negative (Tests to Break) Tests
  • Race Conditions
    • Signal Conflict
      • Battery
        • Battery Low
        • No Battery
      • Calls
        • Incoming Phone Call
      • Other Apps
        • Calendar notification
        • Alarm Clock notification
        • Screensaver / Lock (system)
        • EnergySaver (Fade) (system)
        • Other?
        • Music playing (should not affect)
    • Buttons
      • Hard reset
      • Soft reset
      • Turn off phone
      • force quit
      • Other buttons being pressed on the phone (zoom, picture, power )
    • UI State Change
      • Zoom
        • while bringing up Keyboard
        • while dismissing the keyboard
      • Change Orientation
        • while bringing up keyboard
        • while dismissing the keyboard
  • Device/Platform Specific Issues
    • Portrait/Landscape Orientation
    • Camera (should not conflict?)
    • Microphone (Voice commands? Voice Recognition?)
    • Speaker (should not conflict)
    • headset (should not conflict)
    • Vibrate mode (should not conflict)
    • Volume (display conflict? need to test)
    • GPS
  • Localization
    • Double Byte Characters (Japanese, Chinese, Korean)
    • RTL Languages (Arabic/Hebrew)
    • High ASCII characters (Euro)
    • Date Input/Format (Euro/Japanese/Chinese)
    • Time Format (Chinese/Japanese)
    • Dialog check
    • Change of IME on Mobile OS

Usability

  • Keyboard Real Estate
  • scrolling away?
  • jumping to another field?

508