Size: a a a

Боль Тимлида

2021 May 05

П

Павел in Боль Тимлида
Мне кажется, это совершенно разные системные уровни. Бизнес-метрики говорят о надсистеме (пользователи, выполняющие сценарии предметной области). Интеграционные тесты - о самой системе и её подсистемах (где что внутри ломается, сбоит, тормозит). Как обычно, эти уровни существуют одновременно, не смешиваясь. И я бы не стал ни заменять одни метрики другими, ни смешивать их.
источник

АС

Альберт Степанцев... in Боль Тимлида
интересно, почему именно как мониторинг?
вам нужно постоянно мониторить результат тестов, даже если ничего не изменилось на стенде (не было деплоя кода или изменений окружения)?
источник

СА

Сергей Аксёнов... in Боль Тимлида
Просто "интеграционные" тесты - по определению предполагают определённый уровень изоляции, чем отличаются от acceptance и e2e. Я не очень понимаю, как изолировать фрагменты системы в проде, и какую реальную пользу такое тестирование может принести.
источник

PD

Phil Delgyado in Боль Тимлида
Например компонент "шлюз к эквайеру". Его вполне реально тестировать изолировано (но дорого, хотя если делать только одну фазу...
источник

СА

Сергей Аксёнов... in Боль Тимлида
В свою очередь, e2e не может покрыть всё разнообразие юзкейсов, тесты будут зелёные, а система сломана. Это хуже, как по мне.
источник

PD

Phil Delgyado in Боль Тимлида
Ну так надо совмещать, конечно )
источник

П

Павел in Боль Тимлида
это ведь не значит, что на очередных реальных данных все отработает точно так же безоблачно, как и на стенде.
особенно вкупе с частыми поставками нового кода.
ну и наконец, очевидный ответ на вопрос "что надо мониторить" - "то, что важно для пользователя". для пользователя важен как раз тот функционал, который и покрывается интеграционными тестами. что, конечно, не отменяет мониторинга более низких уровней - железа, ос, бд и прочего
источник

СА

Сергей Аксёнов... in Боль Тимлида
Может быть тогда тестировать не шлюз, а самого эквайера? Я не спец в домене, но что такое может поломаться в процессе эксплуатации шлюза, прошедшего свои тесты перед выкаткой? За исключением очевидных вещей типа переполнения памяти/диска/whatever?
источник

АС

Альберт Степанцев... in Боль Тимлида
ну так и мониторьте прохождение реальных данных в реальной среде
источник

АС

Альберт Степанцев... in Боль Тимлида
зачем специально тесты гонять?
источник

PD

Phil Delgyado in Боль Тимлида
Ну, так в этом и задача - тестировать эквайера через шлюз (так как важно - именно работоспособность шлюза с эквайером)
источник

СА

Сергей Аксёнов... in Боль Тимлида
А, в смысле речь об интеграционном тестировании компонентов за пределами нашей досягаемости. Типа NTP-серверов, условно. Но я всё равно считаю, что тестировать надо свои компоненты изолированно (MockNTPServer), а не зависящие от нас вещи мониторить. Иначе слишком много энтропии.
источник

PD

Phil Delgyado in Боль Тимлида
Не, моки - это плохая идея почти всегда )
источник

П

Павел in Боль Тимлида
Хороший аргумент. Подумаю как сформулировать - отвечу
источник

АС

Альберт Степанцев... in Боль Тимлида
я бы понял вас, если бы в на инцидентах на бою набирали бы статистику, постоянно пополняли тест-кейсы, например "пришел номер карты 0000-0000 - у нас всё упало, а падать не должно, должно быть внятное сообщение об ошибке" и эти тест-кейсы гоняли бы при развертывании
источник

АС

Альберт Степанцев... in Боль Тимлида
но зачем гонять одни и те же тест-кейсы на одном и том же коде и том же самом окружении?
источник

СА

Сергей Аксёнов... in Боль Тимлида
Всё генерализации - ложны.
источник

VF

Victor Fabrichenko in Боль Тимлида
Не является ли данное утверждение генерализацией? 🤔
источник

PD

Phil Delgyado in Боль Тимлида
Потому у меня и сказано - _почти_ всегда )
источник

Ms

Mutko says in Боль Тимлида
Кого почитать?
источник