рдкрд░реАрдХреНрд╖рдг рд╢реБрд░реВ рдХрд░рдиреЗ рдХрд╛ рдЖрд╕рд╛рди рддрд░реАрдХрд╛

рдпрджрд┐ рдЖрдк рдПрдХ PHP рдбреЗрд╡рд▓рдкрд░ рд╣реИрдВ, рдФрд░ рд╡рд┐рднрд┐рдиреНрди рдХрд╛рд░рдгреЛрдВ рд╕реЗ рдЖрдкрдХреЗ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдкрд░реАрдХреНрд╖рдг рдирд╣реАрдВ рд▓рд┐рдЦрддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рд▓реЗрдЦ рдЖрдкрдХреЗ рд▓рд┐рдП рд╣реИред рдЗрд╕рдореЗрдВ, рдореИрдВ рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ рджрд┐рдЦрд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реВрдВрдЧрд╛ рдХрд┐ рдХрд╣рд╛рдВ рд╕реЗ рд╢реБрд░реВ рдХрд░рдирд╛ рд╣реИ рдФрд░ рдХреНрдпрд╛ рдХрд░рдирд╛ рд╣реИ рддрд╛рдХрд┐ рд▓реЗрдЦрди рдкрд░реАрдХреНрд╖рдг рдЖрдкрдХреЛ рдЦреБрд╢реА, рдФрд░ рдЖрдкрдХреЗ рдЖрд╡реЗрджрди рдХреА рд╕реНрдерд┐рд░рддрд╛ рд▓рд╛рдПред

рддреЛ, рдкрд╣рд▓реА рдЯрд┐рдкред рдпреВрдирд┐рдЯ рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕рдм рдХреБрдЫ рднреВрд▓ рдЬрд╛рдУред рдЙрд╕ рд╡реНрдпрдХреНрддрд┐ рдкрд░ рдПрдХ рд╕реНрдЯреВрд▓ рдлреЗрдВрдХреЛ рдЬрд┐рд╕рдиреЗ рдЖрдкрдХреЛ рдмрддрд╛рдпрд╛ рдерд╛ рдХрд┐ рдЖрдк рдЙрдирдХреЗ рдмрд┐рдирд╛ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗред рдЖрдЗрдП рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдВ рдХрд┐ рдХрд┐рди рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдЙрдирдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИ, рдФрд░ рдЬрд┐рд╕рдореЗрдВ - рдпрд╣ рдЕрд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рд╣реИред

рдореБрдЭреЗ рдкреВрд░рд╛ рдпрдХреАрди рд╣реИ рдХрд┐ PHP рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рд╢рд╛рдпрдж рд╣реА рдХрднреА рдЯреЗрд╕реНрдЯ рд▓рд┐рдЦрддреЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рдЧрд▓рдд рдЕрдВрдд рд╕реЗ рд╢реБрд░реВ рд╣реЛрддреЗ рд╣реИрдВред рд╣рд░ рдХреЛрдИ рдЬрд╛рдирддрд╛ рд╣реИ рдХрд┐ рдкрд░реАрдХреНрд╖рдг рдЕрдЪреНрдЫреЗ рдФрд░ рд╢рд╛рдВрдд рд╣реИрдВред рд▓реЗрдХрд┐рди рдПрдХ рд╣реА PHPUnit рдХреА рд╡реЗрдмрд╕рд╛рдЗрдЯ рдЦреЛрд▓реА рд╣реИ, рдФрд░ рдПрдХ рдХреИрд▓рдХреБрд▓реЗрдЯрд░ рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рд░рдВрдЧреАрди рдЙрджрд╛рд╣рд░рдг рдкрдврд╝рд╛ рд╣реИ рдЬреЛ рдЬрд╛рдирддрд╛ рд╣реИ рдХрд┐ a + b рдСрдкрд░реЗрд╢рди рдХреИрд╕реЗ рдХрд░реЗрдВ, рд╡реЗ рдЦреБрдж рд╕реЗ рдкреВрдЫрддреЗ рд╣реИрдВ: рдЗрд╕ рдХреИрд▓рдХреБрд▓реЗрдЯрд░ рдХрд╛ рдореЗрд░реЗ рдЖрд╡реЗрджрди рдХреЗ рд╕рд╛рде рдХреНрдпрд╛ рдХрд░рдирд╛ рд╣реИ? рдЙрддреНрддрд░: рдирд╣реАрдВред рдЕрдиреНрдп рдкрд░реАрдХреНрд╖рдг рд░реВрдкрд░реЗрдЦрд╛рдУрдВ рдХреА рд╕рд╛рдЗрдЯреЛрдВ рдкрд░ рд╕рднреА рд╕рдорд╛рди рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреА рддрд░рд╣ рдмрд┐рд▓реНрдХреБрд▓ред рдЬреИрд╕реЗ рдХрд┐ рд╣рд░ рдХреЛрдИ рднреВрд▓ рдЧрдпрд╛ рдерд╛ рдХрд┐ PHP рдореБрдЦреНрдп рд░реВрдк рд╕реЗ рд╡реЗрдм рдХреЗ рд▓рд┐рдП рд╣реИред рдЬреИрд╕реЗ рдХрд┐ рд╣рд░ рдХреЛрдИ рдХреИрд▓рдХреБрд▓реЗрдЯрд░ рд▓рд┐рдЦрддрд╛ рд╣реИ, рдПрдорд╡реАрд╕реА рдкреНрд░рддрд┐рдорд╛рди рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╕рд╛рдЗрдЯреЗрдВ рдирд╣реАрдВред

