SilkTest: вывод результатов в собственном формате

Автор: Николай Колесник

При любом виде автоматизированного тестирования неотъемлемой частью является информативный вывод результатов, так как мало просто осуществить прогон, нужно еще и суметь интерпретировать результаты. Рассмотрим решение данной задачи на примере SilkTest.

(more…)

SilkTest: перезагрузка компьютера во время исполнения тесткейса

В процессе автоматизации тестирования время от времени возникают задачи, решение которых стандартными средствами инструмента тестирования невозможно. Одна из таких задач – перезагрузка компьютера во время работы тесткейса SilkTest.

(more…)

SilkTest: Работа с пользовательскими кнопками

Кнопка (PushButton), казалось бы, один из самых простых элементов управления, тоже может доставить хлопоты. В этом посте мы рассмотрим случаи, когда не срабатывает метод Click() и способы решения этой проблемы.

(more…)

SilkTest: секрет 2 – закрытие недоступных окон

Самый простой и очевидный способ закрытия окна в SilkTest – это использование метода Close(). Однако не всегда этот метод сработает. Попробуйте, например, открыть окно Блокнота, написать в нем какой-то текст, а затем выполнить следующий код:

[ ] Notepad.SetActive ()
[ ] Notepad.Close ()
 

Блокнот выдаст сообщение о том, что в документ были внесены изменения и будет ждать действий пользователя, а SilkTest выдаст в логе сообщение об ошибке

*** Error: Window cannot be closed

Безусловно, подобные ситуации обычно должны обрабатываться, однако что если нам надо закрыть окно в любом случае? В этом случае нам на помощь приходит метод Kill(), который попросту уничтожит окно. По какой-то причине этот метод не описан нигде в справочной системе SilkTest‘a, однако его можно найти в файле winclass.inc.

[ ] Notepad.SetActive ()
[ ] Notepad.Kill ()

SilkTest: секрет 1 – недокументированный параметр

В любой программе есть недокументированные возможности. Некоторые из них явно добавлены в программу (как, например, пасхальные яйца), некоторые являются недоработкой программистов, а какие-то – просто нереализованными возможностями.
В этой статье речь пойдет о недокументированном параметре функции LogError.

(more…)

SilkTest: Работа со службами

О том, как запускать, останавливать и приостанавливать работу системных сервисов Windows, можно прочитать здесь. Однако чуть позже автор блога говорит, что для работы с сервисами, в чьих именах больше одного слова (например, Windows Time) необходимо использовать его имя вместо отображаемого имени.

К счастью это не единственный способ. Использовать имена сервисов вместо отображаемых имен не очень удобно, так как имя сервиса короткое и не всегда понятно, что это за сервис. Для того, чтобы работать с сервисами, чьи отображаемые имена содержат два и более слова, достаточно взять это имя в двойные кавычки:

LIST OF STRING lsOut
SYS_Execute ("net start ""Windows Time""", lsOut)
ListPrint(lsOut)