Модульное тестирование PHP [закрыто]

Если метод equals() присутствует в классе java.lang.Object, и ожидается, что он проверяет эквивалентность состояния объектов! Это означает, что содержимое объектов. В то время как ожидается, что оператор == проверяет, что фактические экземпляры объекта одинаковы или нет.

Пример

Рассмотрим две различные ссылочные переменные, str1 и str2:

str1 = new String("abc");
str2 = new String("abc");

Если вы используете equals()

System.out.println((str1.equals(str2))?"TRUE":"FALSE");

, вы получите выход как TRUE, если вы используете ==.

System.out.println((str1==str2) ? "TRUE" : "FALSE");

Теперь вы получите вывод FALSE в качестве вывода, потому что оба str1 и str2 указывают на два разных объекта, хотя оба они имеют одинаковое строковое содержимое. Именно из-за new String() каждый новый объект создается каждый раз.

13
задан Lance Roberts 14 January 2010 в 19:33
поделиться

2 ответа

Simpletest

Фактически здесь - это список всех распространенных фреймворков модульного тестирования PHP.

Думаю, вы обнаружите, что сами среды тестирования мало заинтересованы в разработке причудливых графических интерфейсов. Однако есть несколько сторонних инструментов / приложений / плагинов, которые вы можете проверить. Я часто использую интеграцию phpunit в Netbeans, и она работает очень хорошо.

15
ответ дан 1 December 2019 в 20:57
поделиться

Требование, чтобы

не основывалось на командной строке

, любопытно. При традиционной разработке PHP вы вносите изменения, загружаете веб-страницу в свой браузер и повторяете. Вместо этого вы можете внести изменения, запустить часть своего набора тестов в командной строке, а затем повторить. Я обнаружил, что последняя практика обычно намного быстрее.

13
ответ дан 1 December 2019 в 20:57
поделиться
Другие вопросы по тегам:

Похожие вопросы: