أداة اختبار LoadRunner – المكونات والمكونات Architecture

ما هو LoadRunner؟

بي. هي أداة لاختبار الأداء ابتكرتها شركة Mercury في عام 1999. وكان LoadRunner later استحوذت عليها شركة HPE في عام 2006. وفي عام 2016، استحوذت شركة MicroFocus على شركة LoadRunner.

يدعم LoadRunner أدوات التطوير والتقنيات وبروتوكولات الاتصال المختلفة. في الواقع، هذه هي الأداة الوحيدة في السوق التي تدعم هذا العدد الكبير من بروتوكولات التنفيذ اختبار أداء. يتم استخدام نتائج اختبار الأداء التي ينتجها برنامج LoadRunner كمعيار مقارنة بالأدوات الأخرى

فيديو لود رانر

لماذا لود رانر؟

بي. ليست مجرد أداة رائدة في اختبار الأداء، ولكنها لا تزال رائدة في السوق في نموذج اختبار الأداء. في تقييم حديث، تمتلك شركة LoadRunner حوالي 85% من حصة السوق في صناعة اختبار الأداء.

بي.

بشكل عام، تدعم أداة LoadRunner RIA (تطبيقات الإنترنت الغنية)، وWeb 2.0 (HTTP/HTML، وAjax، وFlex، وSilverlight وما إلى ذلك)، وMobile، وSAP، Oracle، MS SQL الخادم، سيتريكس، آر تي إي، Mail وفوق كل شيء، Windows قابس كهرباء. لا توجد أداة منافسة في السوق يمكنها تقديم مجموعة واسعة من البروتوكولات المخصصة لأداة واحدة.

بي.

الأمر الأكثر إقناعًا لاختيار LoadRunner في اختبار البرامج هو مصداقية هذه الأداة. لقد اكتسبت أداة LoadRunner سمعة طيبة منذ فترة طويلة كما ستجد في كثير من الأحيان يقوم العملاء بالتحقق من معايير الأداء الخاصة بك باستخدام LoadRunner. ستجد الراحة إذا كنت تستخدم LoadRunner بالفعل لتلبية احتياجات اختبار الأداء الخاصة بك.

يتكامل برنامج LoadRunner بشكل وثيق مع أدوات HP الأخرى مثل الاختبار الوظيفي الموحد (QTP) وALM (إدارة دورة حياة التطبيق) مما يمكّنك من إجراء عمليات الاختبار الشاملة.

يعمل LoadRunner على مبدأ محاكاة المستخدمين الظاهريين في التطبيق المعني. يُطلق على هؤلاء المستخدمين الظاهريين أيضًا اسم VUsers، ويقومون بتكرار طلبات العميل ويتوقعون استجابة مقابلة لتمرير المعاملة.

لماذا تحتاج إلى اختبار الأداء؟

ما يقدر ب خسارة 4.4 billايون في الإيرادات يتم تسجيله سنويًا بسبب ضعف أداء الويب.

في عصر الويب 2.0 اليوم، يقوم المستخدمون بالنقر بعيدًا إذا لم يستجب موقع الويب خلال 8 ثوانٍ. تخيل نفسك تنتظر لمدة 5 ثواني عندماarchiلـ Google أو تقديم طلب صداقة على Facebook. غالبًا ما تكون تداعيات توقف الأداء أكثر تدميراً مما يمكن تصوره من أي وقت مضى. لدينا أمثلة مثل تلك التي ضربت مؤخرًا الخدمات المصرفية عبر الإنترنت من بنك أوف أمريكا، Amazon خدمات الويب أو Intuit أو Blackberry.

وفقًا لـ Dunn & Bradstreet، فإن 59% من شركات Fortune 500 تواجه ما يقدر بـ 1.6 hours من التوقف كل أسبوع. وبالنظر إلى أن متوسط ​​شركة Fortune 500 التي تضم ما لا يقل عن 10,000 موظف تدفع 56 دولارًا في الساعة، فإن جزء العمل من تكاليف التوقف عن العمل لمثل هذه المؤسسة سيكون 896,000 دولارًا أسبوعيًا، وهو ما يترجم إلى أكثر من 46 مليون دولار سنويًا.

تشير التقديرات إلى أن توقف Google.com لمدة 5 دقائق فقط (19 أغسطس 13) سيكلف عملاق البحث ما يصل إلى 545,000 دولار.

تشير التقديرات إلى أن الشركات خسرت مبيعات بقيمة 1100 دولار في الثانية بسبب الأحداث الأخيرة Amazon انقطاع خدمة الويب.

