1. 程式人生 > >【QTP】使用SendKeys來模擬鍵盤按鍵

【QTP】使用SendKeys來模擬鍵盤按鍵

在測試的過程中,經常會遇到這樣的情況:

1.    需要使用到一些按鍵的操作,如按Enter,F1什麼的情況;

2.    需要模擬組合鍵的情況,如按Ctrl+A什麼的;

3.    需要無法識別的控制元件中輸入一些東西。

在這時候就可以使用SendKeys來進行模擬按鍵的操作。

先上一個例子:

Dim WshShell
Set WshShell = CreateObject("WScript.Shell")
WshShell.SendKeys "{ENTER}"

如果要傳送的是一個字串,就可以:
WshShell.SendKeys "hello"

如果是一些組合按鈕,如:ShiftCtrlAlt
,可用特殊字元代替:
WshShell.SendKeys "+"       '按Shift
WshShell.SendKeys "^"       '按Ctrl
WshShell.SendKeys "%"       '按Alt
WshShell.SendKeys "^s"      '按Ctrl+S進行儲存的操作

如果是一些特殊的按鍵,如空格什麼的:
WshShell.SendKeys "{ENTER}"       '按回車
WshShell.SendKeys "{UP}"          '按游標向上
WshShell.SendKeys "{LEFT}"        '按游標向左
WshShell.SendKeys "{F1}"          '按F1

用這個方法就能模擬一些按鍵的操作。

但是這個方法好像無法模擬出輸入中文,只能模擬鍵盤按英文鍵。