рдорд╛рди рд▓реАрдЬрд┐рдП рдЖрдк рдПрдХ рд╡реЗрдмрд╕рд╛рдЗрдЯ рдмрдирд╛ рд░рд╣реЗ рд╣реИрдВ рдпрд╛ рдПрдХ рд╡реЗрдм рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╡рд┐рдХрд╕рд┐рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдЗрд╕рдореЗрдВ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдХреБрдЫ рдкреГрд╖реНрда, рд░реВрдк рд╣реИрдВ, рд╢рд╛рдпрдж рдЗрдВрдЯрд░реИрдХреНрдЯрд┐рд╡ рддрддреНрд╡ рднреА рд╣реИрдВред рдЖрдк рдХреИрд╕реЗ (рдпрд╛, рдЕрдкрдиреЗ рдЧреНрд░рд╛рд╣рдХ рд╕реЗ) рдпрд╣ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рд╕рд╛рдЗрдЯ рдХрд╛рдо рдХрд░ рд░рд╣реА рд╣реИ? рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЖрдк рд╕рд╛рдЗрдЯ рдкрд░ рдЬрд╛рддреЗ рд╣реИрдВ, рд▓рд┐рдВрдХ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рддреЗ рд╣реИрдВ, рдлреЙрд░реНрдо рднрд░рддреЗ рд╣реИрдВ, рдкрд░рд┐рдгрд╛рдо рдХреЛ рджреЗрдЦрддреЗ рд╣реИрдВред рдФрд░ рдПрдХ рдЕрдЪреНрдЫреЗ рддрд░реАрдХреЗ рд╕реЗ, рдлреЙрд░реНрдо рдХреЛ рдХреНрд▓рд┐рдХ рдХрд░рдиреЗ рдФрд░ рднрд░рдиреЗ рдХреА рдЗрди рд╕рднреА рдирд┐рдпрдорд┐рдд рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЛ рдкрд╣рд▓реЗ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдФрд░ рдЗрд╕рд▓рд┐рдП рд╣рдо рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдкрд░реАрдХреНрд╖рдгреЛрдВ (рдпрд╛ рд╕реНрд╡реАрдХреГрддрд┐ рдкрд░реАрдХреНрд╖рдгреЛрдВ) рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░реЗрдВрдЧреЗред

рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдкрд░реАрдХреНрд╖рдг рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдкрд░реАрдХреНрд╖рдг рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдХреА рд╡реНрдпрд╡рд╣рд╛рд░реНрдпрддрд╛ рдХреЛ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЕрд░реНрдерд╛рддреН, рдХреБрдЫ рдкрд░рд┐рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдореЗрдВ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдЬрд┐рди рдХрд╛рд░реНрдпреЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рдЙрдиреНрд╣реЗрдВ рд╣рд▓ рдХрд░рдиреЗ рдХреА рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдХреА рдХреНрд╖рдорддрд╛ред рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдЖрд╡рд╢реНрдпрдХрддрд╛рдПрдВ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддреА рд╣реИрдВ рдХрд┐ рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдХреНрдпрд╛ рдХрд░рддрд╛ рд╣реИ, рдпрд╣ рдХрд┐рд╕ рдХрд╛рд░реНрдп рдХреЛ рд╣рд▓ рдХрд░рддрд╛ рд╣реИред

рд╡рд┐рдХрд┐рдкреАрдбрд┐рдпрд╛

рдЙрдирдХреЗ рд╕рд╛рде рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реАрдХреНрд╖рдг рдкрд░реАрдХреНрд╖рдг рдХреНрдпреЛрдВ рд▓рд╛рдпрдХ рд╣реИ? рд╣рд╛рдВ, рдмрд╕ рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рдЖрдкрдХреА рд╕рд╛рдЗрдЯ рдХрд╛рд░реНрдп рдХрд░ рд░рд╣реА рд╣реИ рдФрд░ рд╡рд╣рд╛рдВ рд╕рдм рдХреБрдЫ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИред рд╕реНрд╡реАрдХреГрддрд┐ рдкрд░реАрдХреНрд╖рдг рдПрдХ рдареЛрд╕ рд╡реЗрдм рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдХреЗ рд▓рд┐рдП рд╕рдорд╛рди рд░реВрдк рд╕реЗ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдЕрдиреБрдХреВрд▓ рд╣реИрдВ, рд╕рд╛рде рд╣реА рдПрдХ рд╕рд╛рдзрд╛рд░рдг рд╕рд╛рдЗрдЯ рдШреБрдЯрдиреЗ рдкрд░ рд░рд╛рдд рднрд░ riveted рд╣реИред рдЗрд╕рд▓рд┐рдП, рдпрд╣ рдЙрдирдХреЗ рд╕рд╛рде рд╢реБрд░реВ рд╣реЛрдиреЗ рд▓рд╛рдпрдХ рд╣реИред

рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП рдХреНрдпрд╛ рд╣реИ? рдореЗрд░реЗ рд▓рд┐рдП рдЬреНрдЮрд╛рдд рд╕рднреА рдореЗрдВ рд╕реЗ, рдпрд╣ рдХреЛрдбреИрдкреНрд╢рди рд╣реИ рдФрд░, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, PHPUnit + рдорд┐рдВрдХ рдпрд╛ рд╕реЗрд▓реЗрдирд┐рдпрдо рдХрд╛ рдкреНрд░рддреНрдпрдХреНрд╖ рдЙрдкрдпреЛрдЧред рдореИрдВ рдЗрд╕ рдХреБрдХреА рдореЗрдВ рдмреЗрд╣рдЯ рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛, рд▓реЗрдХрд┐рди рдЗрд╕рдХреЗ рд▓реЗрдЦрдХ рдиреЗ рдореБрдЭреЗ рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП рдмреЗрд╣рдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣рд╛ред

рдпрджрд┐ рд╕реЗрд▓реЗрдирд┐рдпрдо рдпрд╛ PHPUnit + рдорд┐рдВрдХ рдХреЗ рд╕рд╛рде рдкрд░реАрдХреНрд╖рдг рдХрд░рдирд╛ рдЖрд╕рд╛рди рдерд╛, рддреЛ рдЖрдк рд╢рд╛рдпрдж рдЙрдирдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗред рдЗрд╕рд▓рд┐рдП, рд╣рдо рд╕рдВрд╣рд┐рддрд╛ рдкрд░ рдзреНрдпрд╛рди рдХреЗрдиреНрджреНрд░рд┐рдд рдХрд░рддреЗ рд╣реИрдВред

рдкрд░реАрдХреНрд╖рдг рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рд╡рд░реНрдгрд┐рдд рд╣реИ:

<?php $I = new WebGuy($scenario); $I->wantTo('see my site is working'); $I->amOnPage('/'); $I->see('Welcome, on my site!'); ?> 


