Шта је селен? Увод у испитивање аутоматизације селена

Преглед садржаја:

Anonim

Шта је селен?

Селениум је бесплатни (отворени извор) аутоматизовани оквир за тестирање који се користи за валидацију веб апликација у различитим прегледачима и платформама. Можете да користите више програмских језика као што су Јава, Ц #, Питхон итд. За креирање скрипти за тестирање селенија. Тестирање обављено помоћу алата за испитивање селена обично се назива испитивање селена.

Софтвер Селениум није само један алат, већ и низ софтвера, а сваки део задовољава различите потребе организације за тестирање селенијског квалитета. Ево листе алата

  • Интегрисано развојно окружење за селен (ИДЕ)
  • Даљински управљач селена (РЦ)
  • ВебДривер
  • Селен Грид
Увод у селен

Тренутно су Селениум РЦ и ВебДривер спојени у један оквир да би се формирао Селениум 2 . Иначе, селен 1 се односи на селен РЦ.

Кликните овде ако видео снимку није доступан

У овом упутству ћете научити:

  • Шта је селен?
  • Ко је развио селен?
  • Питање истог порекла
  • Рођење даљинског управљача селена (Селениум РЦ)
  • Рођење селенске мреже
  • Рођење селена ИДЕ
  • Рођење ВебДривера
  • Рођење селена 2
  • Па, зашто име Селен?
  • Кратки увод Селениум ИДЕ
  • Кратки увод Селен даљински управљач (Селениум РЦ)
  • Кратки увод ВебДривер
  • Селен Грид
  • Напомена о подршци за прегледач и окружење
  • Како одабрати прави алат за селен за ваше потребе
  • Поређење селена и КТП-а (сада УФТ)
  • Предности КТП над селеном

Ко је развио селен?

Будући да је Селениум колекција различитих алата, имао је и различите програмере. Испод су кључне особе које су дале значајан допринос пројекту Селениум

Пре свега, селениј је креирао Јасон Хуггинс 2004. године . Инжењер у компанији ТхоугхтВоркс, радио је на веб апликацији која је захтевала честа тестирања. Схвативши да понављано ручно тестирање њихове апликације постаје све неефикасније, створио је ЈаваСцрипт програм који ће аутоматски контролисати акције прегледача. Овај програм је именовао „ ЈаваСцриптТестРуннер “.

Видевши потенцијал ове идеје да помогне аутоматизацији других веб апликација, направио је ЈаваСцриптРуннер отвореног кода који је касније преименован у Селениум Цоре .

Питање истог порекла

Смернице Истог порекла забрањују ЈаваСцрипт коду приступ елементима са домена који се разликује од места где је покренут . На пример, ХТМЛ код на ввв.гоогле.цом користи ЈаваСцрипт програм „рандомСцрипт.јс“. Исте смернице порекла ће омогућити рандомСцрипт.јс-у приступ страницама на гоогле.цом, као што су гоогле.цом/маил, гоогле.цом/логин или гоогле.цом/сигнуп. Међутим, не може да приступи страницама са различитих веб локација, као што су иахоо.цом/сеарцх или гуру99.цом, јер припадају различитим доменима.

То је разлог зашто су пре Селениум РЦ тестери морали да инсталирају локалне копије Селениум Цоре (ЈаваСцрипт програм) и веб сервера који садржи веб апликацију која се тестира како би припадали истој домени

Рођење даљинског управљача селена (Селениум РЦ)

Нажалост; тестери који користе Селениум Цоре морали су да инсталирају целу тестирану апликацију и веб сервер на сопствени локални рачунар због ограничења која намеће иста политика порекла. Тако је други инжењер ТхоугхтВорк-а, Паул Хаммант , одлучио да креира сервер који ће деловати као ХТТП проки да би „подвалио“ прегледач верујући да Селениум Цоре и веб апликација која се тестира потичу са истог домена. Овај систем је постао познат под називом Селениум даљински управљач или Селениум 1 .

Рођење селенске мреже

Селениум Грид је развио Патрицк Лигхтбоди како би удовољио потреби да се што је више могуће смањи време извршавања теста. У почетку је систем назвао „ Хостинг КА “. Био је способан да снима снимке екрана прегледача током значајних фаза, као и да истовремено шаље команде Селениум на различите машине.

Рођење селена ИДЕ

Јапански Схиниа Касатани је креирао Селениум ИДЕ , Фирефок екстензију која може аутоматизовати прегледач помоћу функције снимања и репродукције. Дошао је на ову идеју да додатно повећа брзину у стварању тест случајева. Даровао је селениум ИДЕ пројекту Селениум 2006. године .

Рођење ВебДривера

