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

From MozillaWiki
< QA‎ | Fennec‎ | Milestones‎ | 2.0
Jump to: navigation, search

General Information

Area Details
Team:
  • Developers:
    • Platform :
      • jchen
      • blassey
    • Chrome UI:
      • vingtetun
      • mfinkle
      • mbrubeck
  • Designer: Madhava Enros (:madhava)
  • QA: Naoki Hirata (:nhirata)

Bug Tracking

Category Bugs Number Details
  • All:
Virtual Keyboard Behavior 592330 Enhance virtual keyboard support in the chrome UI
  • Android:
  • Maemo:
  • Related Bugs:
Copy/Paste 449895 Add support for copy & paste

current open virtual keyboard bugs

Test Plan

Design Documentation/Background Research

The purpose of the virtual keyboard is to provide an interface to fennec for people to type in various languages when a hardware keyboard is closed or not available to the device.

Important reference materials are as follows :

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

https://wiki.mozilla.org/Mobile/UX/VirtualKeyboard

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

Documentation in bug reports of behavior: https://bugzilla.mozilla.org/show_bug.cgi?id=592330 https://bugzilla.mozilla.org/show_bug.cgi?id=500719

System Testing

Mobile OS

https://wiki.mozilla.org/QA/Fennec/Milestones/2.0/TestPlan:Virtual_Keyboard/Android_VKB


Mobile Device

See : https://wiki.mozilla.org/QA/Fennec/Milestones/2.0/TestPlan:Virtual_Keyboard/Android_VKB

Test devices : Motorola Droid 2 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
    • Long Touch
    • short 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 (negative test case)
    • Three keys pressed : depends on IME and key
    • four keys pressed : depends on IME and key
  • Keyboard Short Cuts

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
      • click on space above keyboard
      • hit return?
    • start virtual keyboard
      • click in a text field selection
      • click in a search field
      • click in awesome bar
    • 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
      • change focus after composition
    • slide right, slide left [ Panels ]
    • AwesomePage
    • Preferences/Feedback/Plugins/etc Panels
    • Context Menus
    • Site Menu
    • Favorites Panel
    • Position/Graphical issues
      • collapsing before bringing up keyboard/dismissing keyboard
      • scrolling before bringing up keyboard/dismissing keyboard
      • tapping after dismissing the keyboard should bring the keyboard up
  • Content Conditions
    • html4
    • html5
    • asp
  • Physical Conditions
    • While Charged
    • While not Charged
    • Power Consumption
    • Performance
      • Speed of functions
      • Processor utilization
      • Memory utilization
        • Memory leaks?
        • Memory efficiency
    • Storage
      • Disk
      • Sim
  • Negative (Tests to Break) Tests
    • Security
      • Buffer Overflow (max characters)
    • removal of characters
  • Race Conditions
    • Lock conditions?
    • tooltips or other dialogs?
    • Network Conditions (Should have no impact)
      • WiFi
      • 3G
      • Bluetooth (Devices)
      • 4G?
      • SMS
    • Signal Conflict
      • Browser notifications
        • clicking in search field (form assistant + virtual keyboard)
        • Restart notification (ie. change in certain preferences in preferences panel )
        • Password notification
        • form manager notification
        • password manager
        • popup blocker
        • offline storage
        • geolocation manager respective to content window
      • Battery
        • Battery Low
        • No Battery
      • Calls
        • Incoming Phone Call
      • Other Apps
        • Calendar notification
        • Alarm Clock notification
        • Sleep notification
        • Screensaver / Lock (system)
        • EnergySaver (Fade) (system)
        • Other?
        • Music playing (should not affect)
        • plugins (youtube and other websites with different media types)
        • Extensions ( addons to fennec)
    • 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
    • Print support?
    • Sync
    • Multiapp?
    • physical keyboard
      • visible
      • hidden

(Note : There may be some difference between maemo and android)

  • 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
  • Help?
    • context sensitive help?

Usability

  • Usability
    • Keyboard Real Estate
    • scrolling away?
    • jumping to another field?
    • Encryption
  • Accessibility (508 compliance)
    • Voice Commands?