mirror of
https://github.com/keymanapp/keyman.git
synced 2026-08-05 00:15:32 +00:00
Page:
Desktop app compatibility tests
Pages
ANSI Keyboard Scancodes, Keycodes and Virtual Key Visual Layout for Windows, MacOS, Linux
Analyse Unicode Output of Installed Desktop Keyboards
Backspace and cluster deletion
Capture Firefox log and Mozilla bisection
Coding with Cpp: Linker complains about missing global variable
Crowdin CLI
Debugging WASM code
Delphi Debugging Notes
Desktop app compatibility tests
Developers ‐ websites ‐ setting up xdebug for profiling
Diagnosing deployment failures for keyboards
Epic feature branches
FAQ: Why do we not have a forward‐looking context?
HOWTO: cleanup if a release build trigger fails
Home
How to downgrade to latest stable version of Keyman for Linux
How to fully uninstall and remove Keyman for Linux
How to install IBus and Keyman on Arch Linux and derivatives
How to install nightly packages of Keyman for Linux
How to resolve failed release build trigger
How to setup conventional commits git commit msg hook
How to test artifacts from pull requests for Keyman for Linux
How to uninstall Keyman for macOS for testing
How to upload libcef.dll.pdb symbols to downloads.keyman.com for a new CEF build
Internal APIs for Web's app‐browser artifact
KMP Metadata File (kmp.inf and kmp.json)
Keyboard Processor API reference
Keyboard bundles build on demand
Keyman 13.0 to 14.0 Migration
Keyman 15.0 New Functionality
Keyman 16.0 Release Notes
Keyman 17.0 Release Notes
Keyman 18.0 Release Notes
Keyman 19.0 Release Notes
Keyman Code Style Guide
Keyman Developer testing page (Web and Mobile Targets)
Keyman Glossary ‐ Windows Platform
Keyman Glossary
Keyman Keyboard Installation on Windows
Keyman Project Scopes
Keyman State Machine
Keyman Windows FAQs
Keyman for Linux serialized output notes
Linux Build Agent Setup
Making sense of the Windows Layout Registration
Mobile app compatibility tests
Mobile app ‐ app webview API
Monitoring Keyman Community Site and Social Pages
Notes on preparing history files
One way to refresh a long‐lived staging branch on keyboards (or any) repo
Permalinks for keyboards
Platform Acceptance Test for Android
Platform Acceptance Test for Developer
Platform Acceptance Test for Linux
Platform Acceptance Test for Mac
Platform Acceptance Test for Predictive‐Text
Platform Acceptance Test for Web
Platform Acceptance Test for Windows
Platform Acceptance Test for iOS
Principles of Keyman Code Changes
Profiling Keyman for Windows using VTune
Pull Request and Commit workflow notes
Release workflow
Re‐prioritizing issues
Sentry Windows integration TODO list
Sentry workflow
Setting up windbg for debugging Windows Developer
Shared infrastructure for Keyman sites
Unit Tests
Updating Desktop and Developer for Unicode Releases
User Testing Baseline Configurations
User Testing Workflows
Windows Build Agent Setup
[Deprecated] How to set up a local IIS web server for the Keyman web pages
api.keyman.com keyboard model package version API
downloads.keyman.com history API
downloads.keyman.com keyboard API
downloads.keyman.com model API
downloads.keyman.com version API
history.md format
iOS: manual symbolication
macOS Build Agent Setup
note(windows): kmtip and keyman32 interactions
s.keyman.com kmwversion API
No results
11
Desktop app compatibility tests
Marc Durdin edited this page 2026-04-14 09:16:42 +02:00
Table of Contents
The basic idea is to load the app or test page, and then test input with latest release version of Keyman apps and a variety of keyboards.
See also: Compatibility Testing A19S24
Gather Assets for Testing
Install the following keyboards and have the test page link ready to load on the respective browser.
- Keyman app - Latest version (please record the version in the test results)
- Khmer Angkor keyboard package
- EuroLatin (SIL) keyboard pagekage
- Galaxie Hebrew (Positional) keyboard package
- IPA (SIL) keyboard package
- The editor being tested should have a test page with text area to type and test, i.e. Slatejs text editor test page

User Testing
The app may need to be tested in multiple environments. Each environment can be defined as a group here. For example, if you wanted to test a web app, you may have the following groups:
- GROUP_WIN10_CHROME: Windows 10 / Chrome browser
- GROUP_WIN10_FIREFOX: Windows 10 / Firefox browser
- GROUP_MACOS_CHROME: macOS / Chrome browser
- GROUP_MACOS_FIREFOX: macOS / Firefox browser
- GROUP_MACOS_SAFARI: macOS / Safari browser
- GROUP_UBUNTU_CHROME: Ubuntu / Chrome browser
- GROUP_UBUNTU_FIREFOX: Ubuntu / Firefox browser
Load "the app or 'test page' being tested" on the respective OS (and browser) to test the followings:
- TEST_KHMER_ANGKOR: Khmer Angkor
- Ensure the key combination AltGr B produces
ឞ. Note that on macOS, the function key to use is rightoption. - Type the following (US) keys in sequence: s u j r k. You should see
ស្រុក.
- Ensure the key combination AltGr B produces
- TEST_SIL_EURO_LATIN: SIL Euro Latin
- Type % a. Ensure the output is
ǎ
- Type % a. Ensure the output is
- TEST_GALAXIE_HEBREW: Galaxie Hebrew or another good SIL RTL keyboard
- Type b \ = r @ a v ! y t to output
בְּרֵאשִׁית. FAILED if the output is different.
- Type b \ = r @ a v ! y t to output
- TEST_SIL_IPA: sil_ipa
- Ensure the key sequence n > produces
ŋ.
- Ensure the key sequence n > produces
- TEST_INTERACTION_WITH_TEXT_FORMATTING:
- when a Keyman keyboard is active and you are able to enable bold by using the keyboard shortcut (i.e. Ctrl + b).
- PASSED if the bold is enabled on the first character and the rest of the text being typed, otherwise FAILED.
- Note that on macOS, the keyboard shortcut for Bold is
command+b.
- TEST_CJK_IMX: Korean KORDA Jamo (SIL)
- Type h a n
<space>g e u l<space>. Verify that the result is한글.
- Type h a n