عندما يتم نشر نظام البرمجياتyed من قبل إحدى المؤسسات، قد تواجه العديد من السيناريوهات التي قد تؤدي إلى تأخر الأداء. هناك عدد من العوامل التي تسبب تباطؤ الأداء، ومن الأمثلة على ذلك ما يلي:

  • زيادة عدد السجلات الموجودة في قاعدة البيانات
  • زيادة عدد المحاكاةneoطلباتنا المقدمة إلى النظام
  • عدد أكبر من المستخدمين يصلون إلى النظام في وقت واحد مقارنة بالماضي

ما هو لودرنر Archiتكنولوجيا؟

بشكل عام ، archiهيكل HP LoadRunner هو complex، ولكن من السهل أن نفهم.

بي. Architecture
بي. Archiمخطط فني

لنفترض أنه تم تكليفك بالتحقق من أداء Amazon.com لـ 5000 مستخدم

في مواقف الحياة الواقعية، لن يكون كل هؤلاء المستخدمين البالغ عددهم 5000 مستخدمًا في الصفحة الرئيسية ولكن في قسم مختلف من مواقع الويب. كيف يمكننا محاكاة بشكل مختلف.

VUGen

VUGen أو المستخدم الظاهري Generator هو IDE (بيئة التطوير المتكاملة) أو محرر ترميز غني. يتم استخدام VUGen لتكرار سلوك النظام تحت التحميل (SUL). يوفر VUGen ميزة "التسجيل" التي تسجل الاتصال من وإلى العميل والخادم في شكل برنامج نصي مشفر - يسمى أيضًا برنامج VUser النصي.

لذلك بالنظر إلى المثال أعلاه، يمكن لـ VUGen التسجيل لمحاكاة المسارwing العمليات التجارية:

  1. تصفح صفحة المنتجات Amazonكوم
  2. الدفع
  3. معالجة الدفع
  4. التحقق من صفحة حسابي

مراقب

بمجرد الانتهاء من البرنامج النصي VUser، تعد وحدة التحكم أحد مكونات LoadRunner الرئيسية التي تتحكم في محاكاة التحميل عن طريق الإدارة، على سبيل المثال:

  • كم عدد VUsers المطلوب محاكاته مقابل كل عملية تجارية أو مجموعة VUser
  • سلوك مستخدمي VUs (ramp فوق، ramp في نفس الوقتneoنحن أو الطبيعة المتزامنة وما إلى ذلك)
  • سيناريو طبيعة الحمل، مثل الحياة الواقعية أو التوجه نحو الهدف أو التحقق من اتفاقية مستوى الخدمة
  • ما هي الحاقنات التي يجب استخدامها، وعدد VUsers مقابل كل حاقن
  • جمع النتائج بشكل دوري
  • خداع IP
  • الإبلاغ عن الأخطاء
  • الإبلاغ عن المعاملات وما إلى ذلك.

سيؤدي أخذ تشبيه من وحدة التحكم الخاصة بنا إلى إضافة المتابعةwing المعلمة إلى البرنامج النصي VUGen

1) 3500 مستخدم تصفح صفحة المنتجات Amazonكوم

2) 750 مستخدما في الدفع

3) 500 مستخدم تنفيذ معالجة الدفع

4) 250 مستخدم التحقق من صفحة حسابي فقط بعد قيام 500 مستخدم بمعالجة الدفع

حتى أكثر كومplex السيناريوهات ممكنة

  1. قم ببدء 5 VUsers كل ثانيتين حتى يتم تحميل 2 VUsers (تصفح Amazon صفحة المنتج) يتم تحقيقه.
  2. كرر لمدة 30 دقيقة
  3. تعليق التكرار لـ 25 مستخدمًا VUsers
  4. أعد تشغيل 20 VUSers
  5. قم بإنشاء مستخدمين (في Checkout، ومعالجة الدفع، وصفحة MyAccounts) كل ثانية.
  6. سيتم إنشاء 2500 مستخدم VUsers في الجهاز A
  7. سيتم إنشاء 2500 مستخدم VUsers في الجهاز B

آلة الوكلاء / التحميل Generatorق / عن طريق الحقن

تعد HP LoadRunner Controller مسؤولة عن محاكاة الآلاف من VUsers - يستهلك هؤلاء VUsers موارد الأجهزة، على سبيل المثال، المعالج والذاكرة - ومن ثم وضع حد على الجهاز الذي يحاكيهم. علاوة على ذلك، يحاكي جهاز التحكم مستخدمي VUsers من نفس الجهاز (حيث يوجد جهاز التحكم) وبالتالي قد لا تكون النتائج دقيقة. لمعالجة هذه المشكلة، يتم توزيع كافة مستخدمي VUsers عبر أجهزة مختلفة، تسمى حمل Generatorق أو تحميل عن طريق الحقن.

