Keyman for macOS Acceptance Test Procedures
These test procedures are to be run before any beta or stable build is published. Copy these checklists of tests before PRs are merged into the beta and stable branches.
Visual Inspection of master branch
Setup Steps
Big Sur 11.0.1 on Parallels.
14.0.190
The instructions and steps were clear.
I found that the Keyman menu did not become available immediately after granting Keyman the necessary permissions -- this could be improved. See #3971
Basic smoke test
ISSUE This issue is not yet resolved. However I noted that the Download window does not reset when clicking Download keyboard but retains the previous search. This is a separate issue and is a little problematic for this particular test, because Keyman will not attempt to reload the page after failing here. See #3972.
The Keyman Configuration window stays open. This is a minor issue.
Application Compatibility Tests
Amharic
Select the Amharic keyboard. For each of the following applications/contexts, test that
-
typing ta produces ታ;
-
typing t, left-arrow, a produces አት;
-
typing tt, left-arrow, a produces ታት;
-
typing tt, then mouse-clicking between the two ታ characters, and then typing a produces ታት.
In each of the last three cases, the insertion point should end up before the final ት character.
-
common keyboard shortcuts for the app work as expected. For example: ⌘-F (typically opens a Find dialog or control); ⌘-O (File Open); ⌘-X (Cut); ⌘-C (Copy); ⌘-V (Paste); ⌘-A (Select All). (Note that in Google Docs, these commands correspond to both a Google-Docs command and a browser command. The "normal" behavior in all three browsers is to activate the Google Docs command, not the browser command, with the exception that ⌘-O in Safari opens Safari's standard macOS Open file dialog.)
-
with a few characters displayed, ⌘-A followed by typing t replaces selected characters with ት.
-
typing at, then ⌘-A, followed by a produces አ.
compatibility issue still present (loss of context acceptable)
compatibility issue still present
Tested with 1.53.0. Compatibility issue still present (loss of context acceptable). #177 no longer relevant
compatibility issue still present (loss of context acceptable)
Tested with 14.0.1 (16610.2.11.51.8) and same compat issues shown
compatibility issue still present (loss of context acceptable) - earlier ref #171
previous issue appears resolved: (currently known compatibility issue for step 1 if you start with an empty input box. I.e., any sequence that deletes the only character in the editor in an attempt to replace it will leave the editor blank.)
ISSUE Document these known compat issues. But this appears resolved in this release: Step 2 results in $ታት.
compatibility issue still present (loss of context acceptable)
Passed apart from that compat issue
- [ ] Open Office
removing openoffice testing (see LibreOffice)
FAIL: this issue is still present
Optional test of Sentry error reporting
- In Keyman, turn on verbose logging.
- Optionally, in Console filter all messages from the Keyman process having the text Sentry
- Select a keyboard called EnglishSpanish (see /mac/test/EnglishSpanish folder in the source repo)
- Open an editable file in Xcode.
- Type Sentry force now
OSK UI/Functionality Tests
What's New Tests
note that the kmp icon which now shows is a little broken? low priority at present
Keyman for macOS Acceptance Test Procedures
These test procedures are to be run before any beta or stable build is published. Copy these checklists of tests before PRs are merged into the beta and stable branches.
Visual Inspection of master branch
Verify
mac/history.mdcontains all the current changesSetup Steps
Uninstall previous version of Keyman on the device
Install latest master build (or whatever version is to be tested) of Keyman on the device
Basic smoke test
Verify that the version displayed in the About box is correct.
On device, turn Wifi off and/or disconnect Ethernet cable
Activate Keyman and select Keyman Configuration from the input methods menu. Click Download keyboard
Verify error message "Could not reach Keyman server!" is displayed (This is currently not happening. Bug reported as: bug(mac): Searching for a Keyboard to download in Keyman for macOS gives no feedback when Internet is unavailable #302)
Close Keyman configuration windows.
On device, re-enable Internet connectivity
Activate Keyman and select Keyman Configuration from the input methods menu. Click Download keyboard.
Verify that page displays correctly (should have a Keyboard Search box with the prompt: Enter language or keyboard.
Search for Amharic. Should see several keyboards, including some by The Ge'ez Frontier Foundation and some by SIL.
Double-click any KMP file (in Finder). Should see a “Do you want the Keyman Input Method to install this Package?“ message. If you click Yes, the package should be installed (or updated) and the configuration window should display, showing that the keyboard(s) in the package are installed and enabled. If you click No, the configuration window should not be displayed (but there is a known issue that the very first time after Keyman loads, if the configuration window has not been shown, it will be displayed even if the user clicks No).
Application Compatibility Tests
Amharic
Select the Amharic keyboard. For each of the following applications/contexts, test that
typing ta produces ታ;
typing t, left-arrow, a produces አት;
typing tt, left-arrow, a produces ታት;
typing tt, then mouse-clicking between the two ታ characters, and then typing a produces ታት.
In each of the last three cases, the insertion point should end up before the final ት character.
common keyboard shortcuts for the app work as expected. For example: ⌘-F (typically opens a Find dialog or control); ⌘-O (File Open); ⌘-X (Cut); ⌘-C (Copy); ⌘-V (Paste); ⌘-A (Select All). (Note that in Google Docs, these commands correspond to both a Google-Docs command and a browser command. The "normal" behavior in all three browsers is to activate the Google Docs command, not the browser command, with the exception that ⌘-O in Safari opens Safari's standard macOS Open file dialog.)
with a few characters displayed, ⌘-A followed by typing t replaces selected characters with ት.
typing at, then ⌘-A, followed by a produces አ.
Chrome browser URL bar
Chrome browser Facebook search control
Chrome browser Google Docs document (currently known compatibility issue for steps 3, 4 & 5 because any selection change will cause the context to be reset - Google docs can't report context.)
Safari browser URL bar
Safari browser Facebook search control
Safari browser Google Docs document (currently known compatibility issue for steps 3, 4 & 5 because any selection change will cause the context to be reset - Google docs can't report context.)
Firefox browser URL bar
Firefox browser Facebook search control
Firefox browser Google Docs document (currently known compatibility issue for steps 3, 4 & 5 because any selection change will cause the context to be reset - Google docs can't report context.)
Firefox browser Word Online
Messages app
Notes app
TextEdit
Terminal (known compatibility issues: Steps 1 & 3 insert an extra leading space if there are no preceding characters. Skip step 4 - mouse doesn't move insertion point in Terminal. Step 5 can be done using left-arrow instead. Skip steps 7 & 8. If the Terminal window has LOTS of text in it, it won't provide any context, which leads to other compatibility problems.)
Mail (message body)
MS Word
MS Powerpoint (see [Mac] Can't switch keyboards when MS PowerPoint text box is active #687 for compat issue)
- [ ] Open OfficeOptional test of Sentry error reporting
OSK UI/Functionality Tests
What's New Tests
Refer to the new changes in
mac/history.mdand verify functionalityConsolidated crash reporting
Simpler and Smoother Keyboard Search
Icon for Keyman app
Added support for European layouts in OSK
Specifying app compatibility as a user default: execute the command
defaults write keyman.inputmethod.Keyman KMLegacyApps -array com.microsoft.Wordin Terminal and then observe Word interactions, including losing context and slower text manipulation (remove bydefaults write keyman.inputmethod.Keyman KMLegacyApps -array)Improved input reliability with modifier keys and cursor keys