U3F1ZWV6ZTQ2NzUxODY0ODA1MTI3X0ZyZWUyOTQ5NTExODk5MzE1NA==

مقدمة عن الperformance testing وكيف نعمل installلل jmeter وماهو الthread group وماهى الsamplers | اعرف أكثر عن الperformance testing باستخدام الjmeter






مقدمة عن الperformance testing وكيف نعمل install للjmeter وماهو الthread group وماهى الsamplers | اعرف أكثر عن الperformance testing باستخدام الjmeter




ان شاء الله اليوم سوف اتحدث عن الperformance testing , وايه هى العناصر اللى بتتحكم فى الperformance testing, وازى نعمل install للjmeter , وماهو الthread group الخاص, وماهى الsamplers, عرفنا من قبل فى الموضوع الخاص بالمقدمة عن الsoftware testing ان التيستينج لايقتصر فقط على اختبار الوظائف الخاصة بالسوفتوير فقط , ولكن هذا نوع من أنواع التيستينج بيسمى الفنكشينال التيستينج, لكن اليوم ان شاء الله هنتكلم عن الperformance testing وهو نوع من أنواع النانفنكشينال تيستينج حيث انه يتم فيه اختبار أداء السوفتوير بعيدا عن الوظائف الخاصة بالسوفتوير.


ماهو الperformance testing وماهى العناصر التى تتحكم فى الperformance testing


فى الperformance testing احنا بنشوف السيستيم ازاى بيعمل لما بعمل عليه load وده له أنواع هنتكلم عن نوعين منهم, النوع الأول وهو الload testing وفى هذا النوع احنا بنعمل تيستينج للسوفتوير وهو فى الوضع الطبيعى بتاعه أو فى الوضع المسموح به يعنى السيناريوهات اللى بنعملها فى هذا النوع بيكون عدد المستخدمين بسيط أومعقول بحيث يستحملهم السيستيم , النوع الثانى وهو الstress testing وفى هذا النوع احنا بنعمل تيستينج  للسيستيم وهو فى وضع  فوق الطبيعى وبنشوف السيستيم هل هيقع ولا هيبطىء فقط يعنى فى هذا النوع انا بكون عاوز أوقع السيستيم علشان أشوف هى أيه النقطة أو الbreak point اللى عندها السيستيم هيقع.


العناصر اللى بتتحكم فى الperformance testing

1- الspeed : بشوف سرعة السيستيم لما بدخل عليه عدد من المستخدمين , هو ممكن مايحصلش  fail ولكن بيحصل بطىء زى موقع نتيجة الثانوية, وعلى أساس السرعة دى أقدر أقول السيستم بتاعى  أداؤه عالى ولا قليل.

2- الscalability: قدرة السيستيم على انه يشتغل عليه أكثر عدد من المستخدمين قد ايه , يعنى بيقدر يتحمل أكبر عدد من المستخدمين قد ايه وطبعا  لو زاد عدد المستخدمين اللى السيستيم يقدر يتحملهم  فهذا يعنى ان السيستيم أداؤه عالى.

3-الstability : قدرة السيستيم على انه يظل stable لأكبر عدد من المستخدمين , يعنى بشوف أقصى مدة بيظل السيستيم فيها stable مهما زاد عدد المستخدمين زى الفيسبوك مثلا , وطبعا كل مازادت هذه المدة اللى بيظل فيها السيستيم stable مهما زاد عدد المستخدمين كل ما كان أداؤه أعلى .

4- الreliability : بشوف السيستيم هيعمل ايه فى شروط معينة أو فى سيناريو معين أوفى case معينة زى ما بنعمل فى ال load testing  , هو أصلا الreliability نوع من أنواع الload testing.

أما بالنسبة للأدوات الخاصة بالperformance testing فعندى الjmeter وده اللى هنتكلم عنه , هنعرف ازاى نعمل له install وايه العناصر الموجودة فيه وازاى نعمل عليه performance testing , وعندى load runner ودى أداة أيضا نقدر نعمل عليها performance testing ولكنها ليست مجانية وهى مدعومة من قبل hp , وعندى كمان web load أيضا أداة أقدر اعمل عليها performance testing.

وهذا فيديو بيتكلم عن الperformance testing .



كيفية عمل install للjmeter

بعمل install للجافا , وبعدين بعمل تحميل للjmeter , وبعدين بعمله تسطيب , وبعدين بفتح ملف الbin الموجود فى الjmeter وبضغط على jmeter.bat  , بس قبل ما أضغط على jmeter.bat لازم اتأكد ان عندى فعلا جافا8 فبفتح الcmd runوبكتب فيها java-version هيظهر لى نوع الإصدار اللى عندى أتأكد انه8 علشان ميحصلش  خطأ فى البرنامج.