Симон Стеварт створио ВебДривер око 2006. године када су прегледачи и веб апликације постајали све моћнији и рестриктивнији са ЈаваСцрипт програмима попут Селениум Цоре. То је био први тест за више платформи који је могао да контролише прегледач са нивоа ОС-а.

Рођење селена 2


У 2008. години , цела Селен тим је одлучио да споји вебдривер и селен РЦ да се формира више моћан алат који се зове Селен 2 , са ВебДривер је језгро . Тренутно се Селениум РЦ још увек развија, али само у режиму одржавања. Већина напора Пројекта Селениум сада је усредсређена на Селениум 2.

Па, зашто име Селен?

Име Селениум настало је из шале коју је Јасон једном залутао свом тиму. Током развоја Селениум-а, још један оквир за аутоматизовано тестирање направио је компанија под називом Мерцури Интерацтиве (да, компанија која је првобитно направила КТП пре него што га је ХП купио). Будући да је селен познати антидот за тровање живом, Јасон је предложио да га преузму име и његови саиграчи. Дакле, тако смо морали назвати овај оквир до данас.

Кратки увод Селениум ИДЕ

Интегрисано развојно окружење селена (ИДЕ) је најједноставнији оквир у пакету Селениум и најлакши је за научити . То је додатак за Фирефок који можете да инсталирате најлакше као што можете и са осталим додацима. Међутим, због своје једноставности, Селениум ИДЕ треба користити само као алат за израду прототипова . Ако желите да направите напредније тестове, мораћете да користите Селениум РЦ или ВебДривер.

Кратки увод Селен даљински управљач (Селениум РЦ)

Селениум РЦ је дуго био водећи оквир за тестирање целог пројекта Селениум. Ово је први алат за аутоматизовано веб тестирање који је корисницима омогућио да користе програмски језик који преферирају . Од верзије 2.25.0, РЦ може подржавати следеће програмске језике:

  • Јава
  • Ц #
  • ПХП
  • Питхон
  • Перл
  • Руби

Кратки увод ВебДривер

ВебДривер се показао бољим од Селениум ИДЕ-а и Селениум РЦ-а у многим аспектима. Примењује модернији и стабилнији приступ у аутоматизацији радњи прегледача. ВебДривер, за разлику од Селениум РЦ, не ослања се на ЈаваСцрипт за тестирање аутоматизације Селениум. Он контролише прегледач директном комуникацијом са њим.

Подржани језици су исти као они у Селениум РЦ.

  • Јава
  • Ц #
  • ПХП
  • Питхон
  • Перл
  • Руби

Селен Грид

Селениум Грид је алат који се користи заједно са Селениум РЦ за истовремено покретање паралелних тестова на различитим машинама и различитим прегледачима. Паралелно извршавање значи покретање више тестова одједном.

Карактеристике:

  • Омогућава истовремено покретање тестова у више прегледача и окружења.
  • Уштедите време изузетно.
  • Користи концепт чворишта и чворова . Чвориште делује као централни извор селенијевих наредби за сваки чвор повезан са њим.

Напомена о подршци за прегледач и окружење

Због својих архитектонских разлика, Селениум ИДЕ, Селениум РЦ и ВебДривер подржавају различите скупове прегледача и оперативног окружења.

ИД селена ВебДривер
Подршка прегледача Мозилла Фирефок Интернет Екплорер верзије 6 до 11, и 32 и 64-битна верзија Мицрософт Едге 12.10240 и новије (делимична подршка неким функционалностима у развоју) Фирефок 3.0 и новије верзије Гоогле Цхроме 12.0. и новије верзије Опера 11.5 и новије верзије Андроид - 2.3 и новије верзије за телефоне и таблете (уређаји и емулатори) иОС 3+ за телефоне (уређаји и емулатори) и 3.2+ за таблете (уређаји и емулатори) ХтмлУнит 2.9 и новије верзије
Оперативни систем Виндовс, Мац ОС Кс, Линук Сви оперативни системи у којима могу да раде горњи прегледачи.

Напомена: Селениум ВебДривер се назива наследником Селениум РЦ који је застарео и званично најавио СелениумХК.

Како одабрати прави алат за селен за ваше потребе

Оруђе Зашто одабрати?

ИД селена

  • Да бисте сазнали више о концептима аутоматизованог тестирања и селена, укључујући:
  • Команде селенесе попут типа, отвори, кликни и сачекај, потврди, провери итд.
  • Локатори као што су ид, име, кпатх, цсс селектор итд.
  • Извршење прилагођеног ЈаваСцрипт кода помоћу рунСцрипт-а
  • Извоз тест случајева у различитим форматима.
  • Стварање тестова са мало или нимало предзнања из програмирања.
  • Да бисте креирали једноставне тест случајеве и програмске пакете које касније можете да извезете у РЦ или ВебДривер.
  • Да бисте тестирали веб апликацију само против Фирефока и Цхроме-а.

