2013-12-10 5 views
5

PHPUnit में setup और tearDown घटनाएं होती हैं जो क्रमशः परीक्षण परीक्षा में प्रत्येक परीक्षण के पहले और बाद में चलती हैं। मेरे विशिष्ट परिदृश्य में, मैं कुछ testCaseSetup और testCaseTearDown जैसे कुछ भी चलाने के लिए चाहता हूं। क्या यह संभव है?PHPUnit सेटअप और टेयरडाउन परीक्षण मामलों के लिए

वर्तमान समाधान इस तरह दिखता है:

<?php 

class MyTestCase extends \PHPUnit_Framework_TestCase 
{ 

    public function __construct($name = NULL, array $data = array(), $dataName = '') 
    { 
     // My test case setup logic 
     parent::__construct($name, $data, $dataName); 
    } 

    public function __destruct() 
    { 
     // My test case tear down logic 
    } 
} 

लेकिन यह निम्नलिखित कारणों के लिए इष्टतम से दूर लगता है:

  • मैं PHPUnit_Framework_TestCase निर्माण redeclare और किसी भी तर्क रीडायरेक्ट करने के लिए किया है। यदि PHPUnit कन्स्ट्रक्टर को संस्करण अद्यतन पर बदला गया है, तो मेरा टेस्ट केस रुक जाएगा।
  • शायद PHPUnit_Framework_TestCase इस तरह इस्तेमाल नहीं किया गया था।

मैं जानना चाहता हूं कि बेहतर समाधान हैं या नहीं। कोई विचार?

उत्तर

10

हां, उस उद्देश्य के लिए विशेष विधियां हैं: setUpBeforeClass और tearDownAfterClass

class TemplateMethodsTest extends PHPUnit_Framework_TestCase 
{ 
    public static function setUpBeforeClass() 
    { 
     // do sth before the first test 
    } 

    public static function tearDownAfterClass() 
    { 
     // do sth after the last test 
    } 
+0

मैन, मैंने सभी दस्तावेज़ों की खोज की और इसे नहीं मिला। धन्यवाद! – marcio

संबंधित मुद्दे