Zend_Test-PHPUnit-Testing.xml 2.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. <sect2 id="zend.test.phpunit.testing">
  2. <title>בדיקת המערכות שלך</title>
  3. <para>
  4. ברגע שכבר הגדרת את קובץ ה bootstrap שלך, תוכל להתחיל בשלב הבדיקות.
  5. בדיקות אלו בדרך כלל זהות לבדיקות שנעשות בעזרת PHPUnit, עם כמה הבדלים קלים.
  6. </para>
  7. <para>
  8. קודם כל, תצטרכו לשלוח קישור לבדיקה, על ידי שימוש במתודת ה <code>dispatch()</code> שנמצאת תחת המחלקה TestCase
  9. </para>
  10. <programlisting role="php"><![CDATA[
  11. class IndexControllerTest extends Zend_Test_PHPUnit_Controller_TestCase
  12. {
  13. // ...
  14. public function testHomePage()
  15. {
  16. $this->dispatch('/');
  17. // ...
  18. }
  19. }
  20. ]]>
  21. </programlisting>
  22. <para>
  23. למרות, שיהיו רגעים שתצטרכו לספק מידע נוסף כמו ערכים גלובאלים של GET, POST, COOKIE וכדומה. תוכלו להציג את המידע הזה בעזרת האפשרויות הבאות:
  24. </para>
  25. <programlisting role="php"><![CDATA[
  26. class FooControllerTest extends Zend_Test_PHPUnit_Controller_TestCase
  27. {
  28. // ...
  29. public function testBarActionShouldReceiveAllParameters()
  30. {
  31. // Set GET variables:
  32. $this->request->setQuery(array(
  33. 'foo' => 'bar',
  34. 'bar' => 'baz',
  35. ));
  36. // Set POST variables:
  37. $this->request->setPost(array(
  38. 'baz' => 'bat',
  39. 'lame' => 'bogus',
  40. ));
  41. // Set a cookie value:
  42. $this->request->setCookie('user', 'matthew');
  43. // or many:
  44. $this->request->setCookies(array(
  45. 'timestamp' => time(),
  46. 'host' => 'foobar',
  47. ));
  48. // Set headers, even:
  49. $this->request->setHeader('X-Requested-With', 'XmlHttpRequest');
  50. // Set the request method:
  51. $this->request->setMethod('POST');
  52. // Dispatch:
  53. $this->dispatch('/foo/bar');
  54. // ...
  55. }
  56. }
  57. ]]>
  58. </programlisting>
  59. <para>
  60. עכשיו שהבקשה התבצעה, הגיע הזמן להסיק מסקנות לגביהם.
  61. </para>
  62. </sect2>
  63. <!--
  64. vim:se ts=4 sw=4 et:
  65. -->