Behat рдФрд░ Mink рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ Symfony2 рдореЗрдВ рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдкрд░реАрдХреНрд╖рдг рд╕реНрдерд╛рдкрд┐рдд рдФрд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВ

PHP рдореЗрдВ рд▓рд┐рдЦреЗ рдЧрдП рд╡реЗрдм рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рдкрд░реАрдХреНрд╖рдг рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╡рд┐рдЪрд╛рд░ рдирдпрд╛ рдирд╣реАрдВ рд╣реИ рдФрд░ рдзреАрд░реЗ-рдзреАрд░реЗ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рджреИрдирд┐рдХ рдЕрднреНрдпрд╛рд╕ рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХрд░ рд░рд╣рд╛ рд╣реИред PHPUnit PHP рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП рдорд╛рдирдХ рдмрди рдЧрдпрд╛ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рдирдП Symfony2 рдлреНрд░реЗрдорд╡рд░реНрдХ рднреА рд╢рд╛рдорд┐рд▓ рд╣реИред рдирд┐рдпрдВрддреНрд░рдХ рдХреЗ рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП рд╕рд┐рдореНрдлрдиреА-рдорд╛рдирдХ рд╕реЗ рдПрдХреНрдореЗрдбреЗрдореЛ рдмрдВрдбрд▓реЗ рдХреА рд╕реНрдерд╛рдкрдирд╛ рдореЗрдВ, рдпрд╣ рд╡рд╣ рд╣реИ рдЬреЛ 1 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред рдореИрдВ рдмреЗрд╣рдЯ рдФрд░ рдорд┐рдВрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкрд░реАрдХреНрд╖рдг рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреЗ рд╡реИрдХрд▓реНрдкрд┐рдХ рддрд░реАрдХреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ, рдФрд░ рд╕реНрдерд╛рдкрдирд╛ рдФрд░ рдкрд░реАрдХреНрд╖рдг рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗ рд╡рд┐рд╡рд░рдг рдХрд╛ рд╡рд░реНрдгрди рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред

рдврд╛рдВрдЪрд╛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛


рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рд╣рдореЗрдВ рд╕реНрдерд╛рдиреАрдп рдореЗрдЬрдмрд╛рдиреЛрдВ , рдЗрдВрдЯрд▓ , рдЧрд┐рдЯ рдХреЗ рд╕рдорд░реНрдерди рдХреЗ рд╕рд╛рде рдЕрдкрд╛рдЪреЗ + рдкреАрдПрдЪрдкреА 5.3 рдХрд╛ рдПрдХ рдХрд╛рд░реНрдпрд╢реАрд▓ рдЧреБрдЪреНрдЫрд╛ рдЪрд╛рд╣рд┐рдПред рдореИрдВ рдЙрдиреНрд╣реЗрдВ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдФрд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдкрд░ рдзреНрдпрд╛рди рдХреЗрдВрджреНрд░рд┐рдд рдирд╣реАрдВ рдХрд░реВрдВрдЧрд╛ - рдиреЗрдЯрд╡рд░реНрдХ рдкрд░ рдкреНрд░рддреНрдпреЗрдХ рд╡реНрдпрдХреНрддрд┐рдЧрдд рдкреНрд░рдгрд╛рд▓реА рдХреЗ рд▓рд┐рдП рдпрд╣ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рдЬрд╛рдирдХрд╛рд░реА рд╣реИ, рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдбреЗрд╡рд▓рдкрд░ рдиреЗ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдпрд╣ рд╕рдм рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рд╣реИ (рдореБрдЭреЗ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╡рд┐рдХрд╛рд╕ рдПрдХ рд╕реНрдерд╛рдиреАрдп рдпрд╛ рдкрд░реАрдХреНрд╖рдг рдорд╢реАрди рдкрд░ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдФрд░ рдХрд╛рд░реНрдп рд╕реНрдерд▓ рдкрд░ рдирд╣реАрдВ)
рдЕрдЧрд▓рд╛ - рд╣рдореЗрдВ GitHub рдХреЗ рд╕рд╛рде рдЕрдкрдиреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ рдбрд╛рдЙрдирд▓реЛрдб рдФрд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдЯрд░реНрдорд┐рдирд▓ рдЦреЛрд▓реЗрдВ, рдЙрд╕ рдлрд╝реЛрд▓реНрдбрд░ рдкрд░ рдЬрд╛рдПрдВ рдЬрд╣рд╛рдВ рд╕реНрдерд╛рдиреАрдп рд╕рд╛рдЗрдЯреЗрдВ рд╕реНрдерд┐рдд рд╣реИрдВред

