Я дотримуюся TDD релігійно. Мої проекти, як правило, мають 85% або краще тестового покриття, із значущими тестовими кейсами.
Я дуже багато працюю з HBase , і головний клієнтський інтерфейс - HTable - це справжній біль для глузування. На те, щоб написати свої тести на одиницю, мені потрібно в 3 або 4 рази більше, ніж для написання тестів, які використовують живу кінцеву точку.
Я знаю, що, по-філософськи, тести, що використовують макети, повинні мати пріоритет над тестами, які використовують живу кінцеву точку. Але глузування з HTable - це серйозна біль, і я не дуже впевнений, що він пропонує велику перевагу перед тестуванням на реальному екземплярі HBase.
Кожен з моєї команди працює на своїй робочій станції одноадресний екземпляр HBase, і у нас є одні одновузлові екземпляри HBase, що працюють на наших коробках Дженкінса, тому це не проблема наявності. Тести живої кінцевої точки, очевидно, тривають довше, ніж тести, що використовують макети, але нас це насправді не хвилює.
Зараз я пишу живі тести кінцевих точок І макетні тести для всіх своїх занять. Я хотів би скинути глузування, але я не хочу, щоб якість знижувалася в результаті.
Що ви все думаєте?