[*] Программно блокировать сеанс пользователя, используя команду: Rundll32.exe user32.dll, Lockworkstation .
[*] Система автоматической системы автоматически разблокирует сеанс, чтобы продолжить сценарий.
Код: Выделить всё
java -jar ...[*] Найдите и взаимодействуйте с элементами пользовательского интерфейса в этом новом приложении Java, используя распознавание изображений.
Проблема:
Эта автоматизация неровна. Он не прерывается (около 3-5% случаев) на шаге, где он пытается найти изображение в приложении Java Swing, запущенном после цикла блокировки/разблокировки экрана. Ошибка последовательно является «noshelementException»
Если я удалю команду Rundll32. Это настоятельно предполагает, что проблема связана с состоянием сеанса после разблокировки. окно Время поиска изображения после ожидания настроенного периода (например, 10 секунд). < /Li>
во время очистки в конце неудачного запуска, я также замечаю предупреждения о том, что первоначальные приложения (например, блокнот) не отвечают », когда сценарий пытается закрыть их. Время поиска изображения после ожидания настройки периода (например, 10 секунд). < /P>
Код: Выделить всё
// Step 1: Works reliably
open("notepad.exe")
window("[CLASS:Notepad]")
sendKeys("Preparing to lock...")
sleep(2000)
// Step 2: The source of instability
open("Rundll32.exe user32.dll,LockWorkStation")
// The system unlocks the screen here automatically.
// Step 3: Attempt to wait for stability (unreliable)
sleep(8000)
// Step 4: Launch the application that fails intermittently
def jarPath = downloadFileOnAgent("path/to/some/SwingApp.jar")
open("java -jar ${jarPath}")
// Step 5: This is where it fails intermittently
try {
window("[CLASS:SunAwtFrame;TITLE:My Swing App]")
// This next command fails with "Image not found"
$(byImage("path/to/button_image.png")).waitUntil(APPEARS, 10000).click()
} catch (Exception e) {
// Throws NoSuchElementException / ImageNotFoundException
log.error("Failed to find the element after screen unlock.", e)
}
// ... rest of the script
Я ищу объяснение этого поведения. Что может это вызвать?
Подробнее здесь: https://stackoverflow.com/questions/797 ... lock-and-u