$ cd ~/Sites
$ git clone github.com/symfony/symfony-standard.git
$ cd symfony-standard


рд╣рдо рдЬрд╛рдВрдЪрддреЗ рд╣реИрдВ рдХрд┐ рдХреНрдпрд╛ рдЖрдкрдХрд╛ Apache + PHP Symfony2 рдореЗрдВ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреБрдХреНрдд рд╣реИ, рдЗрд╕рдХреЗ рд▓рд┐рдП рд╣рдо рдлреНрд░реЗрдорд╡рд░реНрдХ рдХреЗ рд╕рд╛рде рдЖрдкреВрд░реНрддрд┐ рдХреА рдЧрдИ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ:
$ php app/check.php
рдпрджрд┐ рдЖрдкрдХреЛ рдХрд┐рд╕реА рд╕реЗрдЯрд┐рдВрдЧ рдпрд╛ рдореЙрдбреНрдпреВрд▓ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ - рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ рдФрд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВред

рд╕реНрд╡рдпрдВ рдлреНрд░реЗрдорд╡рд░реНрдХ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВ (рдпрд╣ рд╡рд┐рдХреНрд░реЗрддрд╛рдУрдВ рдХреЗ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рд╕реНрдерд┐рдд рд╣реИ)ред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЯрд░реНрдорд┐рдирд▓ рдореЗрдВ рдЯрд╛рдЗрдк рдХрд░реЗрдВ:
$ php bin/vendors install
рдЙрд╕рдХреЗ рдмрд╛рдж, рдЖрдкрдХреЛ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдбрд┐рд╕реНрдкреНрд▓реЗ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП рдореИрдВ рджреЛ рдлрд╝рд╛рдЗрд▓реЛрдВ рдореЗрдВ рдмрджрд▓рд╛рд╡ рдХрд░рддрд╛ рд╣реВрдВ (рдЖрдкрдХреЗ рд░рд╛рд╕реНрддреЗ рдЕрд▓рдЧ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ, рдореИрдВ рдореИрдХ рдУрдПрд╕ 10.6 рдкрд░ рдорд╛рдирдХ рд░реВрдк рд╕реЗ рдЖрдкреВрд░реНрддрд┐ рдХреА рдЧрдИ рдЕрдкрд╛рдЪреЗ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддрд╛ рд╣реВрдВ):
- in / etc / рдореЗрдЬрдмрд╛рди рдореИрдВ рдпрд╣ рджрд░реНрд╢рд╛рддрд╛ рд╣реИ рдХрд┐ рдореЗрд░реА рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╕реНрдерд╛рдиреАрдп рд╣реИ, рдФрд░ рдиреЗрдЯрд╡рд░реНрдХ рдкрд░ рдЗрд╕рдХреЗ рд▓рд┐рдП рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рднреА рдирд╣реАрдВ рд╣реИ:
...
127.0.0.1 symfony-standard

- in /etc/apache2/extra/httpd-vhosts.conf рдкрд░

 <VirtualHost *:80> DocumentRoot "/Users/Standart-User/Sites/symfony-standard/web" ServerName t0002.loc <Directory "/Users/Standart-User/Sites/symfony-standard/web"> Options Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews AllowOverride All </Directory> </VirtualHost> 

Apache рдХреЛ рдкреБрдирд░рд╛рд░рдВрдн рдХрд░реЗрдВ, рдФрд░ рд╕рд┐рдореНрдлрдиреА-рдорд╛рдирдХ / app_dev.php рдкреГрд╖реНрда рдЦреЛрд▓рдХрд░ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ рдХрд╛рдо рдХреЗ рдкрд░рд┐рдгрд╛рдо рдХреА рдЬрд╛рдВрдЪ рдХрд░реЗрдВред рдпрджрд┐ рд╕рдм рдХреБрдЫ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рд╣рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЪрд┐рддреНрд░ рдорд┐рд▓рддреЗ рд╣реИрдВ:
рд╕рд┐рдореНрдлрдиреА-рд╕реНрдЯреИрдВрдбрд░реНрдб рд╕реНрдЯрд╛рд░реНрдЯ рдкреЗрдЬ

