Въведение в Agile Testing

Agile testing е процес на тестване на софтуер. Следва принципа на разработката на софтуер Agile. Това е свързана методология за развитие, тъй като дейностите по разработване и тестване протичат паралелно тук. Разработката е съобразена с променящите се изисквания на клиентите.

Агилното тестване е непрекъснат процес. Всички членове на проекта участват в това. Тестването не е отделна фаза, по-скоро се извършва заедно с кодирането, в резултат на това крайният продукт е с високо качество, отговаря на изискванията на клиента. Тестването започва в началото на проекта и съществува съюз между тестване и разработка.

Основната цел на пъргавия екип е да постигне качество. Времевите рамки на пъргавото тестване са кратки (от 1 до 4 седмици) и са наречени Итерации. Тестването се извършва паралелно с разработването на итеративен модел.

Принципи на пъргавото тестване

1. Непрекъснато: осигурява обратна връзка непрекъснато, постоянно, така че продуктите да отговарят на нуждите на бизнеса.

2. Работа в екип: В друг софтуер тестовият екип е отговорен за тестване, но при гъвкаво тестване, заедно с тестовия екип, разработчиците и бизнес анализаторите участват еднакво в тестовете.

3. Време за реакция на обратна връзка: Тъй като бизнес екипът участва в гъвкаво тестване, обратната връзка е бърза и непрекъсната и затова времето за реакция на обратна връзка е много кратко.

4. Чист и опростен код: Намерените дефекти от пъргавия екип се коригират в рамките на една и съща итерация и по този начин кодът се поддържа чист и опростен.

5. Извършване на тестове: Тук тестването се извършва в момента на внедряване, докато в други процеси тестването се извършва след внедряването.

6. Леки документи: Agile тестери използват контролни списъци за многократна употреба, за да решат тестовете, които да бъдат взети. Документите могат да бъдат използвани за няколко цели, а използваните инструменти също са леки.

7. Разработка на тестово задвижване: Тук развитието се ръководи от тестване. Тестовите случаи се пишат в съответствие с изискванията, така че този подход се нарича Test Driven Development (TDD). В софтуера за тестване на водопад тестването се извършва в последната фаза.

Стойности на Agile Testing

  • Индивидите и комуникацията се избират чрез строг процес и инструменти. Процедурите и инструментите не се пренебрегват при пъргавото тестване, а вместо това се изграждат върху разумни, силни процеси и инструменти и тези инструменти също се използват. Правилото тук е, че тестерите задвижват инструментите и изходът зависи от тестерите, а не обратното.
  • Изборът, направен при пъргавото тестване, е функционален и използваем софтуер при неизползваема и изчерпателна документация. Основната цел тук е действителното тестване, а не сложните документи, чиято единствена цел е насочена към целта. Документите определено присъстват, ако член реши да напусне.
  • Участието на клиенти е тайната тук. Клиентът винаги е ангажиран и е във връзка с напредъка на проекта. Това означава, че клиентът трябва да има редовни срещи по време на целия проект, а не директно да бъде доставян след приключване на проекта. Това сигурно е допълнителна работа, но определено е по-добре от работата в грешна посока.

Всички необходими промени се приемат и прилагат. Въпреки че проектът следва план, той лесно се променя, когато ситуацията се промени. Така че човек не трябва да чака до края, за да разбере за променения сценарий и проектът да бъде уволнен поради промененото изискване.

Agile Методи за тестване

Има различни гъвкави методи за тестване като:

1. Развитие, поведено от поведение (BDD).

Развитието, поведено от поведението, подобрява комуникацията, така че всички членове разбират всяка функция преди да започне процесът. Разработчиците, анализаторите и тестерите са в непрекъсната комуникация.

2. Развитие на тест за приемане (ATDD).

Основната цел тук е да се включат всички членове на екипа, т.е. клиент, тестер и разработчик, тъй като и трите имат различни гледни точки. Клиентът се фокусира върху проблема, който трябва да бъде решен, разработчикът се фокусира върху това как ще бъде решен и целта на тестера е да види какво може да се обърка. Те се наричат ​​тестове за приемане, където са включени перспективи и на трите, описващи как системата ще функционира.

3. Изследователски тестове.

При такова тестване тестовият дизайн и неговото изпълнение вървят ръка за ръка. Акцентира се върху работещия софтуер над документацията. Индивидите и комуникацията са по-важни от процеса и инструментите. Изследователските тестове са по-адаптивни към промените. Плановете за изпитване се проектират и изпълняват в съответствие с откритията на тестерите.

Тестов план

При пъргаво тестване се изписва и актуализира тестов план всеки път. Включва:

  • Обхват на тестване
  • Нови функционалности, които се тестват
  • Ниво или видове тестове
  • Тестване на производителността и натоварването
  • Като се има предвид инфраструктурата
  • План за помощ
  • Планиране на ресурси
  • Резултати и основни етапи

Фази на жизнения цикъл на тежкия тест

Има 5 фази от жизнения цикъл на тежкия тест

  1. Оценка на въздействието, която означава събиране на принос от заинтересовани страни и потребители, което ще действа като обратна връзка за следващия цикъл на развитие.
  2. Планирано планиране на тестовете, при което всички заинтересовани страни се събират, за да планират процеса на тестване, срещи и резултати.
  3. Пуснете готовността, етап, в който се решава дали характеристиките, които са разработени, са готови да излязат на живо или не.
  4. Ежедневни скремове, които включват ежедневна постоянна сутрешна среща, за да се установи състоянието на теста и да се поставят цели за деня.
  5. Преглед на ловкостта, при който се провеждат седмични срещи за преглед със заинтересованите страни, за да се провери напредъкът.

Предимства на Agile Testing

Agile тестване има своите предимства. Това е както софтуер, спестяващ време, така и пари, тъй като намалява документацията и е много гъвкав и адаптивен към непрекъснатите промени в бизнеса. Редовната обратна връзка се получава от реалната употреба, така че когато достигне последния етап, има най-малка възможност потребителят да не е запознат с процеса.

Agile тестването е перфектният софтуер за ранно откриване на дефекти и тъй като проблемите се решават рано, цената на поправянето също се намалява. Крайният продукт е ориентиран към клиента и с високо качество. Непрекъснатата комуникация между екипите прави гъвкавото тестване успешно.

Препоръчителни статии

Това е ръководство за Agile Testing. Тук обсъдихме концепциите, фазите, ползите, тестовия план, методите, принципа и стойностите на пъргавото тестване. Можете да разгледате и другите ни предложени статии, за да научите повече -

  1. Какво е ETL тестване?
  2. Какво е Agile програмиране?
  3. Какво е Agile Sprint?
  4. Въпроси за интервю с Agile