Muszę regularnie testować dostępność i funkcjonowanie strony poświęconej filmom. Napisałem program Windows, który jest w stanie zautomatyzować przeglądarkę internetową zgodnie ze skryptem, więc to zadanie jest w zasadzie rozwiązane. Teraz muszę zautomatyzować mobilną wersję tej aplikacji internetowej: natywną aplikację na iOS i natywną aplikację na Androida.Jak mogę automatycznie przetestować funkcjonalność aplikacji na iOS i Androida?
Te aplikacje są źródłami zamkniętym, więc nie można ich w żaden sposób zmodyfikować. Myślę, że aplikacja testowa powinna zostać wdrożona na urządzeniach testowych (iPhone, iPad, Galaxy Tab, Galaxy S II), ale muszę mieć możliwość zdalnego sterowania nią. Chodzi mi o to, że chciałbym stworzyć połączenie między urządzeniami testowymi i komputerem, przesłać skrypty testowe z komputera na urządzenia, uruchomić je i pobrać wyniki testu na komputer. Skrypt testowy powinien uruchomić aplikację do przetestowania, manipulować jej GUI (wypełnić pola edycyjne, przyciski itd.) I jakoś reagować na jej reakcje, na przykład analizując GUI (istnienie niektórych elementów GUI, ich podpisów itp.) , analizowanie zrzutów ekranu i/lub przeglądanie pakietów IP.
Napisałem wiele podobnych programów testowych dla systemu Windows: użyłem ShellExecute, PostMessage, FindWindow, biblioteki WinPcap itp., Więc wiem, jak taki program powinien działać. Ale ponieważ nigdy nie pisałem aplikacji na mobilne systemy operacyjne, nie wiem nawet, czy istnieją podobne API i biblioteki dla iOS i Androida.
Chciałbym wiedzieć, od czego zacząć, to znaczy, które SDK i narzędzia programistyczne mogą być wykorzystane do napisania takiej aplikacji. Jestem również zainteresowany rozwiązaniami komercyjnymi. Naprawdę doceniłbym każdą pomoc.
"Skrypt testowy powinien uruchomić testowaną aplikację, manipulować jej GUI (wypełnić pola edycyjne, przyciski itp.)" Nie jest możliwe dla iOS (może być możliwe z jailbreak), nie wiem o Androidzie – msk
@MSK Dzięki. To jest zła wiadomość :(Czy można uruchomić aplikację na iOS na Mac OS X, emulator i zautomatyzować ją tak, jakby była to aplikacja na komputer? – kol
Jeśli używasz makra myszy/klawiatury, nie rozumiem, dlaczego nie, dla Androida możesz sprawdzić małpa http://developer.android.com/tools/help/monkeyrunner_concepts.html – mario