Quick Overview of Architectural Tests

هو نوع بيتأكد ان التيم كله بيراعى Architecture Rules  و الـ High Level Decisions  الخاصة بالـ Application مهم هنا كمان نأكد ان ال Architecture Test  حاجه مفيده جدا و تأثيرها بيبان من اول يوم و يفضل مكمل معاك
Quick Overview of Architectural Tests
Quick Overview of Architectural Tests

في هذه الصفحة

زى ما احنا عارفين ان أى مهمة بتتعمل يدوي بتبقى عرضة للأخطاء والنسيان و الملل و قلة الكفاءة مع الوقت، خاصة لو المهمة دى طويلة ومكررة و مفيهاش اى ابداع. عشان كده الناس من زمان فى اى مجال و خاصة فى البرمجة و كتابة الكود و صناعة الـ Software بتحاول تحول المهمات الروتينية المتكررة لصورة Automatic أكتر، 

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

و مهمة التأكد من الأخطاء دى كانت جزء من مهام الناس الخاصة بالجودة “QC”  ولكن هى عملية مرهقة جدا عشان تتأكد ان فعلا مفيش أخطاء محتاج تراجع الجزء اللى المطور "developer"  اشتغل عليه و الاجزاء اللى حواليه و فى الغالب لازم تعدى على النظام كله عشان تتأكد ان كل حاجه تمام، طبعا ده كلام ممكن يبقى قابل للتطبيق لو النظام و حجم الكود نفسه صغير ولكن لو  كبير و بيعمل عمليات مهمة فالموضوع ممكن يحتاج لشهور عشان بس تتأكد ان السيستم بتاعك شغال مظبوط 

و من هنا طلع مبدأ الكود اللى بيُختبر أو Code Testing و ده طبعا حاجة عظيمة جدا عشان ممكن يشتغل فى أى وقت و ممكن يشتغل أى عدد من المرات و مش هيتعب ومش هيزهق و هيدينى feedback  لحظي، كمان هيوفر وقت التيم كله و يعمل شغل كان محتاج شهر لو هيتعمل يدوي ولكن فى ربع ساعه مثلا. 


طلع بقى هنا شوية أنواع من الـ Testing كلهم ليهم نفس الهدف الأساسى اللى قولناه فوق بس كل واحد فيهم بيغطى جزء معين وليه غرض محدد زى ايه؟

  • Unit Test

والنوع ده مسؤول انه يغطى وحدات صغيرة من الكود وليكن مثلا function معينة عشان يتأكد انها بتأدى الوظيفة اللى اتكتبت عشانها، فبالتالى لو اى حد غير فيها أو الهدف بتاعها او فى اى حاجه تانى أثرت عليها، المفروض النوع ده من ال test يساعدنى أكتشف ده بسهولة ، و ميزة النوع ده انه سهل و بسيط و سريع و تقدر تشغله فى اى وقت و انت شغال اثناء مرحلة كتابة الكود بتاعك و بعدها كمان 

  • Integration Test

و ده نوع هدفه انه يغطي أكثر من جزء من الكود مع بعض و يتأكد انهم بيشتغلوا سوا مظبوط عشان يؤدوا وظيفة معينة فبالتالي هياخد وقت أكبر فى التنفيذ من النوع السابق ولكنه يغطى مساحة أكبر 

  • Automation Test/Acceptance test

و النوع ده هدفه انه يغطى جزء أكبر من الاتنين اللى فاتوا، و يجرب النظام بنفس الطريقة اللى هيجربها المستخدم ويغطى سيناريوهات مختلفة 

و فيه أنواع تانية كتير بتساعد فى الوصول للهدف الأساسي وهو ان احنا نحافظ على الجودة العامة للـ Software و نقلل الاخطاء الناتجة عن التغييرات المستمرة للتطبيق 

ودلوقتى بعد ما عرفنا شوية عن الفكرة العامة للـ Testing و بعض الأنواع المشهورة هنتكلم عن موضوع مش منتشر بشكل كبير ولكن مهم جدا لاي فريق ان يكون عندهم النوع ده من الـ Testing بصرف النظر عن باقى الانواع اللى اتكلمنا فيها قبل كده و النوع ده هو Architecture Test 


ايه هو ال Architecture Test  ؟

هذا المقال مخصص للأعضاء فقط

اشترك الآن بنشرة اقرأ-تِك الأسبوعية

لا تدع أي شيء يفوتك. واحصل على أحدث المقالات المميزة مباشرة إلى بريدك الإلكتروني وبشكل مجاني!