Как запустить все мои тесты PHPUnit?
У меня script называется Script.php и проверяется для него в тестах /Script.php, но когда я запускаю phpunit Tests, он не выполняет никаких тестов в моем тестовом файле. Как запустить все мои тесты с помощью phpunit?
PHPUnit 3.3.17, PHP 5.2.6-3ubuntu4.2, последний Ubuntu
Вывод:
$ phpunit Tests
PHPUnit 3.3.17 by Sebastian Bergmann.
Time: 0 seconds
OK (0 tests, 0 assertions)
И вот мои script и тестовые файлы:
Script.php
<?php
function returnsTrue() {
return TRUE;
}
?>
<сильные > Тесты / Script.php
<?php
require_once 'PHPUnit/Framework.php';
require_once 'Script.php'
class TestingOne extends PHPUnit_Framework_TestCase
{
public function testTrue()
{
$this->assertEquals(TRUE, returnsTrue());
}
public function testFalse()
{
$this->assertEquals(FALSE, returnsTrue());
}
}
class TestingTwo extends PHPUnit_Framework_TestCase
{
public function testTrue()
{
$this->assertEquals(TRUE, returnsTrue());
}
public function testFalse()
{
$this->assertEquals(FALSE, returnsTrue());
}
}
?>
Ответы
Ответ 1
Я создал следующий phpunit.xml, и теперь по крайней мере я могу сделать phpunit --configuration phpunit.xml в корневом каталоге для запуска тестов, расположенных в тестах /
<phpunit backupGlobals="false"
backupStaticAttributes="false"
syntaxCheck="false">
<testsuites>
<testsuite name="Tests">
<directory suffix=".php">Tests</directory>
</testsuite>
</testsuites>
</phpunit>
Ответ 2
Имя файла теста Php должно заканчиваться на Test.php
phpunit mydir
будет запускать все сценарии с именем xxxxTest.php
в каталоге mydir
(похоже, что это не описано в документации phpunit)
Ответ 3
Я думаю, что forPHPUnit решит автоматически запустить его, он должен следовать соглашению по имени файла: somethingTest.php.
Ответ 4
Ты думаешь, они бы это задокументировали. Я просто просмотрел руководство, и они говорят, что вы можете передать каталог, но не совсем, как это сделать.
Возможно, ваше имя класса должно совпадать с базовым именем (все, кроме ".php" ) имени вашего тестового скрипта?
Ответ 5
<?php
//Files required for phpunit test
require_once 'PHPUnit/Framework.php';
//Knowing the drupal environment
require_once './includes/bootstrap.inc'; //initialize the Drupal framework
//Loading the drupal bootstrap
drupal_bootstrap(DRUPAL_BOOTSTRAP_FULL);
//Helper file
include_once 'helper.inc';
//Including inc file of addresses module
include_once(module_load_include('inc','addresses_user','addresses_user'));
class addresses_test extends PHPUnit_Framework_TestCase {
protected $uid;
protected function setUp()
{
$this->uid = 1;
}