Experimenting with UI Testing approaches for .NET / MAUI
Перейти к файлу
redth ab745b7721 IDB uses 10882 not the port for the app agent 2022-09-07 19:56:39 -04:00
.vscode Swap out stream transport 2021-12-27 14:35:41 -05:00
Microsoft.Maui.Automation.AppHost iOS strings need to be not null for grpc response 2022-09-07 19:56:15 -04:00
Microsoft.Maui.Automation.Core Remove old packages 2022-09-07 18:21:23 -04:00
Microsoft.Maui.Automation.Driver IDB uses 10882 not the port for the app agent 2022-09-07 19:56:39 -04:00
Microsoft.Maui.Automation.Interactive Add start of dotnet interactive integration 2022-09-06 09:25:22 -04:00
Microsoft.Maui.Automation.Repl Remove old packages 2022-09-07 18:21:23 -04:00
Microsoft.Maui.Automation.Test Refactorings 2022-09-07 16:26:45 -04:00
external Add idb external 2022-09-05 23:59:37 -04:00
proto Fill in more driver functions 2022-09-05 07:24:27 -04:00
samples/SampleMauiApp Refactorings 2022-09-07 16:26:45 -04:00
tests/RemoteAutomationTests Fill in more driver functions 2022-09-05 07:24:27 -04:00
.gitignore Swap out stream transport 2021-12-27 14:35:41 -05:00
LICENSE Initial commit 2021-09-27 10:37:07 -04:00
Microsoft.Maui.Automation.sln Add start of dotnet interactive integration 2022-09-06 09:25:22 -04:00
README.md Update README.md 2022-09-03 11:36:56 -04:00

README.md

.NET MAUI UI Testing

.NET MAUI is the evolution of Xamarin.Forms, now it's time for the evolution of UI Testing .NET apps.

This project aims to bring an existing UI Testing spike and idea closer to a usable tool for creating UI Automation Tests for .NET MAUI apps. It is a simpler architecture than its predecessor Xamarin.UITest, and has a much cleaner integration than Appium, built with .NET MAUI apps first in mind.

Goals / Features

  • Support for: Android, iOS, MacCatalyst, WindowsAppSDK
  • gRPC communication channel between Driver and AppHost
  • .NET MAUI first view tree inspection and querying
  • Android - ADB integrations for advanced test manipulation
  • iOS - idb_companion for advanced test manipulation
  • Fluent Driver API for view querying/actions
  • CLI REPL for quickly navigating/testing/inspecting apps
  • YAML test syntax as an alternative approach to writing tests and rapidly iterating on them with file watching / 'hot reload' of tests

So far

  • View hierarchy walking/parsing for MAUI, Android, iOS/MacCatalyst, Windows
  • gRPC communication channel between driver and app host
  • View hierarchy walking for MAUI, Android, iOS/MacCatalyst, Windows
  • Basic Android Driver functions with ADB
  • Simple REPL with hard coded commands for printing a tree