рдФрд░ рдЬрдм рдЖрдк рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рд░реВрдЯ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдЯрд░реНрдорд┐рдирд▓ рдореЗрдВ рдЯрд╛рдЗрдк рдХрд░рддреЗ рд╣реИрдВ
$ php app/console
рдлреНрд░реЗрдорд╡рд░реНрдХ рдХрдорд╛рдВрдб рдХреА рд╕реВрдЪреА рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВред рд╣рдо рдЕрдкрдиреЗ рд▓рд┐рдП рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдЙрдкрд▓рдмреНрдз рдХрдорд╛рдВрдб рдмреНрд▓реЙрдХ рдореЗрдВ рд╡рд┐рдХрд▓реНрдк рд╕реВрдЪреАрдмрджреНрдз рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рдмреАрд╣рдЯ рдХрдорд╛рдВрдб рдЗрд╕ рд╕реВрдЪреА рдореЗрдВ рдирд╣реАрдВ рд╣реИ

рдЗрд╕ рд╕реНрддрд░ рдкрд░, рд╣рдо рдорд╛рди рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рд╣рдо Symfony2 рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдореЗрдВ рдХрд╛рдордпрд╛рдм рд░рд╣реЗред

рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП рдорд┐рдВрдХ рдФрд░ рдмреЗрд╣рдЯ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ


рдЪреВрдВрдХрд┐ рдореИрдВ рдЬрд┐рди рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдкрд░ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рд╡реЗ рдореЗрд░реЗ ~ / рд╕рд╛рдЗрдЯ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд╣реИрдВ рдФрд░ рдореИрдВ Symfony2 рдврд╛рдВрдЪреЗ рдХреА рдкреНрд░рддреНрдпреЗрдХ рд╕реНрдерд╛рдкрдирд╛ рдХреЗ рд▓рд┐рдП рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП рдмрдВрдбрд▓ рд╕реНрдерд╛рдкрд┐рдд рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ - рдореИрдВрдиреЗ рдпрд╣ рдПрдХ рдмрд╛рд░ ~ / рд╕рд╛рдЗрдЯреЗрдВ / testuite.behat рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдХрд┐рдпрд╛ рдерд╛ , рдФрд░ рдлрд┐рд░ рдХрдиреЗрдХреНрдЯ рдХрд░реЗрдВ рдЕрдкрдиреА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдЕрдкрдиреА рд╕рд╛рдордЧреНрд░реАред

рд╕реНрдерд╛рдкрдирд╛ рдореЗрдВ рдЖрд╕рд╛рдиреА рдХреЗ рд▓рд┐рдП, рдореИрдВрдиреЗ GitHub рдкрд░ рдПрдХ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдмрдирд╛рдпрд╛, рд╡рд╣рд╛рдБ рд╕реЗ рдЖрдк рдЗрд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

 $ cd ~/Sites $ git clone https://github.com/livsi/testsuite.behat.git $ cd testsuite.behat 


рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдЗрд╕рдореЗрдВ рд╕рдмрдореЙрдбреНрдпреВрд▓реНрд╕ рдХрд╛ рдПрдХ рд╕реЗрдЯ рд╣реЛрддрд╛ рд╣реИ рдФрд░ рдпрд╣ рдирд┐рд░реНрджреЗрд╢ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рд╕рд┐рдореНрдлрдиреА 2 рдкрд░ рдЕрдкрдиреЗ рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ рдХреИрд╕реЗ рдкреВрд░рд╛ рдХрд┐рдпрд╛ рдЬрд╛рдПред рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреЛ рдХреНрд▓реЛрди рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рд╣рдореЗрдВ рд╕рдмрдореЙрдбреНрдпреВрд▓ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо рдХрдорд╛рдВрдб рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рддреЗ рд╣реИрдВ:
 $ git submodule update --init 


рдкрд░реАрдХреНрд╖рдг рдХрд┐рдЯ рдХреА рд╕реНрдерд╛рдкрдирд╛ рдХреЗ рд╕рд╛рде рд╕рдм рдХреБрдЫ рд▓рдЧрднрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЪреВрдВрдХрд┐ рдмреЗрд╣рдЯ рдФрд░ рдорд┐рдВрдХ рдореЗрдВ рд╕рдХреНрд░рд┐рдп рд╢рд╛рдЦрд╛рдПрдВ рд╡рд┐рдХрд╕рд┐рдд рд╢рд╛рдЦрд╛рдПрдВ рд╣реИрдВ, рди рдХрд┐ рдорд╛рд╕реНрдЯрд░ - рдЖрдкрдХреЛ рдЙрдирдореЗрдВ рдЬрд╛рдиреЗ рдФрд░ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рд╕реНрд╡рд┐рдЪ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
 $ cd ~/Sites/testsuite.behat/vendor/Behat/Behat/ $ git checkout --track -b develop origin/develop $ cd ~/Sites/testsuite.behat/vendor/Behat/Mink/ $ git checkout --track -b develop origin/develop 


