PHPUnit ayrı tohumlar

1 Cevap php

How do I create a separate seed for some test inside one test class? PHPUnit documentation includes this example

<?php
require_once 'PHPUnit/Extensions/Database/TestCase.php';

class DatabaseTest extends PHPUnit_Extensions_Database_TestCase
{
    protected function getConnection()
    {
        $pdo = new PDO('mysql:host=localhost;dbname=testdb', 'root', '');
        return $this->createDefaultDBConnection($pdo, 'testdb');
    }

    protected function getDataSet()
    {
        return $this->createFlatXMLDataSet(dirname(__FILE__).'/_files/bank-account-seed.xml');
    }
}
?>

Ama bu örnekte benim sınıf içindeki tüm testler için bir tohum var.

1 Cevap

I've found the answer. One possible way to do it is to use setDataSet method.

Örnek:

$newSet =   $this->createFlatXmlDataSet(dirname( __FILE__ ) . '/_files/members.xml');        
$this->getDatabaseTester()->setDataSet($newSet);
$this->getDatabaseTester()->onSetUp();

Eğer test fonksiyonu koyarsanız, o size gereken, herhangi başka bir varsayılan tohum sıfırlanır.