Jak začít automatizovat s Robot Frameworkem

29. listopadu 2021

Automatizace je dnes velké a neustále dokola zmiňované téma. Způsobů jak automatizovat je několik, stejně tak jako nástrojů, které nám to umožňují. Jedním z nich je například Robot Framework. Náš kolega Rustem Salikzhanov si pro Vás dnes připravil návod, jak s Robot Frameworkem začít pracovat. Než se do toho pustíme, bylo by dobré i uvést jeho výhody i nevýhody, aby každý věděl zda je zrovna tento framework pro něj vhodný.

Pro a proti Robot Framework

Každý nástroj má výhody i nevýhody. Je vždy na každém zvážit, zda požadovaný nástroj (ne)naplní jeho očekávání. Právě z tohoto důvodu uvádíme několik pro i proti, které jsou pro nás klíčové v rozhodování na našich projektech.

PRO

Opensource, který je zdarma a podporuje testování

  • na základě klíčových slov (Keyword driven) 
  • založené na datech (Data driven)
  • založené na chování (Behaviour driven developoment)

Lze vyžít více než 40 různých knihoven, například

  • Appium  a Android knihovnu pro automatizaci mobilních aplikací
  • Database knihovu pro testování DB
  • možnost využítí i vlastní knihovny

Možnost pracovat v různých vývojových prostředích

  • Vlastní vývojové prostředí RIDE
  • Díky pluginům lze využít IDE
  • Podpora i některých textových editorů

Podpora pluginů pro integraci s CI a nasazení v Java

  • Jenkins
  • Maven
  • And

PROTI

Obtížná úprava reportů

  • reporty v HTML se velmi složitě upravují po individuální potřeby

Není podporán paralelní běh testů

  • Pokud potřebujeme šetřit automatizací čas při testování ve více prohlížečích nebo mobilních zařízení, máme v případě Robot Frameworku smůlu. Tuto funkci nepodporuje.

Nelze využívat vnořené cykly

  • RobotFramework nepodporuje vnořené cykly jako je for, while..

Užitečné odkazy

Pokud byste potřebovali pomoci s prací v RobotFrameworku, existuje velká a aktivní komunita k tomuto nástroji. Doporučujeme například využít komunitu na slacku (robotframework.slack.com).

Další možností jsou následující užitečné odkazy:

Robot Framework User Guide

SeleniumLibrary

BuiltIn

AppiumLibrary

Collections