Как настроить или создать PHP Unit test

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.

Спасибо

Ответ 1

Вы можете использовать методы 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));
 }
}