توصیه میشه 70درصد پروژه با Unit Test و 20درصد اون با Integration Test و 10درصد اون با UI Test/End-to-End تست بشه ولی به دلیل هزینه بر بودن Unit Test نسبت به بقیه تستها و البته حجم سنگین اش در صورتی که بخوایم اصولی کار کنیم و به الطبع زمان زیادی که میگیره باعث شده اکثر شرکتها در بهترین حالت فقط Integration Test داشته باشن که هم هزینه کمتری نسبت به بقیه داره و هم بخش بزرگی از سیستم و سرویسها رو یک جا تست میکنه.
قطعا که این روش مزایای Unit Test رو نداره و تست پذیری جامع و حس اطمینانی که تست واحد به ارمغان میاره رو بقیه روشها نمیارن ولی خب اینی که گفتم وضعیتی بود که توی چندتا شرکت برخورد داشتم باهاش.
به تجربه هم بهم ثابت شده نوشتن اصولی تست با Coverage بالا میسر نمیشه مگر با روی کردهای تست محور مثل TDD و BDD نه اینکه پروژه نصفش اماده شده بعد میان میگن خب حالا تست بنویسیم براش. بعدم که سختشون شد میگن تست واحد فایده نداره!