Jak testují blondýny?
Nikol Ježková
Mluví “lidštinou”
Používají Behat
uživatel chce
zobrazit detail inzerátu
☺ BDD vývoj
☺ bussines pohled
Scenario:
Uživatel chce
odpovědět na inzerát
Instalace
● Composer
● Phar archiv
● Git
Php testovací
framework
$ behat
aktuální
specifikace
vhled do
aplikační logiky
srozumitelnost
kódu všem
parádní testy
features/advertisement.feature
Feature: Detail inzerátu
Uživatel chce zobrazit
inzerát, odpovědět na
inzerát a založit agenta
s podobnými nabídkami.
Gherkin
● samovysvělující
● řádkově orientovaný
● speciální slova
Given I am on "/prace/c-developer"
GIVEN funkcionalita Minku
WHEN nebo vlastní metody
THEN
[speciální slovo] [výkonný kód]
Scenario: Uživatel chce odpovědět na inzerát
Given I am on "/prace/c-developer"
When I fill in "Jméno" with "Jana"
And I fill in "E-mail" with "jana@example.com"
And I fill in "Životopis" with "cv.pdf"
And I check "Souhlasím s podmínkami"
And I press "Odpovědět"
Then I should see "Děkujeme"
I fill in
"Celé jméno"
with "Jana Nová"
I press "Odpovědět"
I should see
"C# programátor ...
default:
paths:
bootstrap: 'cestaK/bootstrap'
context:
class: cestaKFeatureContext
Konfigurace a rozšíření
● Mink, Sessions, Drivers
● behat.yml
/**
* @When /^Čekej (d+) vteřin?$/
*/
public function waitSeconds($seconds)
{
… php code …
}
WHEN Čekej 6 vteřin
● drivery: Selenium, Sahi
extensions:
BehatMinkExtensionExtension:
base_url: http://makalu.megajob.loc
javascript_session: selenium2
browser_name: firefox
goutte: ~
Javascript
@javascript: javascript_session
@javascript
Scenario: Uživatel chce založit agenta
Given I am on "/prace/c-developer_i203"
And Čekej 6 vteřin
When I press "Chci podobné nabídky"
Then I should see "Tak ať vám to vyjde!"
Then I should see
"Agent byl vytvořen."
The text "Agent byl vytvořen."
was not found anywhere in the text
of the current page.…………
http://megajob.cz/prace/c-developer …………
2 scénáře (1 prošel, 1 selhal)
14 kroků (13 prošlo, 1 selhal)
0m28.324s
specifikace
issueskód + testy
feature
1
2
3
4
http://m.Feedbando.com/behat

Nikol Ježková - Testování v Behatu