【自动化测试】用图像识别来设置系统默认输入法

本文探讨在自动化测试中如何确保输入法为英文状态,通过模拟快捷键和图像处理技术来自动切换和识别输入法。详细介绍了利用Win32 API模拟键盘事件以及结合OpenCV进行图像匹配来确定输入法状态的方法,并提供了完整代码。
摘要由CSDN通过智能技术生成

在做自动化测试时,有时会忘记把测试机器的输入法调成英文状态,这就导致Sendkey()输入时是中文,导致测试失败,所以我们需要在运行测试前确保输入法是英文状态,最保险的做法是Win+Space键直接切换到 ENG英语输入法,那么该如何自动实现呢?

一、参考研究

查了大部分资料,主流的提供这两种方法更改输入法

  • InputLanguage接口,设置InputLanguage.CurrentInputLangaue属性,位于System.Window.Form.dll中,使用时需要引用该dll
  • Win32 API,模拟键盘快捷键,Win+Space键切换输入法

我的测试程序希望更改计算机系统全局输入法,而第一种方案不能更改系统输入法只能更改自己程序输入时的状态,其他程序的输入法状态不能改变。所以只能选择第二种方案

二、模拟快捷键

Win32 API关于键盘操作需要用到以下关键函数

 //第一个参数:虚拟键码
 //第二个参数:硬件扫描码,一般设置为0即可;
 //第三个参数:函数操作的一个标志位,按键压着或者释放<
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值