Globallogic

Automatizovan├ę testovanie mobiln├Żch a webov├Żch aplik├íci├ş

share

S pr├şchodom smartf├│nov a mo┼żnosti p├şsa┼ą aplik├ície do telef├│nov a tabletov vznik├í ├║plne nov├Ż IT segment, na ktor├Ż reaguje aj testovanie. Vznikaj├║ nov├ę technol├│gie a postupy, ako testova┼ą aplik├ície na mobiln├Żch zariadeniach.

Jednou z najv├Ą─Ź┼í├şch v├Żziev automatizovan├ęho testovania b├Żva testovanie viacer├Żch typov mobiln├Żch zariaden├ş a r├┤znych verzi├ş opera─Źn├Żch syst├ęmov (Android, iOS). Dokonca je mo┼żn├ę pou┼żi┼ą jeden k├│d na testovanie aj iOS, aj Android, aj web rozhrania. Po─Ćme si predstavi┼ą mo┼żn├ę rie┼íenia.

 

Appium

Jedn├Żm z l├şdrov v tejto oblasti je Appium. Appium je ÔÇťopen sourceÔÇŁ [1] n├ístroj nap├şsan├Ż v NodeJS. Je vhodn├Ż na sp├║┼í┼ąanie skriptov na testovanie nat├şvnych aplik├íci├ş, mobiln├Żch webov├Żch aplik├íci├ş a hybridn├Żch aplik├íci├ş na Androide alebo iOS pomocou protokolu Webdriver. M├í ┼íirok├║ z├íklad┼łu pou┼ż├şvate─żov a existuje ku nemu obsiahla dokument├ícia [2]. Appium je server, cez ktor├Ż sa p├║┼í┼ąaj├║ skripty, ─Źi u┼ż vo─Źi re├ílnym zariadeniam, alebo spusten├Żm cez emul├ítor.┬á

Ve─żkou v├Żhodou je pln├í kontrola nad cel├Żm procesom spustenia skriptov a nad konfigur├íciou emulovan├Żch zariaden├ş. ─Äal┼íou v├Żhodou je mo┼żnos┼ą nap├şsa┼ą testovacie skripty vo viacer├Żch jazykoch, ─Źi u┼ż Python, Java, PHP alebo Ruby. Rovnako je mo┼żn├ę spusti┼ą na mobilnom zariaden├ş mobiln├║ webov├║ aplik├íciu.┬á

Nev├Żhodou Appium je absencia testovania webovej aplik├ície na webovom prehliada─Źi na ÔÇťdesktopeÔÇŁ. Pre testovanie webovej aplik├ície na stolov├Żch po─Ź├şta─Źoch a laptopoch je jedn├Żm z vhodn├Żch a popul├írnych rie┼íen├ş napr. Selenium [3]. Toto v┼íak znamen├í rozdelenie b├ízy testovacieho k├│du pod─ża platformy.
Appium je dobre pou┼żite─żn├ę ak testovac├ş t├şm pracuje samostatne bez t├şmu developerov. K dispoz├şcii potrebuj├║ iba in┼ítalovate─żn├║ verziu aplik├ície, ktor├í je predmetom testovania.┬á

 

─îo ak chceme ma┼ą jeden testovac├ş k├│d pre v┼íetky platformy?

V posledn├Żch rokoch prich├ídza snaha zo strany v├Żvoj├írov ma┼ą jeden k├│d, z ktor├ęho sa generuj├║ aplik├ície pre viacer├ę platformy (Android, iOS, ale aj web). Jednou z t├Żchto technol├│gi├ş je React Native. Ruka v ruke prich├ídza aj mo┼żnos┼ą testova┼ą viacer├ę platformy s pou┼żit├şm jednej b├ízy k├│du pomocou CodeceptJS [4]. CodeceptJS je tie┼ż ÔÇťopen sourceÔÇŁ [5]. Testy s├║ p├şsan├ę v ┼ít├Żle tzv. BDD (Behavior-Driven Development), pou┼żit├şm syntaxe Gherkin. Na spustenie testov vo─Źi re├ílnym alebo emulovan├Żm zariadeniam sa d├í pou┼żi┼ą vy┼í┼íie spom├şnan├ę Appium. Na testovanie webovej aplik├ície je op├Ą┼ą mo┼żn├ę pou┼żi┼ą Selenium driver. Ak je teda potrebn├ę otestova┼ą aplik├íciu, ktor├í m├í rovnak├║ funkcionalitu na viacer├Żch platform├ích (Android, iOS, web), CodeceptJS je jedn├Żm z ve─żmi vhodn├Żch n├ístrojov pre automatizovan├ę testovanie. Nie je potrebn├ę deli┼ą b├ízu testovacieho k├│du pre nat├şvne a webov├ę aplik├ície.
Pre samotn├ę spustenie skriptov sa v r├ímci CodeceptJS vyberie n├ístroj, cez ktor├Ż sa testy sp├║┼í┼ąaj├║.

 

TestProject

─Äal┼í├şm zo zauj├şmav├Żch rie┼íen├ş pre vytv├íranie komplexn├Żch multiplatformov├Żch testov je TestProject. TestProject je pomerne nov├Ż projekt, pon├║kaj├║ci grafick├║ nadstavbu (GUI) pri vytv├íran├ş testov. Viac sa m├┤┼żete do─Ź├şta┼ą v na┼íom ─Ćal┼íom ─Źl├ínku TU.

 

Referencie:

  1. https://github.com/appium/appium
  2. http://appium.io/docs/en/writing-running-appium/running-tests/
  3. https://github.com/SeleniumHQ/selenium
  4. https://codecept.io/
  5. https://github.com/codeceptjs/CodeceptJS