1.1 What is Software testing ؟
بسم الله الرحمن الرحيم
السلام عليكم ورحمة الله وبركاته
انا بتأسف ان الدرس دا بالعاميه المصريه وجارى تعديله
Contact Me : 01033466109
أهلا بكم مره ثانيه , فى هذا الدرس سوف نتعلم ما هو الـ Software Testing لكن قبل ما نبدأ هيا نتعرف اولا ما هو الـ Software.
الـــ Software : فيه تعريفات كتير للــ Software لكن اسهلهم انه عباره عن Application او Programe مكتوب او مصنوع بإحدى لغات البرمجه لتحقيق هدف معين او لحل مشكله ما .
ياعنى مثلا تطبيق الفيس بوك هو عباره عن Software مكتوب بلغات برمجه زى PHP و Python والهدف من الفيس بوك هو حل مشكلة التواصل بين الناس.
نيجى باه تانى لتعريف الــ Software Testing : تعريف الـ Testing بيختلف باختلاف الهدف منه , فمثلا ممكن نقول
ان الـ Testing هو عملية ايجاد الاخطاء فى الـ Software
او ان الـ Testing هو عملية التحقق ان الـ Software بيعمل الهدف اللى اتصنع عشانه
وممكن تعريف تالت ان الـ Testing هو عملية زيادة وقياس جودة الـ Software .
عشان نفهم معنى الـ Testing اكتر لازم تعرف اى هى اهداف الـ Testing وعن طريقها هيكون عندك إدراك كامل بمعنى الـ Testing ومش مجرد تعريف عابر.
K1 :: الاهداف "Objectives of Testing" : طبقا لمنهج ISTQB فيه 6 اهداف للـ Testing ودا مش معناه ان مفيش اهداف غيرهم لكن مفيش مشروع هتش
تغل عليه بدون ما تلاقي هدف من الاهداف دى موجود فيه , لكن بما اننا بنشرح منهج ISTQB هنلتزم بالموجود فى المنهج .
-
To prevent defects by evaluate work products such as requirements, user stories, design, and code
منع الخطاء من انها تحصل اصلا فى الـ Software , ودا عن طريق مراجعة متطلبات العميل والتصميم والكود اللى كتبه المطور واكتشاف المشاكل بدرى قبل ما الـ Software يتعمل اصلا وتصليح المشاكل هنا بيكون رخيص جدا مقارنتا بإنى الاقي مشاكل بعد ما الـ Software يطلع
- To verify whether all specified requirements have been fulfilled
هنا بتأكد من ان كل المتطلبات بتاعة الـ Software تحققت , زى مثلا ان يكون فيه Software من المتطلبات بتاعته يدعم اللغه العربيه والانجليزيه فأنا بتحقق من انه فعلا بيدعم اللغتين دول ومش بيدعم واحده منهم فقط .
-
To check whether the test object is complete and validate if it works as the users and other stakeholders expect
التحقق من ان الـ Software تم الانتهاء منه فعلا وانه يعمل كما يتوقع اصحاب العمل والمستخدمين النهائيين له.
-
To build confidence in the level of quality of the test object
اكتساب الثقه فى جودة الـ Software عن طريق انى الاقي اخطاء واحلها وبكدا جودة السوفتوير تعلى وتعلى معاها الثقه فيه.
-
To find defects and failures thus reduce the level of risk of inadequate software quality
ايجاد الاخطاء فى الـ Software .
-
To provide sufficient information to stakeholders to allow them to make informed decisions, especially regarding the level of quality of the test object
تقديم المعلومات اللازمه لصناع القرار , زى مثلا هل الـ Software جاهز , طيب معظم المشاكل متركزه فى جزء معين , عدد الـ defect اللى لقيناها .
-
To comply with contractual, legal, or regulatory requirements or standards, and/or to verify the test object’s compliance with such requirements or standards
التحقق من المعايير التعاقديه او القانونيه , وهى متطلبات قانونيه بيتم الاتفاق عليها قبل الشروع فى العمل ولازم تكون متحققه فى الـ Software
ملحوظه : الـ Testing ممكن يكون له اكتر من هدف والاهداف دى بتتغير بتغير نوع الـ Software و الـ Test level اللي انا فيها و Test type اللى بستخدمه
ــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ
k2 :: الفرق بين Testing and Debugging :
فى الـ Dynamic Testing انا بلاقي الـ Defect فى الـ Software وببلغ بيها الـ Developer .
الـ Developer بياخد الـ Defect دى ويبدا يعملها debugging "يدور على اسباب المشكله ويحلها". وبعدين يرجعها للـ Tester يعملها Retest عشان يتأكد انها اتحلت
يعنى باختصار ..
الـ testing هى عملية ايجاد الـ Defect عن طريق الـtester
اما الـ debugging هى عملية اصلاح الـ defect عت طريق الـ developer
ــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ
بعض المفاهيم الخاطئه عن الـ Testing :
1) أنه يتكون فقط من إجراء الاختبارات او أي عمل Execution الـ Test Cases والتحقق من النتائج , لكن الـ Testing بيتكون من Process تنيه كتير غير عمليه الـ Execution ومنها
test planning,
Test Analyzing,
Test Designing,
Test Implementation,
Test Execution,
Evauate Exit Criteria
Test Clousure
مش تقلق لان الـ Process دى هتتشرح بالتفصيل بعد كدا , ومش تقلق لو فيه مصطلح معرفتش معناه وحده وحده الدنيا هتوضح
2) اما بعمل Testing للـ Software عن طريق انى بعمل Execution , هنا الـ Testing بيكون اسمه Dynamic Testing
ومش كل الـ Testing لازم اعمل Execution للـ Software , فىه نوع تانى للـ Testing اسمه Static Testing وفى النوع دا مش بعمل Execution خالص لا انا بعمل مراجعه او Review على الـ Test bases او الـ Code
الـ test bases هى اى resources للـ System او الـ Software اللى هشتغل عليه " اى حاجه فيها معلومات عن السيستم "
المصادر والمراجع
- https://maharatech.gov.eg/enrol/index.php?id=2
-
https://www.udemy.com/course/foundation-level-training/learn/lecture/20819518#notes
النهاية
لاتنسى تتبع الدورة لإشعارك عندما يتم التعديل على المتحوى او اضافة المزيد. ايضاً لاتنسى الاعجاب بها ومشاركتها مع الاخرين لتعم الفائد
محتوى الدورة
.مقدمه عن الدوره | |
---|---|
1 | ? What is ISTQB |
2 | let's start |
.Chapter 1. Fundamentals of testing | |
1 | 1.1 What is Software testing ؟ الدرس الحالي |
2 | 1.2 Why is Testing Necessary ؟ |
عن الدرس
0 إعجاب |
2 متابع |
0 مشاركة |
5764 مشاهدات |
منذ 3 سنوات |
التعليقات (0)
لايوجد لديك حساب في عالم البرمجة؟
تحب تنضم لعالم البرمجة؟ وتنشئ عالمك الخاص، تنشر المقالات، الدورات، تشارك المبرمجين وتساعد الآخرين، اشترك الآن بخطوات يسيرة !