-
-
Notifications
You must be signed in to change notification settings - Fork 111
Platform Acceptance Test for iOS
Marc Durdin edited this page Jan 25, 2022
·
9 revisions
- These test procedures are to be run before moving from alpha to beta, or beta to stable, or before PRs are merged into stable branches.
- Copy these checklists of tests into a new issue (for tier transitions) or a comment on the PR.
- When annotating results, use
>
at the start of a new line under the checkbox to note the result. (For an example, see #3973).
-
Verify latest CI build of master is successful
- Verify
history.md
contains all the current changes - Verify that all unit tests for iOS are currently passing.
- May be integrated with the first step above once our usual CI processes include the iOS unit tests.
- Record device's iOS version
- Ensure the device is properly configured for testing and is registered with TestFlight.
At this time, Keyman for iOS does not support external keyboard input.
- Uninstall previous version of Keyman on the device
- Install test build IPA
- On device, disable internet connectivity
- Start Keyman and select Add a keyboard for your language
- Verify error message "Could not reach Keyman server!" is displayed
- Click OK to dismiss. Close Keyman app
- On device, enable internet connectivity
- Start Keyman
- On initial Get Started menu, select "Enable Keyman as system-wide keyboard" and do any necessary system steps to enable Keyman
- Verify touching Add a keyboard for your language pulls up the keyboard search
- This should also be accessible as Settings > Installed Languages >
+
.
- This should also be accessible as Settings > Installed Languages >
- Verify touching Enable Keyman as system-wide keyboard pulls up Keyman's menu within iOS settings. (11.0+ devices)
- If older versions of iOS are supported, ensure that the help page for doing it manually is properly linked.
- Verify touching More info brings up an accurate version and the main table-of-contents help page.
- This should also be accessible as Info from the main menu dropdown (on phones) or as the circled-i button (on tablets).
- Set Don't show again to checked, close and re-open Keyman, and verify Get Started menu does not appear
This menu is accessed via Get Started menu or Settings menu
- On the device, enable internet connectivity
- Verify a new keyboard can be downloaded and selected
- Return to the text input screen and confirm that it operates correctly.
- Without changing selected language, confirm that it can be cleanly deleted via the Settings menu.
- Confirm that another keyboard is correctly selected afterward.
- Type and verify text can be copied and shared to external app
- On default page, click on text field and set system keyboard to Keyman
- Verify can type with Keyman as system keyboard
- Verify that predictive suggestions are properly applied when selected (using
sil_euro_latin
+ English) - Close and reopen Keyman app
- Verify text can be rescaled from Text Size 9 to 72
- Verify text can be cleared
- Verify that the Keyman iOS version is displayed; record the version
- Verify that the Info menu options matches that of the More Info... option from the Get Started menu option.
- Verify that the Keyman iOS version matches the version string seen at (Home Screen) > [iOS] Settings > Keyman.
- Installed Languages ... Add Language
- Select an installed language ... Add (another) Keyboard
- Should automatically perform a filtered search based upon that language's BCP-47 code
- Select an installed language ... Dictionary
- Turn on/off 'Enable Predictions' and validate each
- Turn on/off 'Enable Corrections' and validate each
- Validate that when both predictions and corrections are off, banner is not visible
- Add/Remove dictionaries - validate
- If multiple dictionaries are available, test swapping between them
- Confirm all keyboard tests below have been performed in both portrait and landscape modes.
- In portrait orientation, verify that the OSK appears and fills the width the bottom of the screen
- Verify long-press
q
key works - Verify long-press
k
key works- Verify that any predictive suggestions generated feel 'reasonable' (based upon 'k', the selected subkey, or one of its neighbors)
- Verify uppercase layer can be selected via
SHIFT
- Verify number layer can be selected via
123
- Verify long-press
1
key works - Verify long-press
0
key works - Verify backspace, space, and enter keys work
Note that the shown EuroLatin2 is a highly customized keyboard explicitly designed for mobile.
- Verify that the US Basic keyboard can be downloaded through Settings > Installed Languages > English >
+
- This should automatically bring up search results for English keyboards.
- When the package-installer launches, English should be the one pre-selected language.
- Install the package for both English and Tagalog.
- Set English: US Basic as the active in-app keyboard.
- Verify that predictive text suggestions appear.
- Set Tagalog: US Basic as the active in-app keyboard.
- Verify that predictive text suggestions do not appear.
- Verify that long-press
123
key works, presenting options for a currency layer and a symbol layer. - Select the currency layer, then press the
£
key. - Verify that the keyboard outputs correctly and returns to the default layer.
- Go to the symbol layer and press the
©
key. - Verify that the keyboard outputs correctly and remains on the symbol layer.
- Revert to the default layer and ensure basic key inputs work.
- Long-press
e
on the default layer and select a subkey. - Verify that the selected key produces the correct output.
- From the
Settings > Languages > English > US Basic
menu, follow the "Help link" and ensure it displays appropriate help.- (Should work both online and offline)
- From the
Settings > Languages > English > US Basic
menu, scan the QR code with a phone and test that it links to the current version of that keyboard's public download page on keyman.com. - Returning to the app, delete the US Basic keyboard via Settings for Tagalog.
- Set English: US Basic as the active in-app keyboard.
- Verify that the keyboard appears correctly and ensure basic key inputs work.
- This is to ensure that uninstalling for one language doesn't adversely affect installations of the same resource for another language.
- Delete the US Basic keyboard via Settings for English.
- TODO
- Refer to the new changes in
history.md
and verify functionality