我将Selify安装移到了一个新的服务器上,从那时起,一些使用登录的测试不再有效。
经过调查,我发现密码字段填充了错误的值。因此,测试失败了。
我正在努力做到以下几点:
_passWordTextBox.Clear();
_passWordTextBox.SendKeys("!!ä{dasd$352310!!!\\_XY>èà$£<?^^");
以下是在这些行之后填充该字段的方式:
“!”角色是唯一缺失的角色。它在前一台服务器上运行正常。其他一些可疑的字符(如$éja<)也起作用了。
我已经查看了服务器之间的区域设置(文化差异)。
从密码字符串中发送的这些字符中:
!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~
所有这些都运行正常:
"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\ _ abcdefghijklmnopqrstuvwxyz{|}
只有这些未能正确发送:
!]^`~
我还尝试了其他字段(如Description字段),也看到了同样的失败。
我尝试查看该命令是否正确地发送到Selify服务器,但日志似乎表明它起作用了:
08:05:35.850 DEBUG [ReverseProxyHandler.execute] - To upstream: {"value":["!\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~?"]}
这意味着服务器正确地接收了命令,但由于某种原因,驱动程序或服务器没有正确执行。
4条答案
按热度按时间ipakzgxi1#
试试这个:
也许是为了现场的验证。
hgb9j2n62#
您可以尝试使用剪贴板:
这是用C#写的,你需要用你正在使用的语言重写它。
wbgh16ku3#
在查看了多个系统设置后,我发现我的飞行员和执行机器都添加了相同的区域设置**(格式:法语(瑞士),键盘:法语(瑞士)**,我没有再查看任何内容。在闲逛的时候,我发现了这个设置:
结果是,在执行测试的机器上,非Unicode程序的语言被设置为法语(瑞士)。将其更改为英语(英国)解决了问题。
可能是chromeDRIVER中的错误。
8dtrkrch4#
您的解决方案对我不起作用,因为我已经将该设置设置为英语,但如果其他人感兴趣,我找到了一个解决方案。
只需在任务栏中将键盘更改为ENG UK即可。