Селен РЦ

  • Дизајнирати тест користећи изражајнији језик од селенског
  • Да бисте покренули тест против различитих прегледача (осим ХтмлУнит) на различитим оперативним системима.
  • Да бисте применили тестове у више окружења помоћу програма Селениум Грид.
  • Да бисте тестирали своју апликацију на новом прегледачу који подржава ЈаваСцрипт.
  • Да бисте тестирали веб апликације са сложеним АЈАКС заснованим сценаријима.

ВебДривер

  • Да бисте користили одређени програмски језик за дизајнирање вашег тест случаја.
  • Да бисте тестирали апликације богате функцијама заснованим на АЈАКС-у.
  • Да бисте извршили тестове на претраживачу ХтмлУнит.
  • Да бисте креирали прилагођене резултате теста.

Селен Грид

  • Да истовремено покренете своје селениум РЦ скрипте у више прегледача и оперативних система.
  • Да бисте покренули огроман тест пакет, који треба да завршите у најкраћем могућем року.

Поређење селена и КТП-а (сада УФТ)

Куицк Тест Профессионал (КТП) је власнички аутоматизовани алат за тестирање који је претходно био у власништву компаније Мерцури Интерацтиве пре него што га је Хевлетт-Пацкард стекао 2006. године . Суите Селениум Тоол има много предности у односу на КТП, као што је детаљно објашњено у наставку -

Предности и предности селена над КТП-ом

Селен КТП
Отворени извор , бесплатан за употребу и бесплатан. Комерцијални .
Веома проширив Ограничени додаци
Може да покреће тестове у различитим прегледачима Може да покреће тестове само у Фирефок-у , Интернет Екплорер-у и Цхроме-у
Подржава разне оперативне системе Може се користити само у оперативном систему Виндовс
Подржава мобилне уређаје КТП подржава аутоматизацију теста за мобилне апликације (иОС и Андроид) помоћу ХП решења названог - ХП Мобиле Центер
Може да извршава тестове док је прегледач минимизиран Потребно је да апликација на тесту буде видљива на радној површини
Може паралелно да извршава тестове . Може се извршавати само паралелно, али помоћу Центра за квалитет који је опет производ који се плаћа.

Предности КТП над селеном

Предности КТП над селеном
КТП Селен
Може да тестира и веб и десктоп апликације Може да тестира само веб апликације
Долази са уграђеним спремиштем објеката Нема уграђено спремиште објеката
Аутоматизује се брже од селена, јер је то потпуно опремљени ИДЕ. Аутоматизује се спорије, јер нема изворни ИДЕ, а само независни ИДЕ може да се користи за развој
Тестирање на основу података је лакше изводити јер има уграђене глобалне и локалне табеле података . Тестирање на основу података је гломазније, јер се за постављање вредности за своје податке о тестирању морате ослањати на могућности програмског језика
Може да приступи контролама у прегледачу (попут траке омиљених, траке адреса, дугмета Назад и Напред итд.) Не могу приступити елементима изван веб апликације која се тестира
Пружа професионалну корисничку подршку Не нуди се званична корисничка подршка.
Има изворну способност извоза тест података у спољне формате Нема изворну могућност извоза података о извођењу у спољне формате
Изграђена је подршка за параметаризацију Параметрирање се може извршити програмирањем, али је тешко применљиво.
Извештаји о тестирању се генеришу аутоматски Нема изворне подршке за генерисање извештаја о тестирању / грешкама.

Иако је јасно да КТП има напредније могућности, Селениум надмашује КТП у три главна подручја:

  • Цена (јер је селен потпуно бесплатан)
  • Флексибилност (због бројних програмских језика, прегледача и платформи које може подржати)
  • Паралелно тестирање (нешто за шта је КТП способан, али само уз употребу Центра за квалитет)

Резиме

  • Читав пакет за тестирање софтвера Селениум састоји се од четири компоненте:
  • Селениум ИДЕ, додатак за Фирефок који можете користити само у стварању релативно једноставних тест случајева и тест пакета.
  • Даљински управљач Селениум, познат и као Селениум 1, који је први алат Селениум који је корисницима омогућио да користе програмске језике у креирању сложених тестова.
  • ВебДривер, новији напредак који омогућава тест скриптама да комуницирају директно са прегледачем, контролишући га тиме са нивоа ОС-а.
  • Селениум Грид је такође алат који се користи са Селениум РЦ за извршавање паралелних тестова у различитим прегледачима и оперативним системима.
  • Селениум РЦ и ВебДривер су обједињени да би се формирао Селениум 2.
  • Селен је повољнији од КТП-а у погледу трошкова и флексибилности. Такође вам омогућава паралелно покретање тестова, за разлику од КТП-а где вам је дозвољено да покрећете тестове само секвенцијално.