ubuntu-keyboard

* Test plan for component: ubuntu-keyboard

Dependents/Clients

  • All UI components and apps that support input

Test Plan

This test plan is not supposed to be complete; use it to guide your manual testing so they don't miss big functional areas that are part in the component; also this should be used as guideline to inspire the exploratory testing which should be adapted smartly based on the real content of a MP

Desktop

  • After enabling a silo you'll need to manually install the keyboard packages as they're not installed by default on desktop systems: sudo apt install ubuntu-keyboard*
  • Install the messaging app, addressbook app and webbrowser app: sudo apt install messaging-app address-book-app webbrowser-app
  • Start the maliit server: maliit-server
  • Launch messaging-app via: QT_IM_MODULE=maliitphablet messaging-app
    • If testing on X11 make the messaging-app full screen (unity8 disables keyboard height reporting and moves windows out of the way, but on X11 this doesn't happen so UITK apps currently need to be fullscreen or their content will be moved incorrectly)
    • Test that you can input characters, numbers and symbols correctly
    • Test that extended keys (long press) work
    • Test that leaving the app will cause keyboard to be hidden
    • Test the available System Settings (Language and Text) work as expected, including word prediction, auto caps, spell checking and other. Note: This needs to be the Ubuntu system-settings app, not the Gnome system settings
    • Enable multiple languages from the System Settings, verify that you can switch languages in the keyboard by pressing and holding the globe menu
    • verify that word prediction and spell checking returns results in the language selected in the globe menu
    • Auto caps: Type the following sentence in a input field "Hello my friend. ". Now start press backspace button and verify that shift lock turns off after deleting the period.
    • Verify that similar words are displayed on the word ribbon
    • Verify that pressing the space bar will change the current word to the highlighted word on the ribbon
    • Verify that after pressing the space bar all the words on the ribbon are cleared
    • Start typing another word that is unique, like "blahblahxx". Verify that this word shows up first in the word ribbon and that clicking it will insert the word unchanged.
    • Start typing another unique world, "asdfgh". Verify that "asdfgh" becomes the primary candidate (bold), despite not being in the dictionary due to it being too different from other predictions.
    • Using the English layout press the 'i' key, verify that the prediction for 'I' (capitalised) gets highlighted.
  • Launch address-book-app via: QT_IM_MODULE=maliitphablet address-book-app
    • Make the address-book-app fullscreen
    • Test that all keyboard layouts are being displayed correct in address book app by creating a new contact. Ensure that regular layout, number layout, url layout are displayed depending on what field has focus.
  • Launch webbrowser-app via: QT_IM_MODULE=maliitphablet webbrowser-app
    • Make the webbrowser-app fullscreen
    • Test that url layout (with .com key) is displayed when typing in browser url field
    • Visit twitter.com and press the login button
      • Type an email address into the username field. Verify that autocompletion/word prediction is disabled after typing the @ sign
      • Enter the password field and verify that the keyboard is lowercase.
  • Long press the space bar and verify that the cursor can be moved by sliding across the keyboard

Phone

  • Install latest (devel-proposed) image on phone
  • Install freshly build MPs that are needed for landing
  • Test that you can input characters, numbers and symbols correctly
  • Test that all keyboard layouts are being displayed correct in address book app by creating a new contact. Ensure that regular layout, number layout, url layout are displayed depending on what field has focus.
  • Test that url layout (with .com key) is displayed when typing in browser url field
  • Test that you can dismiss the keyboard by swiping down.
  • Test that extended keys (long press) work
  • Test that returning to the Dash will cause keyboard to be hidden
  • Test that keyboard rotates if the app in focus is rotated
  • Test the available System Settings (Language and Text) work as expected, including word prediction, auto caps, spell checking and other.
  • Enable multiple languages from the System Settings, verify that you can switch languages in the keyboard by pressing and holding the globe menu
  • verify that word prediction and spell checking returns results in the language selected in the globe menu
  • Settings/Greeter lock
    • go to system settings and enabled more than one keyboard layouts
    • verify that in messaging-app you see globe menu that lets you switch layouts and has an entry for Settings
    • go to system settings and enable a password (not passcode) for phone lock
    • lock the phone
    • unlock the phone and start to enter your password
    • invoke the globe menu on the keyboard and make sure no Settings entry exists
  • Pre-edit
    • Auto caps: Type the following sentence in a input field "Hello my friend. ". Now start press backspace button and verify that shift lock turns off after deleting the period.
  • Email fields in browser:
    • launch the Twitter webapp and log out if you are already logged in
    • type an email address into the username field. Verify that autocompletion/word prediction is disabled after typing the @ sign
    • Enter the password field and verify that the keyboard is lowercase.
  • Word Prediction
    • open the messaging app and start typing a message.
    • Verify that similar words are displayed on the word ribbon
    • Verify that pressing the space bar will change the current word to the highlighted word on the ribbon
    • Verify that after pressing the space bar all the words on the ribbon are cleared
    • Start typing another word that is unique, like "blahblahxx". Verify that this word shows up first in the word ribbon and that tapping it will insert the word unchanged.
    • Start typing another unique world, "asdfgh". Verify that "asdfgh" becomes the primary candidate (bold), despite not being in the dictionary due to it being too different from other predictions.
    • Using the English layout press the 'i' key, verify that the prediction for 'I' (capitalised) gets highlighted.
  • Reply to message in Gmail
    • reply to a message in gmail
    • make sure when you press the space to autocomplete the word that the proper space is inserted and you can type the next word normally.
    • make sure when you double-tab the space bar to insert a period that the proper space is inserted afer the period and the next word is capitalized.
    • press return to create a new line and verify that the keyboard is capitalized.
  • Auto punctuation
    • Verify auto-punctuation is turned on in settings
    • open messaging-app and compose a new message
    • repeatedly press the "." button and make sure no spaces are entered automatically
    • Type "Hello my friend." Make sure shift key is not activated until space bar is pressed
    • Type "Hello my friend" then double-tap space bar and verify "Hello my friend. " and shift key enabled
    • turn off auto-punctuation
    • Type "Hello my friend" then double-tap space bar and verify you see "Hello my friend "
  • Language Key/Menu and Emoji
    • verify that the Language key (globe) is visible by default on main layout
    • verify that press and hold will display the language menu. On fresh install, it should display defaults: "English", "Emoji" and "Settings..."
    • verify that single tap on the language key will toggle between the two most recently used layouts. In the default case this should toggle between English and Emoji layouts.
    • verify if only one language is enabled that single press or long press will display the language menu.
  • Contradictions/Apostrophe
    • In English layout, type the word "ive" and verify it's autocorrected to "I've"
    • In English layout, type the word "im" and verify it's autocorrected to "I'm"
    • In English layout, type the word "dont" and verify that "don't" is suggested
  • Auto-caps in Gmail
    • open gmail webapp
    • compose a new message
    • type a line and then hit return
    • verify that auto-caps is on at the start of the newline
  • Auto-Revert
    • Type "Helfn" and press space, this should auto-correct to "Helen"
    • Press backspace key
    • Input should be changed back to the original entry of "Helfn"
  • Memory leak test
    • open the keyboard settings and enable 4 additional language layouts
    • shell into the device and run 'top -d1 | grep maliit'
    • open messaging-app and start to type a new message
    • use the language menu and switch to a different language
    • switch back and forth between the layouts multiple times and verify via the 'top' command that although memory usage changes depending on the plugin it doesn't constantly increase by 2-3mb every switch.
    • repeat these steps until test all of the langs displayed in the menu
  • Layout switch race condition
    • Type a very long string (50+ characters) quickly
    • Quickly tap the language button to switch to a different layout
  • Chinese next button
    • Change system language to Chinese
    • Restart
    • Create a new contact in the contacts app
    • Verify that the return key has the text '下一个' and isn't elided.
  • Compose sequence support on external keyboards - only applicable on phones and tablets (Verifies that compose sequences are supported on systems that also include other input methods like on screen keyboards)
    • Open System Settings
    • Go to Language & Text

    • Go to Layouts and other sources
    • Select and activate a layout with dead-keys like English (US, internaional with dead keys) or "Portugese"
    • Connect a keyboard via bt or usb where possible
    • Go to the unity8 scopes search text field or in the search field of system settings
    • Enter a dead key sequence - this depends on the selected layout and the actual hardware layout of your keyboard "shift+' o" or "shift+: o" would lead to ö on US international; "# u" or "~ u" enters ũ on Portugese
  • Long press the space bar and verify that the cursor can be moved by sliding across the keyboard

Process/Merges/TestPlan/ubuntu-keyboard (last edited 2017-01-19 14:24:56 by michael-sheldon)