Перейти к содержимому

Фотография

Как сделать проверку для запуска окон


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 2

#1 avb89

avb89

    Новый участник

  • Members
  • Pip
  • 2 сообщений
  • ФИО:Alexander Bezverkhyi

Отправлено 07 июня 2012 - 14:24

Здравствуйте! Помогите новичку.
Нужно протестировать ВПН клиент, как сделать тест так чтобы в случае если не удалось подключиться тест возвращался на начало.
При запуске клиента 1-е окно где вводится логин пароль, если подключение не удалось в нем высвечивается сообщение с ошибкой, если подключение прошло успешно запускается 2-е основное окно клиента.
Как сделать проверку между окнами чтобы запуск второго окна начинался только после успешного подключения, процесс подключения может длится разное время.
  • 0

#2 Dmitry N

Dmitry N

    Профессионал

  • Members
  • PipPipPipPipPipPip
  • 1 742 сообщений
  • ФИО:Николаев Дмитрий
  • Город:Где-то в России

Отправлено 07 июня 2012 - 16:43

У вас есть два возможных сценария: либо открывается сообщение с ошибкой, либо открывается второе окно приложения. Вам необходимо написать функцию, которая будет в цикле искать попеременно либо объект сообщения либо объект окна. Как только один из этих объектов будет найден, делайте то, что вам нужно в зависимости от того, какой именно объект найден. Если у вас в проекте используется Name Mapping (он включен по умолчанию), то лучше всего для проверки существования окна будет использовать метод WaitAliasChild или WaitNamedChild. Пример (не проверял):

//JScript
// Возвращает true, если появилась ошибка, или false если появилось второе окно
function waitForErrorMessage()
{
  var timeout = 60000; // 60 секунд
  var p = Aliases.MyApplicationProcess;

  var endTime = GetTickCount() + timeout;
  while (GetTickCount() < endTime) {
    if (p.WaitAliasChild("ErrorMessageObj", 500).Exists == true)
      return true;
    if (p.WaitAliasChild("SecondWindowObj", 500).Exists == true)
      return false;
  }

  throw new Error("В течении заданного таймаута ни одно окно так и не было найдено.");
}

  • 0
С уважением,
Дмитрий

#3 avb89

avb89

    Новый участник

  • Members
  • Pip
  • 2 сообщений
  • ФИО:Alexander Bezverkhyi

Отправлено 12 июня 2012 - 15:42

Получилось прикрутить этот скрипт, спасибо все работает!!!
  • 0


Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных