Какво е инструмент за тестване на краставици? Въведение в рамката

Съдържание:

Anonim

Какво представлява краставицата?

Краставицата е инструмент за тестване, който поддържа развитие на поведението (BDD). Той предлага начин за писане на тестове, които всеки може да разбере, независимо от техническите си познания. В BDD потребителите (бизнес анализатори, собственици на продукти) първо пишат сценарии или тестове за приемане, които описват поведението на системата от гледна точка на клиента, за преглед и изписване от собствениците на продукти, преди разработчиците да напишат своите кодове. Рамката за краставици използва езика за програмиране Ruby.

В този урок за рамка за краставици ще научите:

  • Как работи BDD в автоматизацията на краставиците?
  • Предимства на краставицата
  • Краставица срещу Селен срещу ALM

Как работи BDD в автоматизацията на краставиците?

Помислете, че сте възложени да създадете модул за превод на средства в приложение за нетно банкиране.

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

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

Тестовият сценарий става по-сложен и сложен, тъй като ние обмисляме допълнителни функции като прехвърляне на сума X за интервал Y дни / месеци, спиране на прехвърляне по график, когато общата сума достигне Z и т.н.

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

За да се преодолее този проблем, е създаден BDD за краставици (поведенческо развитие). Това прави целия процес на тестване лесен за разработчик

В BDD на краставица, каквото и да напишете, трябва да премине към стъпки Дадено-кога-тогава . Нека разгледаме същия пример по-горе в BDD

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

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

Предимства на краставицата

  1. Полезно е да включите заинтересовани страни от бизнеса, които не могат лесно да четат кода
  2. Инструментът за тестване на краставици се фокусира върху опита на крайния потребител
  3. Стилът на писане на тестове позволява по-лесно повторно използване на кода в тестовете
  4. Бърза и лесна настройка и изпълнение
  5. Инструментът за тестване на краставици е ефективен инструмент за тестване

Краставица срещу Селен срещу ALM

В този раздел ще проучим разликата между краставица, селен и UFT.

Краставица HP ALM (QTP) Селен
  • Софтуерът за краставици е безплатен
  • QTP е скъп
  • Безплатно е
  • Софтуерът за краставици е инструмент за разработка, основан на поведение
  • Това е инструмент за функционална автоматизация
  • Това е инструмент за тестване на функционалност и производителност (Selenium Grid)
  • Приставката за инструмент за тестване на краставици работи по-бързо
  • Приставката е по-бавна в сравнение с краставицата и селена
  • Приставките са по-бавни от краставицата
  • Cucumber Framework поддържа и други езици, освен Ruby като Java, Scala, Groovy и др.
  • QTP поддържа само VB скрипт
  • Селенът поддържа Java, .Net и много други езици
  • Стъпките за автоматизиране на писането са съвместни усилия на тестери и разработчик
  • В QTP само тестерът пише стъпки за автоматизация
  • Подобно на инструмента за краставици, стъпките за автоматизиране на писането са съвместни усилия на тестерите и разработчика
  • Инструментът за тестване на краставици поддържа само уеб среда
  • Поддръжка на уеб, десктоп и всяко клиентско сървърно приложение
  • Поддържа само уеб среда