وهذا فيديو بيشرح كيفية عمل install للjmeter .




ما هو الthread group

أول ماهنفتح الjmeter هنلاقى على ايدينا الشمال test plan ودى اللى بنحط فيها مجموعة السيناريوهات اللى هيتعمل لها تنفيذ , بضغط على الtest plan وبعمل add thread واختار thread group , طيب هى ايه الthread group , الthread group هم المستخدمين للى هيعملوا actions على السيرفر علشان أشوف التيست بتاعى , لما نختار الthread group هنلاقى الشكل الخاص بالjmeter مقسم الى ثلاثة أقسام.

القسم الأول هو الthread group

هنلاقى فيه حقلين الname والaction ,الname بسمى الthread group بتاعى أى اسم وليكن users ,الaction بختار ايه الحدث اللى أخده لما يطلع خطأ وليكن مثلا اليوزر رقم 50 مدخلش وطلع ايرور فمثلا هختار continue يعنى كمل السيناريو عادى وبعدين عرفنى المستخدم اللى معرفش يدخل.

القسم الثانى هو الthread properties

هنلاقى فيه الnumber of thread والrump-up period والloop count ,الnumber of thread هم عدد المستخدمين اللى هدخلهم على السيرفر بتاعى , الrump-up period بالثوانى وهى الفترة أو عدد الثوانى اللى هيدخل فيهم  هؤلاء المستخدمين على السيرفر, الloop count هو عدد المرات اللى هكرر فيها هذا السيناريو على السيرفر وليكن مرتين ,مش هعمله forever علشان مايحصلش تهنيج للسيرفر.

القسم الثالث هو الscheduler configuration

لازم اعمل checkbox على الscheduler علشان اقدر أعدل على الconfiguration, هلاقى عندى فى هذا القسم حقلين وهم الduration والstart up delay , الduration هى عدد الثوانى اللى هيتعمل فيها تنفيذ للسيناريو اللى عندى(وهو ان 100 يوزر يدخلوا فى ثانية واحدة ) بغض النظر هل هيكون كل المستخدمين دخلوا ولا لأ , فمثلا لوعندى المستخدمين 100 وال rump-upبتساوى 180 ثانية وال durationبتساوى 60ثانية فهذا يعنى ان ال100 مستخدم هيتعمل لهم دخول على السيرفر فى 3 دقائق لكن مدة  تنفيذ هذا السيناريو هو دقيقة واحدة فقط حتى لو لم يدخل كل المستخدمين فى هذه المدة , الstart up delay وهى المدة (عدد الثوانى ) اللى هينتظره الjmeter قبل مايعمل بدء لتفيذ السيناريو  وليكن 10 ثوانى .

وهذا فيديو بيشرح الthread group .
 




ماهى الsamplers


الsamplers نوع من النوعين بتوع الcontroller الخاص بالjmeter والنوع الثانى هو الlogic controller , اما بالنسبة لوظيفة الsampler فهو اللى بيقول للjmeter انه يبعت ريكوست للسيرفر وينتظر لحد مايرد عليه بريسبونس , اما بالنسبة لإزاى أعمل إضافة للsampler بتاعى بحدد الthread group بتاعى وبعدين اضغط عليه واعمل  add sampler واختار الsampler اللى عاوزه وليكن http request , اما بالنسبة لإزاى نعمل configuration للsampler بتاعنا  فا احنا بعدما عملنا اضافة للsampler بتاعنا اللى هو من نوعhttp request بيكون عندنا حقل اسمه server name أو ip وده بدخل فيه الرابط الخاص بالسيرفر (الموقع) بتاعى بس بحذف منه نوع البروتكول , وبيكون فيه حقل خاص بالبروتكول هنا بقى بضيف نوع البروتكول الخاص بنقل البيانات واللى بيكون موجود فى بداية الرابط الخاص بالسيرفر اللى هعمل عليه التيست (https أو http), وبيكون فيه حقل اسمه pathهذا بحدد فيه الحاجة اللى محتاجها بالظبط من داخل السيرفر زى الصور مثلا.

وهذا فيديو بيتكلم عن الsamplers.




موضوعات قد تهمك


مقدمة عن الsoftware  testing.
كيفية كتابة الtest case.
 كيفية كتابة الbug report.
الsoftware testing principles.

العمليات الأساسية التى تمر بها الtesting process .


تعديل المشاركة Reactions:
author-img

المهندسة / فاطمة الزهراء نصر

المهندسة فاطمة الزهراء نصر السيد بدير مصرية الجنسية درست هندسة النظم والحاسبات فى كلية الهندسة جامعة الأزهر مهتمة بمجال اختبار البرمجيات ومؤسسة مدونة جودة-تك.
تعليقات
الاسمبريد إلكترونيرسالة