Драйвер приложения Win: как запускать тесты на другом компьютере

Я действительно из фона закодированного пользовательского интерфейса и начал использовать драйвер приложения Win для тестирования приложения WPF. Пожалуйста, простите меня, если мне что-то не хватает в Win App Driver. Хорошая новость в том, что он работает на моей машине разработки!

Когда я разрабатывал закодированные тесты пользовательского интерфейса, я мог скопировать заказанные тесты и свою тестовую dll приложения на любой компьютер, установить VS Test Agent и запустить там свои тесты. Таким образом, наши клиенты и т. Д. Могут запускать наши автоматизированные тесты без Visual Studio и т. Д., А VS Test Agent предоставляется бесплатно.

Я запустил тесты из командного файла Windows, подобного приведенному ниже.

C:
cd codedui
set mstestPath="C:\Program Files (x86)\Microsoft Visual 
Studio\2017\TestAgent\Common7\IDE"

%mstestpath%\mstest /testcontainer:WinAppD_OrderedTest- 
AcceptanceTest_Logon.orderedtest 

pause

У меня вопрос: могу ли я сделать это с помощью тестов Win App Driver? Я попробовал, и он сказал, что не может найти «appium-dotnet-driver.dll» и «WebDriver.dll», я скопировал их в ту же папку, что и мой заказанный тест, файл bat и т. Д., А затем он попросил еще 3 dll. (Newtonsoft.dll, WebDriver.Support.dll и Castle.Core.dll). Я скопировал и эти три.

Теперь он просто говорит, что не может найти Castle.Core. Что меня смущает, так это то, что он запросил 5 dll, я скопировал их, и это устранило проблему для первых 4, почему он не находит Castle.Core.dll? В качестве альтернативы, есть ли более простой способ сделать это с помощью Win App Drivery?

Большое спасибо за любой совет от тестировщика Coded UI, который хочет перейти на драйвер веб-приложения!


person Ewan    schedule 09.11.2018    source источник


Ответы (1)


Вместо того, чтобы вручную копировать файлы, было бы намного лучше настроить ваши зависимости как пакеты nuget, а затем просто выполнить nuget restore на своем удаленном сервере.

Microsoft предоставляет пакет Appium.WinAppDriver nuget, который при добавлении в ваш проект тестирования пользовательского интерфейса предоставит все необходимые функции для тестирования вашего проекта.

Если вы используете пакет версии 4.0 или выше, документация на GitHub немного устарела. Вы должны использовать AppiumOptions() API для создания нового сеанса

// Set up the session
var opt = new AppiumOptions();
opt.AddAdditionalCapability("app", @"path/to/your/application.exe");
opt.AddAdditionalCapability("platformName", "Windows");
var session = new WindowsDriver<WindowsElement>(new Uri(WindowsApplicationDriverUrl), opt);

// Click a button
session.FindElementByName("MyButtonName").Click();

// Tear down
session.Close();
session.Dispose();
person Dan    schedule 19.11.2019