рд╣рдо Testuite.behat рдХреЛ рд╕рд┐рдореНрдлрдиреА- standart рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╕реЗ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ


рдпрд╣ рд╕рдмрд╕реЗ рддреЗрдЬрд╝ рдХрджрдо рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рд╣рдореЗрдВ рдиреЗрдЯрд╡рд░реНрдХ рд╕реЗ рдХреБрдЫ рднреА рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рдмрд╕ рд╕рд┐рдореНрдлрдиреА-рд╕рд┐рдореНрдмрд┐рдпрди рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВред рдирд┐рд░реНрджреЗрд╢ рдкрд╣рд▓реЗ рдбрд╛рдЙрдирд▓реЛрдб рдХрд┐рдП рдЧрдП рдХреЛрдб рд╕реЗ рдЬреБрдбрд╝реЗ рд╣реЛрддреЗ рд╣реИрдВ, рдЬреЛ README.md рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╕реНрдерд┐рдд рд╣реЛрддреЗ рд╣реИрдВ

рдлрд╝рд╛рдЗрд▓ рдХреЛ рдЦреЛрд▓реЗрдВ ~ / рд╕рд╛рдЗрдЯреНрд╕ / рд╕рд┐рдореНрдлрдиреА-standart / app / autoload.php рдФрд░ рдирд┐рдореНрди рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЛ рдЬреЛрдбрд╝рдиреЗ (рдЖрдкрдХреЛ рдЕрдкрдиреЗ рд╣рд┐рд╕рд╛рдм рд╕реЗ рд░рд╛рд╕реНрддреЛрдВ рдХреЛ рд╕рд╣реА рдХрд░рдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ) рдЯреЗрд╕реНрдЯ рдмрдВрдбрд▓реЛрдВ рдХреЛ рд╕рд┐рдореНрдлрдиреА 2 рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП:
 // app/autoload.php $loader->registerNamespaces(array( // ... 'Behat\BehatBundle' => '/Users/Standart-User/Sites/testsuite.behat/vendor', 'Behat\Behat' => '/Users/Standart-User/Sites/testsuite.behat/vendor/Behat/Behat/src', 'Behat\Gherkin' => '/Users/Standart-User/Sites/testsuite.behat/vendor/Behat/Gherkin/src', 'Behat\Mink' => '/Users/Standart-User/Sites/testsuite.behat/vendor/Behat/Mink/src', 'Behat\MinkBundle' => '/Users/Standart-User/Sites/testsuite.behat/vendor', 'Goutte' => '/Users/Standart-User/Sites/testsuite.behat/vendor/Goutte/src', 'Zend' => '/Users/Standart-User/Sites/testsuite.behat/vendor/Zend/library', 'Behat\SahiClient' => '/Users/Standart-User/Sites/testsuite.behat/vendor/Behat/SahiClient/src', 'Buzz' => '/Users/Standart-User/Sites/testsuite.behat/vendor/Buzz/lib', // ... 

рдлрд╝рд╛рдЗрд▓ рдореЗрдВ ~ ~ рд╕рд╛рдЗрдЯреЗрдВ / рд╕рд┐рдореНрдлрдиреА-standart / рдРрдк / AppKernel.php рд╣рдо рджреЛ рдореБрдЦреНрдп рдмрдВрдбрд▓ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ - BehatBundle рдФрд░ BehatMinkBundle :
 // app/AppKernel.php if (in_array($this->getEnvironment(), array('dev', 'test'))) { // ... $bundles[] = new Behat\BehatBundle\BehatBundle(); $bundles[] = new Behat\MinkBundle\BehatMinkBundle(); // ... } 

рд╣рдо ~ / рд╕рд╛рдЗрдЯ / рд╕рд┐рдореНрдлрдиреА-standart / рдПрдкреНрд▓рд┐рдХреЗрд╢рди / config / config_dev.yml рдореЗрдВ рдЖрд╡рд╢реНрдпрдХ рдкреИрд░рд╛рдореАрдЯрд░ рд▓рд┐рдЦрддреЗ рд╣реИрдВ:
 # app/config/config_dev.yml framework: test: ~ # ... behat: ~ behat_mink: base_url: http://symfony-standart/app_test.php/ goutte: ~ # enable both Goutte sahi: ~ # and Sahi session 

