فوائد اختبار E2E

في هرم الاختبار من طرف إلى طرف (E2E) ، تحتل الاختبارات إحدى أعلى الدرجات. من خلال كتابة اختبار E2E واحد ، يمكنك أن تثق في نتائج منطق التطبيق الخاص بك ، واختبار التكامل مع الأنظمة الأخرى ، وإنشاء "عقد" لتطبيقك.

لسوء الحظ ، لم يكتب العديد من الزملاء الذين عملت معهم اختبارات E2E. جزئيًا لأنهم ذهبوا بتهور في اختبار الوحدة واعتقدوا أنه كان أفضل لعدد من الأسباب ، بما في ذلك اتجاه TDD. ويرجع ذلك جزئيًا إلى اعتقادهم أن اختبارات E2E يصعب كتابتها ، ويستغرق تنفيذها وقتًا طويلاً ، وهناك مشاكل في الأجهزة.

دعونا نفرز هذه الآراء ونلقي نظرة على المحترفين الذين يقدمهم اختبار E2E.

المصطلح

لنضع نوع الاختبارات التلقائية تحت اختبارات E2E. يجب أن تغطي هذه الاختبارات التلقائية جميع وظائف الخدمة من وجهة نظر العميل. يفعلون ذلك عن طريق محاكاة تفاعل العميل الفعلي ، سواء كان طلب HTTP أو النقر فوق زر في واجهة المستخدم.

نهج اختبار الوحدة أفضل

كتابة اختبارات الوحدة ، من واقع خبرتي ، تستغرق وقتًا أطول بكثير من اختبارات E2E. نعم ، في البداية سيتعين عليك معرفة كيفية كتابة اختبارات E2E بشكل أفضل ، لكن الأمر نفسه ينطبق على اختبارات الوحدة.

من ناحية أخرى ، ونتيجة لذلك ، يغطي اختبار E2E رمزًا أكثر من اختبار وحدة واحد ، على الرغم من أنه قد يستغرق عددًا أقل من الأسطر مقارنة بمجموعة اختبار وحدة مماثلة.

لا يتعين عليك إضاعة الوقت في فهم كيفية الاستهزاء بالتبعية بشكل صحيح ، لأن الأنظمة الخارجية تصبح هي نفسها في اختبارات E2E ، والتفاعل مع الخدمة قيد الاختبار مبني وفقًا لمبدأ "الصندوق الأسود".

لست بحاجة إلى التحقق من جميع شروط الحدود لطريقة فئة واحدة. هذا يزيد من مرونة العمل مع الكود ، حيث لا توجد حاجة لإعادة تشكيل مجموعة الاختبار بأكملها عند أدنى تغيير في المنطق الداخلي للتطبيق.

, , 100 ( ), .

backend- , API HTTP ( GraphQL) MQ. HTTP, mainstream .

Frontend- , , Web- () . , , , .

E2E , . . .. . , .

E2E

, , .

"" code-coverage. , , , , . exception, , ?

, E2E .

E2E API . , backend, E2E , , frontend .

, , E2E , unit-, .

! , E2E ?




All Articles