рдХреБрдЫ рд╣реА рдкрдВрдХреНрддрд┐рдпреЛрдВ рдореЗрдВ, рдЖрдк рдЬрд╛рдБрдЪрддреЗ рд╣реИрдВ рдХрд┐ рдЖрдкрдХреА рд╕рд╛рдЗрдЯ рдХрд╛ рдореБрдЦреНрдп рдкреГрд╖реНрда рдХрдо рд╕реЗ рдХрдо рдЦреБрд▓рддрд╛ рд╣реИред рд▓рдВрдмреЗ рдХрд╛рдо рдХреЗ рд▓рд┐рдП, рдЗрд╕реЗ рддреЛрдбрд╝рдирд╛ рдЗрддрдирд╛ рдореБрд╢реНрдХрд┐рд▓ рдирд╣реАрдВ рд╣реИред
рдЗрд╕реА рддрд░рд╣, рдЖрдк рдЖрдЧреЗ рдХреЗ рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ рд╡рд░реНрдгрди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

 <?php $I->click('Feedback'); $I->see('Submit your feedback'); $I->fillField('Body','Your site is great!'); $I->click('Submit'); $I->see('Thanks for your feedback!'); ?> 


рдпрд╣рд╛рдВ рд╣рдо рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЬрд╛рдВрдЪ рд▓реЗрддреЗ рд╣реИрдВ рдХрд┐ рдЖрдкрдХреА рд╕рд╛рдЗрдЯ рдкрд░ рдлреАрдбрдмреИрдХ рдлреЙрд░реНрдо рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдХрдо рд╕реЗ рдХрдо рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ, рдпрд╣ рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ рдХрд┐ рдЙрд╕рдХреА рд░рд╛рдп рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрд╛ рдЧрдпрд╛ рд╣реИред

рд╣рд╛рд▓рд╛рдБрдХрд┐, Habr├й рдкрд░ рдореИрдВрдиреЗ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА Codeception рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд▓рд┐рдЦрд╛ рдерд╛ ред

рдЕрдм рдЗрдХрд╛рдИ рдкрд░реАрдХреНрд╖рдгреЛрдВ рдкрд░ рдирд┐рд░реНрдгрдп рд▓реЗрдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддреЗ рд╣реИрдВред

рдЗрдХрд╛рдИ рдкрд░реАрдХреНрд╖рдг, рдпрд╛ рдЗрдХрд╛рдИ рдкрд░реАрдХреНрд╖рдг, рдПрдХ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╣реИ рдЬреЛ рдЖрдкрдХреЛ рдХрд┐рд╕реА рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЗ рд╕реНрд░реЛрдд рдХреЛрдб рдХреЗ рд╡реНрдпрдХреНрддрд┐рдЧрдд рдореЙрдбреНрдпреВрд▓ рдХреА рд╢реБрджреНрдзрддрд╛ рдХреА рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреА рд╣реИред

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

рд╡рд┐рдХрд┐рдкреАрдбрд┐рдпрд╛ ред

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

рд▓реЗрдХрд┐рди рдЕрдЧрд░ рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреЗ рдврд╛рдВрдЪреЗ рдореЗрдВ рдЖрдкрдиреЗ рд╡рд╣ рд╕рдм рдХреБрдЫ рдЬрд╛рдВрдЪ рд▓рд┐рдпрд╛ рдЬреЛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рддреЛ рдпреВрдирд┐рдЯ рдкрд░реАрдХреНрд╖рдгреЛрдВ рдореЗрдВ рдпрд╣ рдзреНрдпрд╛рди рд░рдЦрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рдЙрд╕реЗ рдХреНрдпрд╛ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред

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

