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

Фотография

Desktop Auto Testing


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

#1 FedorKorz

FedorKorz

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

  • Members
  • Pip
  • 2 сообщений
  • ФИО:Корж Ф. И

Отправлено 12 августа 2024 - 06:56

Классическая задача, автоматизация тестирования ПО. Есть desktop приложение, написано на C#, само gui на фреймворке Avalonia. Нужно покрыть автоестами, по возможности тестирование должно работать на двух основных ОС: windows, linux. На вход я получаю exe файл - черный ящик. Какие решения я нашел. 

 

1. Avalonia - Headless мод, позволяет запускать приложение в режиме без графической отрисовки, и выполнять простые действия клики, нажатия. Обращение к элементам через id указанных при создании элементов. В чем проблема: Я по сути пишу тесты в проекте с исходным кодом, это не черный ящик, я считайте с кодом напрямую взаимодействую. 

 

2. Второе решение это appium, не разбирался, но вроде пишут что там есть какой-то инспектор, который покажет мне id элементов готового приложения и дальше дело техники. 

 

 

3. Возможно нужно поискать готовое ПО, где уже решена проблема. 

 

Коллеги, прошу, подскажите как решаете похожие задачи, заранее спасибо! 


  • 0

#2 user12

user12

    Специалист

  • Members
  • PipPipPipPipPip
  • 897 сообщений
  • ФИО:Виктор
  • Город:Минск


Отправлено 12 августа 2024 - 07:22

Первый вариант конечно.

 

Для автоматизации десктопа, нет норм инструментов.

Есть Sikuli, но это по скриншотам

Есть AutoIt, но это только под Винду

Есть Winium, но тоже только под Винду


  • 1

#3 DashDash

DashDash

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

  • Members
  • Pip
  • 2 сообщений
  • ФИО:Дарья Инякина

Отправлено 08 сентября 2024 - 15:05

Code less инструментов нет.
Я пишу код c# в visual studio, использую NUnit framework и библиотеку FlaUI, хорошо контактирует с элементами не только по id , но и по имени и классу. Элементы ищу с помощью inspect.exe, идет по умолчанию с Windows SDK.
Раньше писала с библиотекой Selenium и WinappDriver, тоже хорошо работают.
Тестирую черный ящик.
  • 1

#4 FedorKorz

FedorKorz

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

  • Members
  • Pip
  • 2 сообщений
  • ФИО:Корж Ф. И

Отправлено 09 сентября 2024 - 08:56

Code less инструментов нет.
Я пишу код c# в visual studio, использую NUnit framework и библиотеку FlaUI, хорошо контактирует с элементами не только по id , но и по имени и классу. Элементы ищу с помощью inspect.exe, идет по умолчанию с Windows SDK.
Раньше писала с библиотекой Selenium и WinappDriver, тоже хорошо работают.
Тестирую черный ящик.

Да, после того как попробовал headless, перешел на flaui. Очень  удобно по итогу, да и альтернатив не особо много. 

 

Хочу уточнить, связка Selenium и WinappDriver позволяет находить элементы по xpath? И как инспектировать элементы? Можно с помощью  inspect от flaui?


  • 0

#5 DashDash

DashDash

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

  • Members
  • Pip
  • 2 сообщений
  • ФИО:Дарья Инякина

Отправлено 09 сентября 2024 - 18:16

Да, selenium и winappdriver могут искать по xpath, но очень неудобно, надо набить руку. Я очень редко пользовалась. Если нет id, удобнее по localized control type + name. Мне очень повезло в том проекте, были прописаны почти все id.
Инспектор flui идентичен инспектору windows, моя коллега пользуется им, то же самое.
Инспектировать очень просто, открываешь инспектор на пол экрана, наводишь мышь на элемент, инспектор выделяет его и прописывает все дерево.
Что мне понравилось в flaui, то что он может раскусить не только WPF, но и старье написанное на winforms. И если click не сработает, можно воспользоваться invoke.
  • 1


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

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