Size: a a a

2020 January 09

h🐴

h0rsie 🐴 in phpGeeks
jenia
Ну а например проверить что запись вставлена на самом деле в бд?
никак. запись вставилась - особенности реализации. ты не должен тестировать внутренности, только контракт (внениие интерфейсы и поведение)
источник

h🐴

h0rsie 🐴 in phpGeeks
как вариант: тестируй, что в твою штуку можно что-то положить, а потом это что-то прочитать
источник

h🐴

h0rsie 🐴 in phpGeeks
а что там внутри - база или память или сеть - тест волновать не должно
источник

h🐴

h0rsie 🐴 in phpGeeks
тест должен знать только про контракт
источник

j

jenia in phpGeeks
h0rsie 🐴
как вариант: тестируй, что в твою штуку можно что-то положить, а потом это что-то прочитать
Как же так если например я хочу записать в бд данные и потом проверить что они там есть? Бд нужна получается?
источник

h🐴

h0rsie 🐴 in phpGeeks
jenia
Как же так если например я хочу записать в бд данные и потом проверить что они там есть? Бд нужна получается?
тест не должен про нее ничего знать
источник

h🐴

h0rsie 🐴 in phpGeeks
тесту пофиг, что там внутри
источник

j

jenia in phpGeeks
То есть я не могу протестировать метод который что то в бд пишет ?
источник

h🐴

h0rsie 🐴 in phpGeeks
тест получил инстанс твоего юнита, подергал публичные методы, и дал ответ: ОК или НЕ ОК
источник

S🛸

Sergey 🛸 in phpGeeks
jenia
То есть я не могу протестировать метод который что то в бд пишет ?
Тебе ненужна настоящая БД
источник

h🐴

h0rsie 🐴 in phpGeeks
jenia
То есть я не могу протестировать метод который что то в бд пишет ?
ты не должен тестировать внутренности.
источник

j

jenia in phpGeeks
h0rsie 🐴
ты не должен тестировать внутренности.
То есть  запись в бд не должен тестировать?
источник

h🐴

h0rsie 🐴 in phpGeeks
jenia
То есть  запись в бд не должен тестировать?
тест не должен знать про существование БД
источник

h🐴

h0rsie 🐴 in phpGeeks
вооще ИМХО штука, которой для теста нужна БД (или сеть или диск или инстансы других штук), не может назваться юнитом
источник

h🐴

h0rsie 🐴 in phpGeeks
как следствие, тест, который юзает инструменты для создания моков, не может называться юнит-тестом
источник

S🛸

Sergey 🛸 in phpGeeks
h0rsie 🐴
вооще ИМХО штука, которой для теста нужна БД (или сеть или диск или инстансы других штук), не может назваться юнитом
Речь про юниты и интеграционные тесты
источник

h🐴

h0rsie 🐴 in phpGeeks
я понимаю
источник

j

jenia in phpGeeks
h0rsie 🐴
я понимаю
В интеграционных по моему может быть бд. Нет?
источник

h🐴

h0rsie 🐴 in phpGeeks
терминология еще не устоялась, так что ответ зависит от того, кого спросишь
источник

h🐴

h0rsie 🐴 in phpGeeks
тереть за тесты и методологию можно тут, если кто хочет https://t.me/tdd_ru
источник