Chcę wiedzieć, w jaki sposób mogę uzyskać identyfikatory lub nazwy elementów interfejsu użytkownika używanych w aplikacji mobilnej, które są używane w testowaniu automatyzacji urządzeń mobilnych, takich jak appium, monkey-talk, xamarian itp.Jak mogę uzyskać identyfikatory, nazwy lub ścieżki x dla elementów interfejsu użytkownika używanych w aplikacji mobilnej (Android/iOS) do testowania automatyzacji mobilnej?
Odpowiedz
To, co wyjaśniam, dotyczy mojego systemu (Windows 7), ale moje wyjaśnienia powinny być łatwo przetłumaczone na inne systemy.
wstępne:
- Kiedy chcesz zrobić Android automatyzacji testowania zawsze należy zainstalować Android SDK, więc zakładam, że już to zrobiły. Wywołaj ścieżkę do folderu sdk
<ANDROID_HOME>
(w tym samego folderusdk
) - Uruchom
<ANDROID_HOME>/SDK Manager.exe
. Wybierz najnowsze Android Narzędzia i SDK Android SDK Platform-tools i zainstalować je - podłączyć urządzenie, które chcesz przetestować na:
- Albo uruchomić emulator - to automatycznie połączone w systemie
- lub podłącz fizyczne urządzenie i zainstalować odpowiednie sterowniki USB. Po sprawdzeniu, czy urządzenie jest połączone z uruchomieniem polecenia
<ANDROID_HOME/platform-tools/adb.exe devices
- jeśli na liście znajduje się co najmniej jedno urządzenie, możesz jechać.
Gdy masz wszystko:
Uruchom <ANDROID_HOME>/tools/uiautomatorviewer.bat
. spowoduje to otwarcie ekranu, który pozwala wykonać zrzuty ekranu z podłączonego urządzenia. Zobacz poniżej obrazka:
Zrzut ekranu zostanie podjęta poprzez kliknięcie przycisku pod fioletowym prostokącie, whcih dodałem sztucznie. Czerwony jest dodawany przez narzędzie, ponieważ umieszczam na nim interesujący element. Możesz obserwować właściwości elementów po prawej stronie. Zazwyczaj są to właściwości, których można użyć do testowania natywnej aplikacji.
Jeśli chcesz przetestować elementy, które są załadowane w WebView
, byłoby lepiej, gdybyś użył Chrome remote debugging do uzyskania prawidłowych selektorów.
Przypis:
Jak widzę robisz pierwszych etapów testowania automatyki mobilnej, która jest obszarem Jestem bardzo zainteresowany do może Proponuję spojrzeć na ATMOSPHERE Struktura automatyzacji testów Androida. Nota prawna: Jestem jednym z jego twórców. Nadal - jest swobodnie dostępny i otwarty. Sądzimy również, że zapewnia on możliwości nieobsługiwane w innych frameworkach i jest łatwy do rozpoczęcia, więc mam nadzieję, że będzie dla ciebie przydatny!
C#
W moim przypadku ten kawałek kodu rozwiązać mój problem:
private IApp _app = ScenarioContext.Current.Get<IApp>("Application");
private readonly ILoginScreen _loginScreen;
private readonly IMainMenuScreen _mainMenuScreen;
public Login(ILoginScreen loginScreen, IMainMenuScreen mainMenuScreen)
{
_app.Repl();
_loginScreen = loginScreen;
_mainMenuScreen = mainMenuScreen;
}
używam języka Gherkin korzystając Xamarin w którym Repl() polecenie otwiera nowy cmd, w którym można wpisać polecenie drzewa i uzyskać strukturę drzewa elementów interfejsu użytkownika na określonym ekranie. Jest to pokazane na poniższym obrazku: