Cum automatizam testele pentru aceeasi aplicatie mobile pe iOS si pe Android?

Raspunsul la aceasta intrebare ne-a venit de la Costin Ion prin prezentarea din luna martie de la TdT Bucuresti: Cross platform solution for mobile automation .

Problema cu care s-a intersectat Costin si probabil multi dintre dintre noi a fost: unificarea testele scrise pentru Android si pentru iOS (single test, multiple platforms). Solutia aleasa a fost appium care permite rularea aceluiasi test si pe Android si pe iOS. Si in plus, cu appium poti testa atat aplicatii native, cat si aplicatii web si aplicatii hybrid. Spre deosebire de alte tooluri de pe piata (e.g Monkeytalk) pentru a automatiza aplicatia nu trebuie adaugata o noula librarie in codul sursa, ba chiar codul sursa nu este necesar!!!

Tot la partea de “How it works” am aflat ca appium

  • furnizeaza un API bazat pe Selenium Webdriver
  • foloseste libraria de Apple Instruments pentru iOS
  • pe Android foloseste frameworkul UiAutomator pentru platformele mai noi si Selendorid pentru platformele Android mai vechi

Pe langa API-ul bazat pe Webdriver, appium vine cu functionalitati aditionale care sa ajute in implementarea de teste automate mai robuste:

  • capabilitati de instalare si dezinstalare a aplicatiei ce se testeaza, eliminand astfel procesul complicat de instalare a ultimei versiuni a aplicatiei de testat
  • un modul Inspector (similar Firebug) pentru a asista cu identificarea obiectelor din aplicatie
  • un modul Recorder pentru o rapida prototipizare de teste automate

De asemenea prezentarea ne-a oferit sansa sa vedem si partea de integrare cu diverse servicii cloud de genul Sauce Labs.

O alta parte interesanta a prezentarii a fost si “Future trends in mobile automation” de unde am aflat ca Selenium 3  cu ajutorul celor de la appium, ios-driver si selendroid vrea sa devina un tool user-focused de automatizare si pe mobile.

Inainte de a degusta pizza (Multumim Optaros pentru sala si pizza) am vazut cum poti sa inveti un robot sa se joace angry birds 🙂

 

Ne vedem data viitoare,

Andrei Pirvulescu