Как вы моделируете событие ввода с клавиатуры в UFT

У меня есть веб-приложение, которое я тестирую с помощью программного обеспечения HP UFT. В моем приложении есть текстовое поле с атрибутом onkeydown. Когда клавиша нажата в текстовом поле, вызывается функция, которая запускает различные действия в зависимости от того, какая клавиша была нажата. Я заинтересован в вводе ключа. Когда клавиша ввода нажата, строки создаются внутри формы. Как я могу имитировать нажатие клавиши ввода в поле?

я пытался

field1.Set Chr(13)

field1.FireEvent "onkeydown"

но это не вызывает событие.

Я пытаюсь aviod с помощью команды SendKeys.

3 ответа

Решение

Если вы используете режим воспроизведения устройства (как описано в этом ответе) и отправляете vbCRLF Ваше приложение сможет увидеть ключ ввода.

Setting.WebPackage("ReplayType") = 2 ''# Changes to device mode
Browser("Enter").Page("Enter").WebEdit("WebEdit").Set  "a" & vbCRLF

Это работает (в IE) для следующей страницы примера:

<!DOCTYPE html>
<html>
<head>
<title>Enter</title>
<script>
function okd() {
if (event.keyCode == 13)
    alert("Got enter");
}
</script>
</head>
<body>
<textarea onkeydown="okd()"></textarea>
</body>

Вот некоторые методы, которые я попробовал для имитации событий клавиатуры и работал для меня..

Set oShell = CreateObject("WScript.Shell")

oShell.SendKeys "{TAB}"           ' Click Tab Key
oShell.SendKeys "{ENTER}"         ' Click Enter\Return

Также я использовал

Type micAltDwn + "RETURN" + micAltUp ' Click Tab Key
Type micAltDwn + "TAB" + micAltUp    ' Click Enter\Return

Если вы хотите ввести символы

 oShell.SendKeys "{h}"           ' Click h Key
 oShell.SendKeys "{i}"           ' Click i Key

 Type micAltDwn + "h" + micAltUp    ' Click h Key
 Type micAltDwn + "i" + micAltUp    ' Click i Key

РАБОЧАЯ СКИДКА

$(document).keyup(function (e) {
   $("#my_id").keyup(function (e) {
    if (e.keyCode == 13) {
        alert("Enter Simulated!!!")
       //your function goes here!!!
    }
});
    });

ОБНОВЛЕНИЕ: 2-я демоверсия

Другие вопросы по тегам