Как я могу сбросить ожидания () для PHPUnit Mock? У меня есть макет SoapClient, который я бы назвал несколько раз в рамках теста, сбросив ожидания каждого прогона. $soapClientMock = $this->getMock('SoapClient', array('__soapCall'), array($this->config['wsdl'])); $this->Soap->client = $soapClientMock; // call via query $this->Soap->client->expects($this->once()) ->method('__soapCall') ->with('someString', null, null) ->will($this->returnValue(true)); $result = $this->Soap->query('someString'); $this->assertFalse(!$result, 'Raw query returned false'); $source = […]
Вопрос в PHP , но применим к любому языку с использованием инфраструктуры xUnit . Я хочу макет, который ожидает 140 вызовов метода. Мне нужно проверить, что по крайней мере один раз есть вызов с параметром 500 в качестве параметра. Мне все равно, если все вызовы 500, но мне нужен хотя бы один, который вызывается с […]
Я хочу начать писать тесты для моего кода, поэтому я установил последнюю версию PHPUnit со следующими командами wget http://pear.phpunit.de/get/phpunit.phar chmod +x phpunit.phar mv phpunit.phar /usr/local/bin/phpunit http://phpunit.de/manual/3.8/en/installation.html то я добавил / usr / local / bin в мой путь к php.ini include, который выглядит так: include_path = ".:/Applications/MAMP/bin/php/php5.4.10/lib/php:/usr/local/bin" но я получаю следующие ошибки при посещении /my-app/test.php […]
Я знаю, что можно проверить частные / защищенные методы с помощью PHPUnit, используя отражение или другие обходные пути. Но большинство источников говорят мне, что не рекомендуется писать тесты для частных методов внутри класса. Вы должны тестировать класс так, как если бы это был «черный ящик» – вы просто проверяете ожидаемое поведение, сравнивая входы с выходами […]
Я следую за соглашением ZF2 по хранению тестов в модулях, и все работает нормально, когда тесты запускаются из каждого модуля. То, что я хотел бы сделать, это иметь phpunit.xml корневого уровня, который вызывает отдельные тесты модулей и объединяет их для получения данных покрытия кода и других показателей. Проблема в том, что каждый отдельный набор тестов […]
Я использую namespacing в 5.3 и пытаюсь проверить ожидаемое исключение в PHPUnit с картой Symfony2. Я ожидаю, что будет выбрано исключение, и когда я использую $this->setExpectedException('ImageResizerException'); Я получаю следующую ошибку: PHPUnit 3.7.13 от Себастьяна Бергмана. Конфигурация читается из /var/www/branches/3.6.0/api/app/phpunit.xml.dist .E …………….. Время: 1 секунда, Память: 18.25Mb Была 1 ошибка: 1) AssetManagerBundle \ Tests \ Services […]
Почему статические методы являются неустойчивыми? Пожалуйста, продемонстрируйте (в PHP, если это возможно).
Каждый раз, когда я запускаю единичный тест в PHPUnit, также генерируется отчет о покрытии кода. У меня на компьютере старый компьютер, и если бы я мог отключить покрытие кода, когда мне это не нужно, это снизит нагрузку на мой процессор. Есть ли способ отключить покрытие кода на основе каждого теста? Я не мог найти какой-либо […]
Одна из моих тестовых функций для модульного тестирования в Laravel продолжает выходить из строя. Я пытаюсь утверждать, что запрос конкретной страницы без выполнения определенных условий вызывает ошибку 403 FORBIDDEN. Моя тестовая функция: public function testNoAjaxCall() { $this->call('POST', 'xyz', array()); $this->assertResponseStatus(403); } В действии контроллера это направлено, у меня есть: if(!Input::has('ajax') || Input::get('ajax') != 1) { […]
Для запуска моих тестов с использованием 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 […]