рд╣рдо рдЬрд╛рдВрдЪрддреЗ рд╣реИрдВ рдХрд┐ рд╕рдм рдХреБрдЫ рд╕реНрдерд╛рдкрд┐рдд рд╣реИ рдФрд░ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЗрд╕рдХреЗ рд▓рд┐рдП рдЯрд░реНрдорд┐рдирд▓ рдореЗрдВ рд╕рд┐рдореНрдлрдиреА-рд╕реАрдмреАрдПрдХреНрд╕ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреА рдЬрдбрд╝ рд╕реЗ, рджрд░реНрдЬ рдХрд░реЗрдВ:
$ php app/console
рд╣рдореЗрдВ рдлреНрд░реЗрдорд╡рд░реНрдХ рдХреЗ рдХрдорд╛рдВрдб рдХреА рд╕реВрдЪреА рдорд┐рд▓рддреА рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рдЕрдм рдмреАрд╣рдЯ рдХрдорд╛рдВрдб рдореМрдЬреВрдж рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рд╕рдм рдХреБрдЫ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЖрд╡рд╢реНрдпрдХ рдмрдВрдбрд▓ рдЬреБрдбрд╝реЗ рд╣реБрдП рд╣реИрдВред

рдЦреБрдж рдХреЛ рдкрд░рдЦ рд░рд╣рд╛ рд╣реИ



рдмрдВрдбрд▓ рдХреЗ рд▓рд┐рдП рдПрдХ рдкрд░реАрдХреНрд╖рдг рдврд╛рдВрдЪрд╛ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд░реВрдЯ рд╕реЗ рдХрдВрд╕реЛрд▓ рдореЗрдВ рдХрдорд╛рдВрдб рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░реЗрдВ:
$ php app/console behat:bundle --init Acme\\DemoBundle
рд╡рд╣ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рд╕реБрд╡рд┐рдзрд╛рдПрдБ / src / Acme / DemoBundle рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдмрдирд╛рддрд╛ рд╣реИ

рдЗрд╕рдореЗрдВ рдПрдХ рдлрд╝рд╛рдЗрд▓ рдЬреЛрдбрд╝реЗрдВ, рдЬрд┐рд╕реЗ рд╣рдо рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕рд╛рдордЧреНрд░реА рдХреЗ рд╕рд╛рде рдлреАрдЪрд░ 1 рдХрд╣рддреЗ рд╣реИрдВред

 # language: ru :    AcmeDemoBundle       :     dev           "/app_dev.php"       200     "Congratulations! You have successfully installed a new Symfony application."     "Welcome!" :         "Run The Demo"     "/app_dev.php"      "Run The Demo"     "/app_dev.php/demo/"       200     "Available demos" 


рдпреЗ рдмрд╣реБрдд рд╣реА рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдкрд░реАрдХреНрд╖рдг рд╣реИрдВред рдкрд░реАрдХреНрд╖рдг рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдХрдВрд╕реЛрд▓ рдореЗрдВ рдХрдорд╛рдВрдб рджрд░реНрдЬ рдХрд░реЗрдВ:
$ php app/console behat --no-paths @AcmeDemoBundle рдФрд░ рд╣рдо рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рджреЗрдЦрддреЗ рд╣реИрдВ:
AcmeDemoBundle рд╕рд┐рдореНрдлрдиреА-рдорд╛рдирдХ рдкрд░реАрдХреНрд╖рдг рдкрд░рд┐рдгрд╛рдо

рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ рд╕реЗ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдХреЙрд▓ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЛ рд╕рд░рд▓ рдмрдирд╛ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ: рдкрд╣рд▓реЗ рдмреАрд╣рдЯ рд╕реЗ: рдЯреЗрд╕реНрдЯ: рдмрдВрдбрд▓ рдЯреВ рдмреАрд╣рдЯ: рдмрдВрдбрд▓ , рдФрд░ рдЕрдм рд╕рд┐рд░реНрдл рдмреАрд╣рдЯ рдХреЗ рд▓рд┐рдП ред

рдХрдВрд╕реЛрд▓ рдХрдорд╛рдВрдб рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдХреБрдВрдЬрд┐рдпреЛрдВ рдкрд░ рд╕рд╣рд╛рдпрддрд╛ рдЯрд╛рдЗрдк рдХрд░рдХреЗ рдкреНрд░рд╛рдкреНрдд рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИ
app/console help behat