وكممارسة عامة، توجد وحدة التحكم على جهاز مختلف ويتم محاكاة الحمل من أجهزة أخرى. اعتمادًا على بروتوكول البرامج النصية VUser ومواصفات الجهاز، قد تكون هناك حاجة لعدد من حاقنات التحميل للمحاكاة الكاملة. على سبيل المثال، سيتطلب VUsers لبرنامج نصي HTTP 2-4 ميجابايت لكل مستخدم VUser للمحاكاة، وبالتالي ستكون هناك حاجة إلى 4 أجهزة بذاكرة وصول عشوائي سعتها 4 جيجابايت لكل منها لمحاكاة تحميل 10,000 مستخدم VUsers.

أخذ القياس من لدينا Amazon على سبيل المثال، سيكون إخراج هذا المكون

تحليل الأداء

بمجرد تنفيذ سيناريوهات التحميل، فإن دور "تحليل الأداءتأتي مكونات LoadRunner.

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

يتم تسجيل جميع الأخطاء والاستثناءات في أ Microsoft الوصول إلى قاعدة البيانات، اسمه،output.mdb. يقرأ مكون "التحليل" ملف قاعدة البيانات هذا لإجراء أنواع مختلفة من التحليل وإنشاء الرسوم البيانية.

تُظهر هذه الرسوم البيانية اتجاهات مختلفة لفهم الأسباب الكامنة وراء الأخطاء والفشل تحت الحمل؛ وبالتالي يساعد في معرفة ما إذا كان التحسين مطلوبًا في SUL أو Server (على سبيل المثال JBoss، Oracle) أو البنية التحتية.

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

تحليل الأداء

كيفية القيام باختبار الأداء

يمكن تقسيم خارطة طريق اختبار الأداء بشكل عام إلى 5 خطوات:

  • التخطيط لاختبار الحمل
  • إنشاء البرامج النصية VUGen
  • إنشاء السيناريو
  • تنفيذ السيناريو
  • تحليل النتائج (متبوعًا بتعديل النظام)

الآن بعد أن قمت بتثبيت LoadRunner، دعنا نفهم الخطوات المتضمنة في العملية واحدة تلو الأخرى.

اختبار أداء

الخطوات المتبعة في عملية اختبار الأداء

الخطوة 1) التخطيط لاختبار الحمل

يختلف التخطيط لاختبار الأداء عن التخطيط أ SIT (اختبار تكامل النظام) or UAT (اختبار قبول المستخدم). يمكن تقسيم التخطيط إلى مراحل صغيرة كما هو موضح أدناه:

قم بتجميع فريقك

قم بتجميع فريقك

عند البدء في اختبار LoadRunner، من الأفضل توثيق الأشخاص الذين سيشاركون في النشاط من كل فريق مشارك أثناء العملية.

مدير المشروع:

قم بترشيح مدير المشروع الذي سيمتلك هذا النشاط ويكون بمثابة الشخص المسؤول عن التصعيد.

خبير وظيفي / محلل أعمال:

توفير تحليل استخدام SUL وتوفير الخبرة في وظائف الأعمال لموقع الويب / SUL

خبير اختبار الأداء:

إنشاء اختبارات الأداء الآلية وتنفيذ سيناريوهات التحميل

System Archiتكت:

يوفر مخطط SUL

مطور الويب والشركات الصغيرة والمتوسطة:

  • يحافظ على الموقع ويوفر جوانب المراقبة
  • تطوير الموقع وإصلاح الأخطاء

مدير النظام:

  • يحافظ على الخوادم المعنية طوال مشروع الاختبار

التطبيقات التفصيلية والعمليات التجارية المعنية:

ناجح اختبار الحمل يتطلب أنك تخطط لتنفيذ عملية تجارية معينة. تتكون عملية الأعمال من خطوات محددة بوضوح تتوافق مع المعاملات التجارية المرغوبة - وذلك لتحقيق أهداف اختبار التحميل الخاصة بك.

يمكن إعداد مقياس المتطلبات لإثارة تحميل المستخدم على النظام. وفيما يلي مثال لنظام الحضور في الشركة:

الخطوط العريضة للتطبيقات والعمليات التجارية المعنية

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

وبالمثل، يمكننا استنتاج العدد الإجمالي للمستخدمين المتصلين بالتطبيق (SUL) في أي ساعة من اليوم. يتم حساب هذا في الصف الأخير.

الحقائق المذكورة أعلاه مجتمعة تعطينا العدد الإجمالي للمستخدمين الذين نحتاج إلى اختبار أداء النظام معهم.

