16 Stimmen

dbunit in phpunit schneidet die Tabellen nicht ab

Ich verwende derzeit PHPUnit und DBUnit für mein Projekt. Ich habe ein Problem in DBUnit, weil DBUnit PHPUnit_Extensions_Database_TestCase Sc Klasse scheint die vorhandenen Daten in der Test-DB nicht abzuschneiden. So macht dies meine Einfügung Tests fehlschlagen, nachdem nur für eine Zeit arbeiten.

Ich verwende mysql und hier ist mein Code:

abstract class Generic_Tests_DatabaseTestCase extends PHPUnit_Extensions_Database_TestCase
{
    // only instantiate pdo once for test clean-up/fixture load
    static private $pdo = null;

    // only instantiate PHPUnit_Extensions_Database_DB_IDatabaseConnection once per test
    private $conn = null;

    final public function getConnection()
    {
        if ($this->conn === null) {
            if (self::$pdo == null) {
                self::$pdo = new PDO( "mysql:dbname=db;host=localhost", "root", "pass" );
            }
            $this->conn = $this->createDefaultDBConnection(self::$pdo, "db");
        }

        return $this->conn;
    }
}

class DbopTest extends Generic_Tests_DatabaseTestCase
{       
    private $db;

    protected function setup(){
        $this->db = null;
    }

    public function getDataSet(){
        return $this->createMySQLXMLDataSet(dirname(__FILE__) . '/../rows.xml');
    }       
    ...
}

Wie kann ich dieses Problem also beheben? Was mache ich hier falsch?

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X