рдмрд┐рд╣рдЯ рдФрд░ рдорд┐рдВрдХ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдореЗрдВ рдЕрдкреЗрдХреНрд╖рд╛рдХреГрдд рдХрдо рд╕рдордп рдмрд┐рддрд╛рдиреЗ рдХреЗ рдмрд╛рдж, рд╣рдореЗрдВ рд╕рд░рд▓ рдФрд░ рдкрдардиреАрдп, рд╕рд╣рдЬ рдЬреНрдЮрд╛рди рдпреБрдХреНрдд рдкрд░реАрдХреНрд╖рдг рдХреЗ рд░реВрдк рдореЗрдВ рдПрдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд▓рд╛рдн рдорд┐рд▓рддрд╛ рд╣реИ рдЬреЛ рдПрдХ рд╕рдордЭрдиреЗ рдпреЛрдЧреНрдп рднрд╛рд╖рд╛ рдореЗрдВ рд▓рд┐рдЦрд╛ рдЬрд╛рддрд╛ рд╣реИред рд╡реЗ рдЬрд▓реНрджреА рд╕реЗ рд▓рд┐рдЦреЗ рдЬрд╛рддреЗ рд╣реИрдВ рдФрд░ рдЬрд▓реНрджреА рд╕реЗ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рд╣реЛрддреЗ рд╣реИрдВред

рдзрдиреНрдпрд╡рд╛рдж


рдмрд┐рд╣рдЯ рдФрд░ рдорд┐рдВрдХ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдВрд╕реНрдЯреЗрдВрдЯрд┐рди рдХреБрдбреНрд░реАрдпрд╛рд╢реЛрд╡ (рдПрд╡рд░рдЬрд╝реЗрдЯ рд╣реИрдмрдпреВрд╕рд░ ) рдХреЛ рд╡рд┐рд╢реЗрд╖ рдзрдиреНрдпрд╡рд╛рдж, рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд╕рдорд░реНрдерди рдФрд░ рдЗрд╕рдХреЗ рдЖрдЧреЗ рд╕реБрдзрд╛рд░ рдХреЗ рд▓рд┐рдП, рдЙрдирдХреЗ рд▓реЗрдЦрдХ рдХреЛ рдкреНрд░рд╛рдпреЛрдЬрди рдФрд░ рд╕рд╣рд╛рдпрддрд╛ рдХреЗ рд▓рд┐рдП рдирдкрд▓реИрдмреНрд╕ ред
рд╢рдХреНрддрд┐рд╢рд╛рд▓реА рдФрд░ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдврд╛рдВрдЪреЗ рдХреЗ рд▓рд┐рдП рд╕рд┐рдореНрдлрдиреА 2 рдХреЗ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд▓рд┐рдП рднреА рдмрд╣реБрдд рдзрдиреНрдпрд╡рд╛рдж, рдФрд░ рд╕рдмрд╕реЗ рд╡рд┐рд╕реНрддреГрдд рджрд╕реНрддрд╛рд╡реЗрдЬ рдЬреЛ рдЗрд╕реЗ рдЬрд▓реНрджреА рд╕реЗ рдорд╛рд╕реНрдЯрд░ рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░рддрд╛ рд╣реИред

рдкреНрд░рдпреБрдХреНрдд рд╕рд╛рдордЧреНрд░реА рдФрд░ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА:






рдирд┐рдпрдВрддреНрд░рдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг PHPUnit (symfony2 рдореЗрдВ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдкреНрд░рдпреБрдХреНрдд) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░:

 namespace Acme\DemoBundle\Tests\Controller; use Symfony\Bundle\FrameworkBundle\Test\WebTestCase; class DemoControllerTest extends WebTestCase { public function testIndex() { $client = $this->createClient(); $crawler = $client->request('GET', '/demo/hello/Fabien'); $this->assertTrue($crawler->filter('html:contains("Hello Fabien")')->count() > 0); } } 


рдмреЗрд╣рдЯ рдХреЗ рд╕рд╛рде рднреА
: , PHPUnit
"/app_dev.php/demo/hello/Fabien"
"Hello Fabien"


рдХреНрдпрд╛ рдпрд╣ рдирд╣реАрдВ рд╣реИ - рдмреЗрд╣рдЯ рдкрд░реАрдХреНрд╖рдг рдЕрдзрд┐рдХ рджреГрд╢реНрдп рд╣реИ?

Source: https://habr.com/ru/post/In124100/


All Articles