برمجيات مصممة لطريقة عملك.مصر · السعودية · الإمارات

خطة تعلم Software Testing من الصفر: من Test case لحد Performance testing

الخطة كاملة لو بتبدأ من الصفر: 5 مراحل بالترتيب، في كل واحدة إيه تتعلمه بالظبط، ومشروع تعمله بإيدك، ومدة تقريبية، وإزاي تعرف إنك جاهز للي بعدها.

ناس كتير فاكرة الـ Testing إنك تقعد تدوس على التطبيق لحد ما يبوظ.

الـ Tester شغلته يلاقي المشكلة قبل ما العميل يلاقيها، وده ليه طريقة وخطوات، مش دوس عشوائي. وعلشان تتعلمه صح فيه ترتيب: أساسيات الاختبار، وبعدها تفهم المواقع معمولة إزاي، وبعدين Postman، وبعدها الـ Automation بـ Playwright، وفي الآخر الـ Performance testing.

علّم على كل حاجة تخلصها وانت ماشي، علشان تعرف انت فين، وترجع تكمّل من نفس المكان.

قبل ما تبدأ

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

المرحلة 1 من 5

أساسيات الاختبارTest case و Bug report

المدة: 3 لـ 4 أسابيع

ابدأ بأساسيات الاختبار: تكتب Test case، يعني سيناريو بخطوات واضحة والنتيجة اللي المفروض تطلع. وتكتب Bug report يخلي المبرمج يكرر المشكلة عنده من أول مرة.

دول أهم حاجتين في الشغلانة كلها، وهتفضل تكتبهم كل يوم مهما اتعلمت أدوات بعد كده. وهنا كمان بتبدأ تبني عقلية الـ Tester، والسؤال اللي هيفضل معاك: إيه اللي ممكن يبوظ هنا؟

هتتعلم إيه

0 من 12

اعمل بإيدك

اختبر صفحة تسجيل في موقع تمارين. خد صفحة الـ login والتسجيل في موقع متعمل للتمرين زي Practice Software Testing، واكتب 15 test case على الأقل: حالات صح، وحالات غلط، وحدود زي أقل وأكتر عدد حروف. نفّذهم، واكتب bug report لكل مشكلة تلاقيها.

تعدّي للمرحلة اللي بعدها لما

  • تقدر تكتب test case أي حد تاني ينفذه من غير ما يسألك
  • الـ bug report بتاعك فيه خطوات بتكرر المشكلة من أول مرة
  • بتفكر في الحالات الغلط والحدود من غير ما حد يفكرك

المرحلة 2 من 5

الويب من جوهالمواقع معمولة إزاي

المدة: 3 لـ 4 أسابيع

بعدها تفهم المواقع معمولة إزاي، بشكل بسيط. مش هتبقى مبرمج، بس لازم تعرف إيه اللي بيحصل ورا الشاشة، علشان لما تلاقي bug تعرف هو جاي منين.

الـ Tester اللي بيفتح تاب Network ويقول «الـ request ده رجع 500» بيوفّر على المبرمج وقت كتير، وبيخلي الـ bug يتصلّح أسرع.

هتتعلم إيه

0 من 11

اعمل بإيدك

تشريح موقع بالـ DevTools. افتح موقع تمارين، واعمل login وضيف حاجة للسلة، وتابع من تاب Network كل request اتبعت: الـ method، والـ status code، والـ JSON اللي رجع. واكتب صفحة بتشرح فيها اللي حصل خطوة بخطوة، وأي error ظهر في الـ Console.

تعدّي للمرحلة اللي بعدها لما

  • تقدر تقول المشكلة في الـ frontend ولا الـ backend من تاب Network
  • فاهم معنى أي status code مشهور من غير ما تدوّر
  • بتحط في الـ bug report الـ request اللي فشل والـ error اللي في الـ Console

المرحلة 3 من 5

Postmanتختبر السيرفر من غير شاشة

المدة: 3 لـ 4 أسابيع

بعد كده Postman، ودي أداة بتختبر بيها السيرفر اللي التطبيق بيكلمه، من غير شاشة. الشاشة ممكن تبان سليمة والمشكلة في الـ API اللي وراها، والعكس.

