Articles of phpunit

Проблема PHPUnit – нет сообщений об ошибках

Я пытался решить эту проблему в течение некоторого времени. У меня есть простой тестовый пример PHPUnit с двумя тестами. Когда я запускаю его, я получаю этот вывод: PHPUnit 3.5.14 by Sebastian Bergmann. . Итак, первое утверждение выполняется, проходит. Второе утверждение, однако, вызывает некоторую ошибку PHP (исключение или что-то еще), а PHPUnit просто умирает без какой-либо […]

phpunit 3.7: что случилось с аннотацией @assert?

У меня phpunit 3.7 В документации к Приложению В 3.6 @assert аннотация @assert , тогда как В документации приложения 3.7 к Приложению B нет аннотации @assert В официальном объявлении упоминаются некоторые новые аннотации (и повторное введение старого, ранее не рекомендованного), но в нем не упоминается удаление @assert . В сводке для 3.7. , @assert не […]

Есть ли способ отключить покрытие кода в PHPUnit для одного теста?

Каждый раз, когда я запускаю единичный тест в PHPUnit, также генерируется отчет о покрытии кода. У меня на компьютере старый компьютер, и если бы я мог отключить покрытие кода, когда мне это не нужно, это снизит нагрузку на мой процессор. Есть ли способ отключить покрытие кода на основе каждого теста? Я не мог найти какой-либо […]

php-webdriver: дождитесь ответа браузера после отправки формы, используя click ()

Помимо использования функции sleep() в моем тесте, мне интересно, знает ли кто-нибудь о лучшей стратегии, чтобы явно ждать завершения подачи формы (POST), прежде чем продолжить мои утверждения. Вот очень сжатая версия того, как выглядит мой тест, используя phpunit вместе php-webdriver от Facebook). function test_form_submission() { // setup $web_driver = new WebDriver(); $session = $web_driver->session(); $session->open('http://example.com/login'); […]

В Laravel 5, почему Request :: root () отличается при вызове во время теста phpunit?

Я определил тест, который проверяет создание пользователя. Контроллер настроен на повторное перенаправление на ту же страницу при ошибке (с использованием проверки через сгенерированное App\Http\Requests\Request ). Это работает правильно при ручном нажатии в браузере, но сбой во время теста. Вместо перенаправления на: http://localhost/account/create Тест перенаправляется (отсутствует косая черта): http://localhostaccount/create Ни один из этих URL-адресов не является […]

PHPUnit: Как утверждать, что класс расширяет другой класс?

В моем тесте PHPUnit я хотел бы утверждать, что класс, который я тестирую, расширяет другой класс. Как это сделать с помощью PHPUnit?

HowTo PHPUnit assertFunction

Мне было интересно, можно ли проверить, имеет ли «класс» функцию. assertClassHasAttribute не работает, это нормально, поскольку функция не является атрибутом.

PHPUnit не может найти класс TestCase

Для запуска моих тестов с использованием PHPUnit проекта я делаю следующее: php vendor/bin/phpunit tests/SomeClassTest.php который отлично работает с учетом следующего объявления класса: class SomeClassTest extends PHPUnit_Framework_TestCase { public function test_someMethod() {} } Но он терпит неудачу, когда я это делаю: use PHPUnit\Framework\TestCase; class SomeClassTest extends TestCase { public function test_someMethod() {} } Я получаю PHP […]

PHPUnit проверяет метод, возвращающий свойство объектов

public function thisMethod { $example = $this->methodReturnsObject()->this1->that2->there3->id; return $example; } Как бы вы протестировали этот метод в PHPUnit? Очевидно, я мог бы написать, что методReturnsObject () вернет что-то … но что? У этого объекта есть свойства, связанные с ним, но как бы вы даже издевались над этим значением?

Тестирование класса, вызывающего parent :: function?

У меня есть модель, которая перегружает функцию where . Мой перегруженный метод выглядит следующим образом: public function where($column, $operator = null, $value = null, $boolean = 'and') { if (in_array($column, $this->metaFields)) { $value = '%"' . $column . '":"' . $value . '"'; $column = 'meta'; $operator = 'like'; } return parent::where($column, $operator, $value, $boolean); […]