13
class TestClass extends PHPUnit_Framework_TestCase {
 function testSomething() {
   $class = new Class();
   $this->assertTrue($class->someFunc(1));
 }

 function testSomethingAgain() {
  $class = new Class();
  $this->assertFalse($class->someFunc(0));
  }
}

こんにちは、作成するすべてのテスト関数に対して $class を作成する必要がありますか? または、PHPUnit ではコンストラクターが機能しないように見えるため、まだ発見していない関数のような未知のコンストラクターがあります。

ありがとう

4

1 に答える 1

29

setUp() および tearDown() メソッドをプライベート変数またはプロテクト変数とともに使用できます。setUp() は各 testXxx() メソッドの前に呼び出され、tearDown() は後で呼び出されます。これにより、各テストで作業する白紙の状態が得られます。

class TestClass extends PHPUnit_Framework_TestCase {
 private $myClass;

 public function setUp() {
   $this->myClass = new MyClass();
 }

 public function tearDown() {
   $this->myClass = null;
 }

 public function testSomething() {
   $this->assertTrue($this->myClass->someFunc(1));
 }

 public function testSomethingAgain() {
   $this->assertFalse($this->myClass->someFunc(0));
 }
}
于 2009-10-02T02:08:52.153 に答える