Make system tests pass when run locally on non-English systems#14148
Conversation
For this, the following changes have been made: - NVDA interface language forced to English (in config files) - Chrome UI language forced to English (via command line parameter) - HTML sample content forced to English (via lang HTML attribute) - Removed the unneeded NVDA+\ custom gesture which cannot be executed without modifier on some keyboard layout (e.g. French) Note: For the Chrome command line --lang parameter to be taken into account, it should be ensured that no previous Chrome window is open when the tests are run.
See test results for failed build of commit 6435cdd4c9 |
|
If someone would like to test with an English system, this would be helpful. |
|
@CyrilleB79 Many thanks for taking this! Ive tested and on my English Windows 10 21H2 all system tests passes. |
seanbudd
left a comment
There was a problem hiding this comment.
Generally LGTM, one minor suggestion
|
@lukaszgo1, could you have a look or provide the logs of one of the failing Notepad test to be able to investigate why it fails and if it can be fixed? Converting to draft, waiting for a test on English Windows 11 (on this PR's branch and on last alpha). |
|
Ping @lukaszgo1, @josephsl:
|
|
I haven't, yet, analyzed the logs from the failed tests, however I've switched my Windows 11 to English and can confirm that Notepad tests fail even on the current master. so the problem has not been introduced in this PR. Sorry for the confusion. |
Feel free to provide the log results if you want me to have a look.
Thanks for this valuable test and information. Since the remaining issue is not directly linked to this PR nor to the corresponding issue (#13362), I set this PR ready for review. |
I think the change log entry should be in "for developers" or not at all. |
Link to issue number:
Closes #13362
Summary of the issue:
The majority of system tests fail when run on non-English systems. On my system (French), failures are due to the following reasons:
In #13362, it was also stated that Chrome's language may make some tests fail. That's not the case on my French system. But we may imagine that the keyboard shortcuts could vary from one language to another, e.g. "Alt+d" to focus the address field.
Description of user facing changes
System tests now pass on French system. It should pass on any system regardless of its language.
Description of development approach
NVDA+dis now a native gesture of NVDA for the same script.Even if not used anymore for now, I have not removed the possibility to use a custom gesture file in case an unassigned script has to be tested in the future. Should it be the case, care should be taken to assign a gesture that can be executed on any keyboard layout, i.e. use a letter rather than punctuation as the main key name.
E. Chrome UI language is forced to English via command line parameter (see List of Chromium Command Line Switches « Peter Beverloo)
Note: For the Chrome command line --lang parameter to be taken into account, it should be ensured that no previous Chrome window is open when the tests are run.
Testing strategy:
Windows 10 20H2 (x64) build 19042.1889, Chrome 105
Only "NVDA" tag tested, not "installer".:
runsystemtests.bat -i nvdaKnown issues with pull request:
I have not the opportunity to test it myself.
But according to @lukaszgo1's tests, Notepad system test fail on Windows 11.
Since it is unrelated to the changes of this PR, I suggest to handle in a different issue/PR if needed.
Change log entries:
Bug fixes (or For Developers ?)
System test should now pass when run locally on non-English systems. (#13362)Code Review Checklist:
Cc @lukaszgo1, @MarcoZehe