تحديد إجراءات إدارة بيانات الاختبار

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

  • يقوم المستخدم "أ" بإنشاء عقد مالي وتقديمه للمراجعة.
  • مستخدم آخر "ب" يوافق على 200 عقد في اليوم تم إنشاؤها بواسطة المستخدم "أ"
  • مستخدم آخر 'C' يدفع حوالي 150 عقدًا يوميًا معتمدًا من المستخدم 'B'

في هذه الحالة، يحتاج المستخدم "ب" إلى "إنشاء" 200 عقد في النظام. بالإضافة إلى ذلك، يحتاج المستخدم C إلى 150 عقدًا "معتمدًا" من أجل محاكاة حمل يصل إلى 150 مستخدمًا.

وهذا يعني ضمنيًا أنه يجب عليك إنشاء ما لا يقل عن 200+150= 350 عقدًا.

بعد ذلك، قم بالموافقة على 150 عقدًا لتكون بمثابة بيانات اختبار للمستخدم ج - وستكون العقود الـ 200 المتبقية بمثابة بيانات اختبار للمستخدم ب.

شاشات المخطط التفصيلي

توقع كل العوامل التي يمكن أن تؤثر على أداء النظام. على سبيل المثال، سيكون لتقليل الأجهزة تأثير محتمل على أداء SUL (النظام تحت التحميل).

قم بتجميع جميع العوامل وقم بإعداد أجهزة المراقبة حتى تتمكن من قياسها. فيما يلي بعض الأمثلة:

  • المعالج (لخادم الويب وخادم التطبيقات وخادم قاعدة البيانات والحقن)
  • ذاكرة الوصول العشوائي (لخادم الويب وخادم التطبيقات وخادم قاعدة البيانات والحقن)
  • خادم الويب/التطبيقات (على سبيل المثال IIS وJBoss وJaguar Server وTomcat وما إلى ذلك)
  • خادم قاعدة البيانات (حجم PGA وSGA في حالة Oracle وMSSQL Server وSPs وما إلى ذلك)
  • استخدام عرض النطاق الترددي للشبكة
  • NIC الداخلية والخارجية في حالة clusterجي
  • موازن التحميل (وأنه يقوم بتوزيع الحمل بالتساوي على جميع العقد clusters)
  • تدفق البيانات (احسب مقدار البيانات التي تنتقل من وإلى العميل والخادم - ثم احسب ما إذا كانت سعة بطاقة NIC كافية لمحاكاة عدد X من المستخدمين)

الخطوة 2) إنشاء البرامج النصية VUGen

الخطوة التالية بعد التخطيط هي الإنشاء البرامج النصية VUser.

الخطوة 3) إنشاء السيناريو

الخطوة التالية هي إنشاء سيناريو التحميل الخاص بك

الخطوة 4) تنفيذ السيناريو

تنفيذ السيناريو هو المكان الذي تقوم فيه بمحاكاة تحميل المستخدم على الخادم عن طريق توجيه العديد من مستخدمي VUsers لأداء المهام في نفس الوقتneoعادة.

يمكنك ضبط مستوى التحميل عن طريق زيادة أو تقليل عدد مستخدمي VUsers الذين يقومون بمهام في نفس الوقت.

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

الخطوة 5) تحليل النتائج (متبوعًا بتعديل النظام)

أثناء تنفيذ السيناريو، يسجل LoadRunner أداء التطبيق تحت أحمال مختلفة. يتم حفظ الإحصائيات المستمدة من تنفيذ الاختبار وحذفهاtails يتم إجراء التحليل. تقوم أداة "تحليل HP" بإنشاء رسوم بيانية متنوعة تساعد في تحديد الأسباب الجذرية وراء تأخر أداء النظام، فضلاً عن فشل النظام.

بعض الرسوم البيانية التي تم الحصول عليها تشمل:

  • الوقت للأول buffer
  • وقت الاستجابة للمعاملة
  • متوسط ​​وقت الاستجابة للمعاملة
  • عدد الزيارات في الثانية
  • Windows الموارد
  • إحصائيات الأخطاء
  • ملخص المعاملات

الأسئلة الشائعة

يتم إجراء اختبار الأداء دائمًا للأنظمة القائمة على خادم العميل فقط. وهذا يعني أن أي تطبيق لا يعتمد على خادم العميل archiيجب ألا تتطلب التقنية اختبار الأداء.

على سبيل المثال، Microsoft الحاسبة لا تعتمد على خادم العميل ولا تقوم بتشغيل عدة مستخدمين؛ ومن ثم فهو ليس مرشحًا لاختبار الأداء.

اختبار أداء

من المهم فهم الفرق بين اختبار الأداء وهندسة الأداء. تتم مشاركة التفاهم أدناه:

اختبار أداء هو الانضباط المعني الاختبار وإعداد التقارير الأداء الحالي لتطبيق برمجي في ظل معايير مختلفة.

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

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