A Robot Framework egy általános nyílt forráskódú automatizáló keretrendszer. Tesztek és robotikai folyamatok automatizálására használható.
Itt most a Selenium böngészőautomatizáló eszközzel fogjuk használni.
Webhely:
A leírásban a Windows telepítések a choco paranccsal vannak leírva, ami a Chocolatey csomagkezelő része.
Windowson:
choco install python
Debian GNU/Linuxon alapból rendelkezésre áll.
Ha Python most lett telepítve, akkor új parancsablakban kell kiadni:
pip install robotframework
Alapértelmezetten útvonalba kerül.
pip3 install robotframework
Kapunk egy figyelmeztetést, hogy nincs útvonalban a /home/username/.local/bin könyv.
pip3 install robotframework Collecting robotframework Downloading robotframework-5.0.1-py3-none-any.whl (639 kB) |████████████████████████████████| 639 kB 8.5 MB/s Installing collected packages: robotframework WARNING: The scripts libdoc, rebot and robot are installed in '/home/andras/.local/bin' which is not on PATH. Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location. Successfully installed robotframework-5.0.1
Útvonalba tesszük a ~/.local/bin könyvtárat:
zsh esetén:
nano ~/.zshrc
bash esetén:
nano ~/.bashrc
A fájl végére:
export PATH=$PATH:~/.local/bin
Új terminálba lépve kapunk három parancsot:
A robot parancs fontos, mert ezzel fogjuk futtatni a tesztet.
rebot --version robot --version
pip install robotframework-selenium2library
Ellenőrizzük:
pip list
A Visual Studio Code telepítése Windows alatt:
choco install vscode
A Visual Studio Code bővítményei:
Linux esetén kapunk egy chromedriver_linux64.zip, Windows esetén chromedriver_win32.zip fájlt. A tartalmát kicsomagoljuk, kapunk egy chromedriver nevű állományt. Windows esetén chromedrive.exe
Tegyük útvonalba az állományt.
Linux alatt például másoljuk ide:
/usr/local/bin
Windows alatt például ide:
C:\Windows
Készítsünk egy Hello.robot nevű fájlt, a következő tartalommal:
*** Settings *** Library SeleniumLibrary *** Test Cases *** Teszteset1 Open Browser https://szit.hu Chrome Sleep 3s Page Should Contain Oktatás
A teszt megnyitja a szit.hu weblapot, megnézi, hogy van-e a főoldalon „Oktatás” szó. Ha igen, a teszt teljesül. A Sleep, vagyis a várakozás, akkor hasznos, ha lassú a hálózat, és várni kell például a weboldal betöltésére.
# szöveg
A tesztet a robot paranccsal fogjuk futtatni.
Futtatás:
robot Hello.robot
A lehetséges kimenet:
robot Hello.robot ============================================================================== Hello ============================================================================== Teszteset1 Teszteset1 | PASS | ------------------------------------------------------------------------------ Hello | PASS | 1 test, 1 passed, 0 failed ============================================================================== Output: /home/janos/dev/app01/output.xml Log: /home/janos/dev/app01/log.html Report: /home/janos/dev/app01/report.html
*** Setting *** Library SeleniumLibrary *** Test Cases *** Recept keresése Open Browser https://szit.hu Chrome Input Text name:q recept Press Keys name:q ENTER Page Should Contain Gluténmentes
*** Setting *** Library SeleniumLibrary *** Keywords *** Input Search [Arguments] ${word} Input Text name=q ${word} *** Test Cases *** Recept keresése Open Browser https://szit.hu Chrome Sleep 3s Input Search recept
Futtatás:
robot szithu.robot
*** Setting *** Library SeleniumLibrary *** Test Cases *** Input 30, 35-re 525 az elvárás Open Browser http://localhost:3000 Chrome Input Text id:base 30 Input Text id:height 35 Click Element id:calcButton Sleep 3s Close Browser
*** Setting *** Library SeleniumLibrary *** Test Cases *** Input 30, 35-re 525 az elvárás Open Browser http://localhost:3000 Chrome Input Text id:base 30 Input Text id:height 35 Click Element id:calcButton ${area} Get Element Attribute id:area value Should Be Equal ${area} 525 Sleep 3s Input 100, 130-ra 6500 az elvárt Input Text id:base 100 Input Text id:height 130 Click Element id:calcButton ${area} Get Element Attribute id:area value Should Be Equal ${area} 6500 Close Browser
*** Setting *** Library SeleniumLibrary *** Keywords *** Input Base [Arguments] ${base} Input Text id=base ${base} Input Height [Arguments] ${height} Input Text id=height ${height} Calc Button Click Element id=calcButton *** Test Cases *** Input 30, 35-re 525 az elvárás Open Browser http://localhost:3000 Chrome Input Base 30 Input Height 35 Calc Button Sleep 2s
A Visual Studio Code-ban tegyük fel a következő bővítményt:
A teszt indítható a Robocorp Code segítségével is.
Baloldalon az akciósávon megjelenik egy kis majom fejecskéhez hasonló ikon. Erre kattintva, megjelenik a Robocorp Code felülete.
Új taskot felül a + gombra kattintva lehet létrehozni.
A feladatok innen indíthatók „Run all tasks”-ra kattintva, de megkötés, hogy a feladatoknak egy tasks.robot nevű fájlba kell legyenek.