Я использую CakePHP и DBUnit для тестирования базы данных. Чего я хотел бы добиться, так это проверить, правильно ли форма, которую я отправил на веб-сайт, вставляет данные в БД. Теперь у меня есть много тестов пользовательского интерфейса, где я тестирую саму страницу, но у меня есть только это небольшое количество тестов БД:
<?php
class testSchema extends PHPUnit_Extensions_Database_TestCase {
/*
** @return PHPUnit_Extensions_Database_DB_IDatabaseConnection
*/
public function getConnection() {
$pdo = new PDO('mysql:dbname=job_manager;host=localhost','root','toor');
$pdo->exec("set foreign_key_checks=0");
return $this->createDefaultDBConnection($pdo, 'job_manager');
}
/*
** @return PHPUnit_Extensions_Database_DataSet_IDataSet
*/
public function getDataSet() {
$cascadeTruncates = true;
return $this->createMySQLXMLDataSet(dirname(__FILE__).'/default.xml');
}
public function testRowCounts() {
$this->assertEquals(3, $this->getConnection()->getRowCount('jobs'));
$this->assertEquals(1, $this->getConnection()->getRowCount('machines'));
$this->assertEquals(4, $this->getConnection()->getRowCount('users'));
}
}
?>
Я пытался сделать что-то вроде этого:
$this->setBrowser('*firefox');
$this->setBrowserUrl('url');
$this->open('link');
Как я делал в тестах пользовательского интерфейса, но это не работает (потому что этот класс унаследован от PHPUnit_Extensions_Database_TestCase, а не от PHPUnit_Extensions_SeleniumTestCase)
Любые идеи? Спасибо