Шта је Роботијум?
Роботиум је андроид тест оквир за аутоматизацију тест случајева за матичне и хибридне апликације. Користећи Роботиум, програмер може створити снажне аутоматске случајеве за тестирање ГУИ-а за Андроид апликације. Поред тога, програмер је могао да напише функционални, системски и тест тестирања прихватања, ширећи многе Андроид активности.
У овом упутству ћете научити-
- Оквир за испитивање роботијума
- Како се користи Роботиум
- КОРАК 1) Спецификација испитивања дизајна
- КОРАК 2) Напишите ТЕСТ програм
- КОРАК 3) Покрените тест
- КОРАК 4) Добијте резултат теста
Оквир за испитивање роботијума
Стандардни оквир за тестирање Андроид-а има одређена ограничења као у наставку
- Није могуће обрадити више активности
- Изведба теста је спора
- Тест случајеви су сложени и тешки за имплементацију
Роботиум оквир је бољи избор за тестирање понашања на Андроид апликације
Роботиум је оквир отвореног кода и сматра се проширењем Андроид тест оквира. Користећи Роботиум, програмер може да креира робусне аутоматске ГУИ тест случајеве за Андроид апликације. Штавише, програмер може да напише функционалне, системске сценарије и сценарије теста прихватања који обухватају више Андроид активности.
Напредне карактеристике Роботиума
Часови за тест на роботијуму
Роботиум користи скуп класа ( цом.јаиваи.андроид.роботиум.соло ) за тестирање . Ова класа подржава тест случајеве који обухватају више активности. Соло је интегрисан са АцтивитиИнструментатионТестЦасе2.
Интеграциони роботијум и АцтивитиИнструментатионТестЦасе2
Тестер може писати тест случајеве без знања о дизајну апликације (тестирање црне кутије) користећи класе Роботиум тест случајева. То је изванредна карактеристика у поређењу са Андроид тест класама.
Како се користи Роботиум
Да бисте користили Роботиум у свом Андроид тест пројекту, требате следити доленаведене коракеКоришћење Роботиума за спровођење тестирања на Андроид апликацији. Да бисте гарантовали квалитет Андроид апликације, следите доњу процедуру
- Спецификација испитивања дизајна
- Развити тест програм
- Извршите тест случај на циљном уређају
- Прикупити резултат теста
Андроид апликација Поступак тестирања
КОРАК 1) Спецификација испитивања дизајна
- Ово је први корак за тестирање ваше апликације. У овом кораку дефинишете циљ који ће се тестирати. У вашој Андроид апликацији треба тестирати многе циљеве, попут корисничког интерфејса, активности, компоненти, услуга. Јасно дефинисање циља у вашој апликацији помоћи ће постизању широке покривености тестом.
- Планирајте да се спроведу типови испитивања (јединични тест, функционални тест, системски тест).
- Дизајнирајте тест случајеве за максимално покриће, али смањите број тест случајева. Што се више кода тестира, веће су шансе за рано откривање грешака.
КОРАК 2) Напишите ТЕСТ програм
Овај одељак вас води како да напишете тестни програм за Андроид помоћу Андроид Јунит теста и Роботиума. Претпоставимо да сте већ развили име Андроид програма ХеллоАндроид. Овај програм има неке функције описане у наставку:
- Прикажите текст „Здраво, свет!“ на екрану.
- Прикажите поруку ХеллоАндроид када корисник притисне дугме „Старт“
ХеллоАндроид Апплицатион
Системски захтеви
- Андроид платформа долази са унапред интегрисаним ЈУнит 3.0 оквиром.
- Да бисте креирали Андроид Тест Пројецт од Ецлипсе-а, рачунар мора да има инсталирану:
- Најновија верзија Андроид платформе (тренутно Андроид 8.1)
Ецлипсе ИДЕ можете да преузмете са уграђеним АДТ-ом (Андроид Девелопер Тоолс). Садржи основне Андроид СДК компоненте и верзију Ецлипсе ИДЕ-а.
За оквир тестирања Роботиум-а, требате уклонити библиотеку Роботиум са веб странице Роботиум-а.
Направите Андроид Тест Пројецт
- Кликните на Филе -> Нев -> Отхер
- Изаберите: Андроид -> Андроид Тест Пројецт према доњој слици -> Изаберите Нект
Направите нови Андроид тест пројекат
Напишите име свог тест пројекта. Као конвенција именовања, ваш тест пројекат треба да носи назив „ХеллоАндроидТест“
Додајте основу имена пробног пројекта на конвенцију именовања
Изаберите циљану апликацију на тесту. У овом случају, ово је ХеллоАндроид кликните Заврши
Изаберите циљану апликацију на тесту
Направите тест пакете
Базирајући се на спецификацијама теста, почели сте да креирате пакете за тест програм. Можете одабрати разне оквире за тестирање. У овом упутству бирам стандардни Андроид тест фрамеворк АцтивитиИнструментатионТестЦасе2 . Морате додати датотеку библиотеке Роботиум у директоријум либс у директоријуму вашег пројекта ако желите да тестирате помоћу Роботиум фрамеворк-а. (Креирате фасциклу либ у фасцикли вашег пројекта).
Тест случај дефинише уређај за извођење више тестова. Да бисте дефинисали тест случај, морате следити доњу структуру програма:
- Примени подкласу од
TestCase
. - Дефинишите променљиве инстанце које чувају стање чвора
- Иницијализујте стање фиксације надјачавањем сетУп ()
- Чишћење након теста заменом теарДовн ().
Структура програма испитивања
пакет цом.екампле.хеллоандроид.тест;импорт цом.екампле.хеллоандроид.ХеллоАндроид;импорт цом.јаиваи.андроид.роботиум.соло.Соло;импорт андроид.тест.АцтивитиИнструментатионТестЦасе2;импорт андроид.видгет.ТектВиев;јавна класа ХеллоАндроидТест проширује АцтивитиИнструментатионТестЦасе2 <ХеллоАндроид> {приватна ХеллоАндроид мАцтивити;привате ТектВиев мВиев;привате Стринг ресоурцеСтринг;приватно Соло соло;јавни ХеллоАндроидТест () {// ТОДО Аутоматски генерисани стуб конструкторасупер ("цом.екампле.хеллоандроид", ХеллоАндроид.цласс);}@Прегазитипротецтед воид сетУп () баца изузетак {// ТОДО Аутоматски генерисани квар методе// супер.сетУп ();мАцтивити = тхис.гетАцтивити ();соло = ново Соло (гетИнструментатион (), гетАцтивити ());мВиев = (ТектВиев) мАцтивити.финдВиевБиИд (цом.екампле.хеллоандроид.Р.ид.тектвиев2);ресоурцеСтринг = мАцтивити.гетСтринг (цом.екампле.хеллоандроид.Р.стринг.хелло_ворлд);}@Прегазитипротецтед воид теарДовн () баца изузетак {// ТОДО Аутоматски генерисани квар методе//супер.теарДовн ();соло.финисхОпенедАцтивитиес ();}публиц воид тестПрецондитион () {ассертНотНулл (мВиев);}/ * тест Циљна апликација садржи текстуални приказ „Хелло Ворлд!“ * /публиц воид тестСеарцхТект () {ассертЕкуалс (ресоурцеСтринг, (Стринг) мВиев.гетТект ());}/ * тест ХеллоАндроид Активност на циљној апликацији постоји * /публиц воид тестЦуррентАцтивити () баца изузетак {соло.ассертЦуррентАцтивити ("погрешна активност", ХеллоАндроид.цласс);}/ * тест корисничко сучеље апликације садржи дугме „Старт“ * // * пошаљи дугме за клик на догађај за циљање апликације * /публиц воид тестСеарцхБуттон () баца изузетак {боолеан фоунд = соло.сеарцхБуттон ("Старт");соло.цлицкОнБуттон ("Старт");ассертТруе (пронађено);}}
Додавање тест случајева
- У истом пакету са ТестСуите креирамо класе ТестЦасе
- Да бисте тестирали одређену активност, тј. ХеллоАндроид, створите пробни случај АцтивитиИнструментатионТестЦасе2 <ХеллоАндроид>
- У овој класи испитивач може да добије активност тестирања методом гетАцтивити ().
- Можете слободно креирати тест за активност тестирања стварањем методе са именом „тест + оригинално име методе“
- У методу испитивања, тестер може да користи функцију Андроид ЈУнит за упоређивање стварне вредности и очекиване вредности. Ове методе су приказане у наставку.
Примери метода Роботиум-а и Андроид Тестинг фрамеворк-а
Ови горњи пакети тестова потврдили су да ГУИ апликације мора да приказује текст „Хелло Ворлд!“ И да садржи назив дугмета „Старт“.
КОРАК 3) Покрените тест
Након што завршите са писањем програма за тестирање, покрените га помоћу следећих корака
- Повежите Андроид уређај са рачунаром (или покрените емулатор у случају да немате прави уређај).
- У свом ИДЕ-у кликните десним тастером миша на „Покрени као Андроидов тест јединице“
Покретање програма тестирања
Поред покретања теста на ИДЕ-у, тест можете покренути и на командној линији. У овом тестном програму тест пакет је цом.екампле.хеллоандроид.тест. У Линук терминалу можете користити следећу наредбу за покретање свих тестова у овом пакету:
$ адб схелл ам инструмент -в -е пакет цом.екампле.хеллоандроид.тест
КОРАК 4) Добијте резултат теста
Након извршења теста добијате резултате теста.
У овом тест програму извршавају се 4 методе испитивања. У овом случају су положени сви тестови.
Резултат теста у случају да су положени сви тест случајеви
У случају да тест случај не успе, излаз ће се приказати и показати вам који тест примери нису успели
Резултат теста у случају да сви тест случајеви нису успели
Примери изворног кода
Ови чланци укључују неке примере изворног кода који вам помажу да јасније разумете упутство и брзо надокнадите техничко знање
- ХеллоАндроид: Апликација на тесту.
- ХеллоАндроидТест: Тест програм који користи Андроид Тест фрамеворк