Я тестирую код PHP с помощью SimpleTest, и у меня возникли проблемы. В моих тестах класса базы данных я хочу уметь задавать функции PHP mysql
. В моих тестах класса-оболочки для функции mail
я хочу высмеять PHP mail
. Это лишь некоторые примеры.Стыковка функций PHP в модульных тестах
Дело в том, что я не (всегда) хочу проверить, отправляет ли мой класс почты по электронной почте, я хочу проверить, как он вызывает функцию mail
. Я хочу иметь возможность контролировать, что эти функции возвращают. Я хочу, чтобы иметь возможность тестировать мой класс базы данных, не требуя базы данных, светильников и всего этого.
У меня есть опыт тестирования кода Ruby, а Test :: Unit и RSpec очень легко тестируют код изолированно. Я новичок в тестировании PHP, и мне кажется, что я тестирую намного больше, чем нужно, чтобы пройти мои тесты.
Есть ли способ в SimpleTest или PhpUnit или какой-либо другой среде тестирования, которая делает это возможным или проще?
Я вижу. Я как бы ожидал (но не надеялся) такого ответа. Я действительно не настаиваю, так как хочу упростить и ускорить тестирование, а не сделать его более сложным. Спасибо за ваш ответ! – avdgaag
Теперь [Mockery] (http://docs.mockery.io/en/latest/cookbook/mocking_hard_dependencies.html) кажется [способ пойти] (http://stackoverflow.com/a/42158443/659788). – Franco
@Franco Не для встроенных. – troelskn