рдпрд╛ рджреВрд╕рд░рд╛ рдЙрджрд╛рд╣рд░рдг: рдЖрдкрдХреА рд╕рд╛рдЗрдЯ рдкрд░ рдЖрдкрдХрд╛ рдкреНрд░рдЪрд╛рд░ рд╣реИ - рдкреНрд░рддреНрдпреЗрдХ 100 рд╡реЗрдВ рдкрдВрдЬреАрдХреГрдд рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдПрдХ рдЙрдкрд╣рд╛рд░ рдорд┐рд▓рддрд╛ рд╣реИред рдореИрдВ рдХреИрд╕реЗ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ рдХрд┐ рдЙрдкрд╣рд╛рд░ рджрд┐рдП рдЧрдП рд╣реИрдВ рдФрд░ 100 рдЕрддрд┐рд░рд┐рдХреНрдд рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд╣реАрдВ рдмрдирд╛рдП рдЧрдП рд╣реИрдВ? рдпрд╣рд╛рдВ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдпреВрдирд┐рдЯ рдкрд░реАрдХреНрд╖рдг рд▓рд┐рдЦреЗрдВред рдЙрдирдХреЗ рдмрд┐рдирд╛, рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ, рдХреБрдЫ рднреА рдирд╣реАрдВред

рдпрджрд┐ рдЖрдкрдХрд╛ рдЖрд╡реЗрджрди рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рд╡реНрдпрд╛рд╡рд╕рд╛рдпрд┐рдХ рддрд░реНрдХ рдХреЛ рд╡реНрдпрдХреНрдд рдХрд░рддрд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП: "рдпрд╣ рд╡рд┐рдзрд┐ рдПрдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдмрдирд╛рддрд╛ рд╣реИ, рдФрд░ рдпрд╣ рд╡рд┐рдзрд┐ рдЖрдкрдХреЛ рдПрдХ рд╕рдореВрд╣ рдХреА рд╕реНрдерд┐рддрд┐ рдмрджрд▓рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреА рд╣реИ", рддреЛ рдРрд╕реЗ рддрд░реАрдХреЛрдВ рдХреЛ рдЗрдХрд╛рдИ рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреЗ рд╕рд╛рде рдХрд╡рд░ рдХрд░рдирд╛ рдХрд╛рдлреА рдЙрдЪрд┐рдд рд╣реИред

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

рдЗрдХрд╛рдИ рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП, рдХрдИ рд░реВрдкрд░реЗрдЦрд╛рдПрдБ рд╣реИрдВ:

рдкрд╛рд░рдВрдкрд░рд┐рдХ рдЗрдХрд╛рдИ рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреЗ рд╡рд┐рдХрд▓реНрдк рдХреЗ рд░реВрдк рдореЗрдВ:

рдлрд┐рд░ рд╕реЗ, рдЕрдкрдиреЗ рд▓рд┐рдП рдЪреБрдиреЗрдВред PHPUnit, рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ, рдорд╛рдирдХ рд╣реИ, рд▓реЗрдХрд┐рди рдЕрдзрд┐рдХ рдЖрдзреБрдирд┐рдХ рд░реВрдкрд░реЗрдЦрд╛ рд╕рд░рд▓ рдФрд░ рдЕрдзрд┐рдХ рдХреБрд╢рд▓ рд╣реЛ рд╕рдХрддреА рд╣реИред

рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ, рдореИрдВ рдпрд╣ рдХрд╣реВрдВрдЧрд╛ рдХрд┐ рдкрд░реАрдХреНрд╖рдг рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЖрд╡рд╢реНрдпрдХ рд╣реИрдВ рдФрд░ рд╡реЗ рдЙрддрдиреЗ рдбрд░рд╛рд╡рдиреЗ рдирд╣реАрдВ рд╣реИрдВ рдЬрд┐рддрдирд╛ рдЖрдк рд╕реЛрдЪ рд╕рдХрддреЗ рд╣реИрдВред рд╕реНрд╡реАрдХреГрддрд┐ рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреЗ рд╕рд╛рде рдкрд░реАрдХреНрд╖рдг рд▓рд┐рдЦрдирд╛ рд╢реБрд░реВ рдХрд░реЗрдВ, рдореЙрдбреНрдпреВрд▓рд░ рдЬрд╛рд░реА рд░рдЦреЗрдВред рдЬреЛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ рдЙрд╕реЗ рдкрд░рдЦреЗрдВ рдФрд░ рдЬреЛ рдЖрдк рдирд┐рд╢реНрдЪрд┐рдд рдирд╣реАрдВ рд╣реИрдВ рдЙрд╕реЗ рдкрд░рдЦреЗрдВ ред

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

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


All Articles