Эта статья демонстрирует, как создать скрипт автоматизации для блокнота Windows 10, используя Node.js и cucumber.js. Вы также узнаете, как создавать объектную модель для вашего приложения Windows, и как использовать API для автоматизации Windows в Cuketest, чтобы написать сценарий.
В этом прохождении мы будем:
- Создайте сценарии BDD, которые описывают шаги автоматизации
- Spy Botepad контролирует и добавьте тестовые объекты для объектной модели
- Внедрить код автоматизации
- Отладить и запустить скрипт, чтобы получить отчет
Мы создали видео о том, как это сделать, посмотреть его на YouTube
Чтобы сделать это пошаговое сами, пожалуйста, сначала установите Node.js и Cuketest как инструменты разработки.
1. Создать проект
Открыть Cuketest, нажмите «Файл» -> «Новый проект»
Установите «NOOPADTESTTING» как имя проекта, и выберите шаблон проекта «Windows», также укажите путь проекта, а затем нажмите «Создать», чтобы создать проект.
2. Написать сценарии
Чтобы написать сценарию автоматизации поведения, который всегда начинается с написания тестовых случаев, которые вы хотите автоматизировать в виде файлов функций. Открыть Функция1.feature
Файл, на «Visual» View, введите содержимое в соответствии со следующей картинкой.
В «Text» View вы найдете содержимое файла функций:
Feature: Notepad Application Automation Automate Windows 10 Notepad application for testing Scenario: Edit content and save Given Notepad application is opened When input text "hello world" in the Notepad And select [File] -> [Save] to show the file save dialog And enter the file name "helloworld.txt" and click [OK] Then the file should be saved successfully Scenario: Change Notepad font Given Notepad application is opened When select [format] -> [font] to open font dialog And select [Arial] font from the Font dropdown box Then Click [OK] button to dismiss the Font dialog
С созданными сценариями теперь очень ясно, что нужно реализовать.
3. Шпионские элементы управления
При автоматизации приложения Windows «тестовые объекты» используются для определения элементов управления Windows. Каждый тестовый объект содержит набор свойств и правил, используемых для поиска элемента управления. Информация о тестировании объекта хранится в файле объекта модели (или в аббревиатуре, «Модельный файл»), который заканчивается «.tmodel». Model Manager в Cuketest используется для создания и менеджера файла модели. Вот быстрая инструкция о том, как шпионить и добавлять объекты в модель:
Нажмите кнопку «Добавить объект», чтобы запустить шпионар элемента, щелкните элемент управления, который вы хотите добавить, если элемент управления успешно держется, он показывает, что элементы управления вы хотите добавить и его свойства. Затем вы нажимаете кнопку «Добавить в модель», чтобы добавить ее в объект модели.
Пожалуйста, теперь следуйте инструкциям ниже, чтобы создать модель:
Нажмите
step_definitions \ model1.tmodel
Файл, чтобы открыть его в Model Manager.Откройте блокнот, шпим для следующего списка элементов управления и добавьте их в модель, также дайте им имена в виде столбца «Имя объекта» ниже:
“Файл” “Сохранить” “Формат” “Шрифт…” “” Один совет о шпионаже, чтобы сделать кнопку «Сохранить», сначала нажмите клавишу Ctrl. Когда щелкните «Файл», чтобы этот щелчок не запускает шпионскую диалог, чтобы появиться, а затем отпустите клавишу Ctrl при нажатии «Сохранить».
Откройте диалог «шрифт», нажав «Формат» -> «Font …» меню, шпион и добавьте следующий список элементов управления и добавьте их в модель.
“Arial” “ОК” Откройте диалоговое окно «Сохранить файл», SPY и добавьте следующий список элементов управления и добавьте их в модель
“” “ОК” После добавления всех этих элементов ваша модель должна выглядеть следующим образом:
4. Начните реализацию сценариев
Открыть
step_definations \ определения1.js
Файл, щелкните серые кнопки на каждом шаге, чтобы сгенерировать заглушку кода определения шага.Обратите внимание, что теперь кнопка рядом с шагом является оранжевый, что означает, что шаги имеют соответствующие функции определения шага, но они еще не реализованы.
Вы также можете заметить, что код загрузки модели уже был добавлен в этот файл, поэтому в коде при создании проекта вы можете использовать эту переменную модели непосредственно для доступа к этим объектам.
Теперь вы можете открыть
Model1.tmodel
Файл, выберите объект из дерева модели, выберите вкладку «Действия/свойства», а затем скопируйте метод из списка и добавьте их в сценарий.Чтобы реализовать определения шага, сначала реализовать шаг « Удача Блокнот приложений открывается», вы можете использовать API «util.launchprocess» для запуска процесса блокнота:
После написания кода вы можете проверить его, щелкнув правой кнопкой мыши на шаге, и нажмите кнопку «Запускать этот шаг» на панели инструментов STEP:
Это просто запустит шаг для цели отладки, а если добиться успеха, ваш блокнот должен быть запущен.
Перед внедрением шагов остальных мы должны добавить функции крючка, чтобы минимизировать окно Cuketest, когда сценарий запускается, и восстановить окно Cuketest, когда запущен заканчивается, мы можем достичь этого в
BeForall
иПослеобеда
крючки. Для получения дополнительной информации о крючках вы можете прочитать BDD Web Automation 04: крючки и тайм-аут Отказ Добавьте файл “Поддержка/hooks.js” и поместите следующий контент:В Cooks.js мы устанавливаем шаг тайм-аута, чтобы быть на 20 секунд вместо по умолчанию 5 секунд, что немного коротко для скрипта автоматизации Windows. Также в
BeForall
Мы минимизируем окно Cuketest, прежде чем запускать какие-либо сценарии, подождите 1 секунду, пока минимизация фактически не вступает в силу, так что она не будет вмешиваться в тестируемое пользовательское интерфейс приложения при выполнении Automatino.
5. Реализуйте все шаги автоматизации
Теперь мы можем реализовать второй шаг:
В этом этапе определение функции Sub, измените имя параметра, чтобы быть «Text», и перетащите объект «Text Editor» из Model Manager к функции, выберите
Установить
Метод и заполните параметр «Текст» в нем, код является следующим:Предположим, вы открыли блокнот, теперь вы можете щелкнуть правой кнопкой мыши текст шага, и выберите «Запустите этот шаг», как вы сделали для первого шага, он минимизирует Cuketest, установить содержимое блокнота «Hello World», а затем Восстановить окно Cuketest. Если этот шаг успешно работает, вы можете добавить шаги отдыха аналогично.
Чтобы сохранить абзац, я вставю все определения1.js код ниже:
Чтобы убедиться, что он успешно работает в повторном запуске, он удалит существующий файл перед сохранением.
6. Продолжительность
Нажмите кнопку «Выполнить», она запускает эти два сценария, а затем откройте тестовый отчет, как следующее:
Резюме
В этой статье мы успешно создали скрипт BDD, который может автоматизировать блокнот и генерировать отчет о тестировании. С помощью модели теста, которая управляет тестовыми объектами, код упрощается и проще для обслуживания. Cuketest обеспечивает возможность отладки, которые могут запускать сценарий пошаговой.
В следующей статье мы расскажем о том, как организовать объектные модели в модельном менеджере, чтобы они были более организованными. Кроме того, мы расскажем о том, как обновить свойства в тестовом объекте, чтобы он мог работать между Windows с другим языком отображения.
Некоторые другие показания о автоматизации Windows с использованием Node.js:
- Автоматизация Windows 01 – Начало работы с Calculator Automation
- Автоматизация приложений Windows 02: Отправить почту с почтовым клиентом