وهنا هتكتب أول سطور كود ليك: الـ tests في Postman بتتكتب بـ JavaScript. سطور بسيطة، بس هي اللي هتجهزك للمرحلة اللي بعدها.

هتتعلم إيه

0 من 11

اعمل بإيدك

Collection كاملة لـ API تمارين. خد API متعمل للتمرين زي Restful Booker، واعمل collection فيها: login وتاخد الـ token، وتعمل حجز، وتجيبه، وتعدّله، وتمسحه. وكل request عليه tests بتتأكد من الـ status code والبيانات، ومعاهم حالات غلط. وشغّلها كلها مرة واحدة.

تعدّي للمرحلة اللي بعدها لما

  • تقدر تختبر API من الـ documentation بتاعه بس، من غير أي شاشة
  • كل request عندك عليه test، مش بس بتبص على الـ response بعينك
  • كتبت سطور JavaScript في الـ tests وفاهم كل سطر بيعمل إيه

المرحلة 4 من 5

Automationكود يعمل الاختبار بدالك

المدة: 8 لـ 12 أسبوع

وبعدها Automation بأداة زي Playwright، يعني تكتب كود يعمل الاختبار بدالك كل مرة. نفس الـ test cases اللي كنت بتنفذها بإيدك، بتتنفذ لوحدها في دقايق مع كل تعديل في الكود.

دي أطول مرحلة، لأنك محتاج أساسيات برمجة الأول. هنمشي بـ JavaScript، لأنها اللغة اللي بدأت بيها في Postman، و Playwright بيدعمها من الأساس.

هتتعلم إيه

0 من 12

اعمل بإيدك

Automation لمتجر تجريبي. خد موقع متعمل للتمرين زي Sauce Demo، واكتب tests للـ login الصح والغلط، وإضافة منتج للسلة، والـ checkout لحد الآخر. استخدم Page Object Model، وارفع المشروع على GitHub، وخلي الـ tests تشتغل لوحدها مع كل push.

تعدّي للمرحلة اللي بعدها لما

  • الـ tests بتاعتك بتنجح كل مرة، مش مرة آه ومرة لأ
  • لما test يفشل، بتعرف من الـ trace فشل ليه
  • المشروع على GitHub، ومعاه README بيقول يتشغّل إزاي

المرحلة 5 من 5

Performance Testingيستحمل كام مستخدم في نفس اللحظة

المدة: 3 لـ 4 أسابيع

وفي الآخر Performance testing، يعني السيستم يستحمل كام مستخدم في نفس اللحظة. الموقع ممكن يشتغل تمام مع مستخدم واحد، ويقع لما ناس كتير يدخلوا مرة واحدة وقت عرض أو نتيجة.

هنستخدم k6، وبتكتب فيه الـ test بـ JavaScript برضه. وقاعدة مهمة: متعملش load test غير على سيستم بتاعك، أو معاك إذن صريح بيه. الحمل ده ممكن يوقّع موقع حد تاني، وساعتها بيتحسب هجوم عليه.

هتتعلم إيه

0 من 12

اعمل بإيدك

Load test على QuickPizza. ده تطبيق صغير عاملاه Grafana، الشركة اللي ورا k6، علشان الناس تتمرن عليه. شغّله على جهازك بـ Docker زي ما الـ README بتاعه بيقول، واكتب script بيبدأ بـ 5 مستخدمين ويزوّد بالتدريج لحد ما الـ response time يبوظ، وحط thresholds. وفي الآخر اكتب تقرير صغير: استحمل كام، وبدأ يقع فين، بالأرقام.

تعدّي للمرحلة اللي بعدها لما

  • تقدر تقول السيستم بيستحمل كام مستخدم قبل ما يعدّي الحد اللي حطيته
  • فاهم ليه p95 بيقولك أكتر من المتوسط
  • التقرير بتاعك فيه أرقام ونتيجة، مش «السيستم بطيء» وخلاص

سلم المشاريع

المشاريع هي اللي بتعلمك بجد، وهي اللي هتوريها لأي حد عايز يشغّلك. دول 5 مشاريع، كل واحد أصعب شوية من اللي قبله. أول 4 عملتهم في المراحل فوق، والخامس بيجمعهم في مكان واحد.

  1. Test cases و bug reports

    Test design و Bug reports

    صفحة login وتسجيل في موقع تمارين: 15 حالة على الأقل، و bug report لكل مشكلة.

  2. Postman collection

    Postman و JavaScript و API

    API كامل من الـ login للمسح، وكل request عليه tests، وحالات غلط.

  3. Automation بـ Playwright

    Playwright و Page Object Model و GitHub Actions

    متجر تجريبي من الـ login لحد الـ checkout، والـ tests بتشتغل لوحدها مع كل push.

  4. Load test بـ k6

    k6 و Thresholds

    تطبيق شغال على جهازك، وتعرف بالأرقام بيستحمل كام وبيقع فين.

  5. مشروع الـ portfolio

    كل اللي فات و GitHub

    جمّع شغلك في repository واحد: الـ test cases، وأحسن bug reports كتبتها، والـ Postman collection، والـ Playwright tests شغالة لوحدها، وتقرير الـ load test. واكتب README بيشرح انت اختبرت إيه وليه، مش بس بأنهي أداة. ده اللي بيوري عقليتك.

مصادر مجانية

كل دول مجانيين، أو فيهم جزء مجاني يكفيك. متجمعش مصادر كتير: اختار مصدر أساسي واحد لكل مرحلة وكمّل بيه، والباقي ارجعله لما تقف في حتة.

أساسيات الاختبار

مواقع تتمرن عليها

الويب

Postman

Automation

Performance Testing

أكتر الأخطاء اللي بشوفها

  • إنك تجري ورا الأدوات وتنسى السؤال الصح. ورأيي إن عقلية الـ Tester أهم من الأدوات. الأداة بتتغير، لكن السؤال الصح بيفضل زي ما هو: إيه اللي ممكن يبوظ هنا؟ ومين هيتأذي لو باظ؟ اللي حافظ أداة ومش عارف يسأل، هيكتب automation لحاجات ملهاش لازمة.
  • إنك تختبر بالدوس العشوائي. الدوس العشوائي بيلاقي bugs بالصدفة، ومتقدرش تكرره. الـ test cases والـ exploratory testing بهدف بيلاقوها عن قصد.
  • إنك تكتب bug report محدش يقدر يكرره. «الزرار مش شغال» مش bug report. اكتب الخطوات، والبيانات، والمتصفح، والمتوقع، واللي حصل، وحط screenshot. لو المبرمج كرر المشكلة من أول مرة، انت عملت شغلك صح.
  • إنك تختبر الطريق السهل بس. المستخدم مش هيمشي على السيناريو اللي في دماغك. جرب البيانات الغلط، والحقول الفاضية، والحدود، والضغط على الزرار مرتين.
  • إنك تعمل automation لكل حاجة. الـ automation للحاجات اللي بتتكرر كتير وثابتة. الحاجات الجديدة والمتغيرة بتحتاج عين بني آدم الأول.

بعد كده

لما تخلص الخطة دي ويبقى عندك مشروع الـ portfolio، دي الخطوات اللي بعدها:

  • Mobile testing: تطبيقات الموبايل ليها مشاكلها: شاشات وأنظمة مختلفة، ونت بيقطع، وإشعارات. وفيه أدوات automation ليها زي Appium.
  • Security testing: تبدأ بـ OWASP Top 10، ودي قايمة بأشهر أنواع الثغرات في تطبيقات الويب، وإزاي تدوّر عليها.
  • شهادة ISTQB Foundation: لو حابب تثبت الأساسيات على ورق. والـ syllabus بتاعها ينفعك تقراه حتى لو مش هتمتحن.

احفظ الصفحة دي، وارجعلها كل ما تخلص حاجة وعلّم عليها. ولو وقفت في مرحلة ومش فاهم، ارجع للي قبلها، غالبًا المشكلة هناك.

لديك مشروع يحتاج من يبنيه؟

تبني JoSamCode مواقع وأنظمة وأتمتة لأنشطة في مصر والخليج. إذا كانت لديك فكرة تحتاج من يبنيها، أخبرنا بها.

ابدأ مشروعكاختر الخدمة المناسبة