الگوی طرح تست عملکرد

یک الگوی طرح تست عملکرد که می تواند متناسب با نیازهای پروژه شما از نظر نیازهای عملکردی به صورت دلخواه استفاده شود یا اصلاح شود.



1. هدف

هدف از این بخش ارائه یک نمای کلی در سطح بالایی از روش آزمایش عملکرد است که باید برای پروژه این باید به همه ذینفعان مربوطه ارائه شود و برای دستیابی به اتفاق نظر در مورد آن بحث شود.



2. مقدمه

به عنوان بخشی از تحویل ، لازم است راه حل مطابق با معیارهای پذیرش باشد ، هم از نظر مناطق عملکردی و هم از نظر عملکرد. هدف از این سند ارائه طرح کلی آزمایش غیر کارکردی است راه حل.


این سند موارد زیر را پوشش می دهد:

  • معیارهای ورود و خروج
  • الزامات زیست محیطی
  • رویکرد تست حجم و عملکرد
  • فعالیت های تست عملکرد


3. معیارهای ورود

برای ادامه فعالیتهای واقعی آزمایش ، موارد کاری زیر باید از قبل تکمیل و توافق شود:


  • سند الزامات آزمون غیر عملکردی ارائه شده توسط ، با NFR کمی در صورت امکان
  • موارد مهم استفاده باید از لحاظ عملکردی آزمایش شده و بدون اشکال اساسی برجسته باشند
  • نمودارهای معماری طراحی را تأیید و در دسترس است
  • موارد استفاده کلیدی تعریف و محدوده بندی شده است
  • انواع تست عملکرد موافقت کردند
  • راه اندازی انژکتورها را بارگیری کنید
  • تنظیمات داده مورد نیاز است - به عنوان مثال تعداد مناسب کاربران ایجاد شده در


4. معیارهای خروج

فعالیت تست عملکرد زمانی به اتمام می رسد که:

  • اهداف NFR برآورده شده و نتایج آزمون عملکرد به تیم ارائه شده و تأیید شده است.


5. الزامات زیست محیطی

آزمونهای عملکرد در برابر نسخه پایدار اجرا می شوند راه حل (که قبلاً آزمونهای عملکردی را پشت سر گذاشته است) و در یک محیط اختصاصی مانند تولید (قبل از تولید؟) اختصاص داده شده برای آزمایش عملکرد بدون استقرار در آن محیط در طول آزمایش عملکرد.

5.1 انژکتورهای بار

یک یا چند 'انژکتور بار' اختصاصی برای شروع بار مورد نیاز برای آزمایش عملکرد وجود دارد. انژکتور بار می تواند یک ماشین مجازی یا چندین ماشین مجازی باشد که نمونه ای از JMeter را اجرا می کند و درخواست ها را شروع می کند.

5.2 ابزار آزمایش

ابزارهای آزمایشی مورد استفاده برای آزمایش میزان صدا و عملکرد عبارتند از:


5.2.1 JMeter

یک ابزار آزمایش بار منبع باز. عمدتا برای آزمایش حجم و عملکرد استفاده می شود.

5.2.2 Splunk

Splunk برای ورود به سیستم استفاده می شود (می توانید از ابزار دیگری استفاده کنید - لازم است با تیم آزمایش کامل تایید کنید).



6. رویکرد تست حجم و عملکرد

| | + _ | راه حل باید به اندازه کافی عملکرد داشته باشد تا معیارهای بار زیر را مدیریت کند.

N.B. اعداد در جدول زیر فقط برای نمونه است - مقادیر واقعی باید پس از نهایی شدن توسط درج شوند سند NFR


6.1 حجم خدمات هدف

اهداف ساعتی از راه حل فعلی [Y2019] کشف شده است. سایر مقادیر 'مثال' را از الگوی طرح پاک کرد.

از آنجا که مقادیر اوج ساعتی زیاد نیستند ، برای آزمایش بار ثابت به عنوان هدف در نظر گرفته می شوند. فاکتور مقیاس گذاری در حال حاضر TBD است.

6.2 تعداد کاربران

تست عملکرد حداکثر با 1000 کاربر [؟] اجرا می شود. کاربران در ایجاد خواهند شد قبل از آن و از طریق قابل دسترسی باشد ورود به سیستم API. هر درخواست با userID مختلف وارد می شود.

6.3 ادعاها

از ابزار JMeter برای اجرای اسکریپت های تست عملکرد استفاده خواهد شد. در اسکریپت ها ، اظهاراتی برای بررسی معیارهای فوق و همچنین برخی بررسی های عملکردی اساسی برای اطمینان از دریافت پاسخ صحیح برای هر درخواست وجود دارد.


6.4 بارگذاری پروفایل ها

پروفایل های بار باید به گونه ای طراحی شوند که ترافیک معمول روزانه به را تقلید کنند سایت. لطفا توجه داشته باشید که ترافیک فقط به بخش شناسایی مشتری و مدیریت دسترسی سایت ، تقسیم شده و محدود می شود.

  • وارد شدن
  • ثبت نام
  • بازنشانی گذرواژه
  • رمز عبور را فراموش کرده اید
  • مشتری را تنظیم کنید
  • مشتری بگیرید

در زیر یک نمونه نمایه برای یک روز آورده شده است:

6.4.1 خط مقدماتی

اولین اقدام ، یافتن خط مبنا است. فقط با استفاده از 1 کاربر ، یک شبیه سازی را برای مدتی (مثلاً 5 دقیقه) اجرا خواهیم کرد تا به طور متوسط ​​زمان پاسخ برای هر نقطه انتهایی بدست آوریم. این تضمین می کند که فقط با 1 کاربر واقعاً قادر به دستیابی به اوج درخواست ها در ثانیه هستیم.


6.4.2 تست بار

پس از جمع آوری معیارهای پایه ، سپس همان شبیه سازی که نمایه بار را شبیه سازی می کند ، با تعداد بیشتری از کاربران برای آزمایش در برابر حجم های هدف اجرا می شود. ایده این آزمایش بار ، آزمایش سیستم در برابر بار معمول روزانه ، شبیه سازی رمپ ها ، قله های روز و پایین آمدن سطح شیب دار است.

6.4.3 تست استرس

هدف از آزمایش استرس ، یافتن نقطه شکست سیستم است ، یعنی سیستم در چه نقطه ای بی پاسخ می شود. اگر مقیاس گذاری خودکار انجام شود ، تست استرس نیز شاخص خوبی است که در آن مقیاس سیستم و منابع جدید اضافه می شود. برای آزمایش تنش ، از همان شبیه سازی که برای آزمایش بار استفاده شده است ، استفاده می شود اما با بار بالاتر از حد انتظار.

6.4.4 تست سنبله

آزمایش سنبله در مدت زمان نسبتاً کوتاهی بار قابل توجهی بر روی سیستم وارد می کند. هدف از این آزمون شبیه سازی یک رویداد فروش است ، به عنوان مثال ، هنگامی که تعداد زیادی از کاربران به طور همزمان در مدت زمان نسبتاً کوتاهی به حساب خود دسترسی پیدا می کنند.

6.4.5 تست خیساندن

آزمایش خیساندن ، آزمایش بار را برای مدت زمان طولانی انجام می دهد. هدف این است که هر گونه نشت حافظه ، عدم واکنش یا خطا در طول آزمایش خیساندن را آشکار کنید. ما معمولاً از 80٪ بار (برای آزمایش بار استفاده می شود) برای 24 ساعت و / یا 60٪ از بار برای 48 ساعت استفاده می کنیم.

6.4.6 تست نقطه اشباع

در آزمایش نقطه اشباع ما بار را به طور پیوسته افزایش می دهیم تا مشخص کنیم در چه نقطه ای از سیستم واکنش نشان نمی دهد ، یعنی نقطه شکست سیستم را از نظر بار پیدا کنیم.



7. فعالیت های تست عملکرد

برای تکمیل تست عملکرد ، فعالیت های زیر پیشنهاد می شود که به ترتیب انجام شود:

7.1 ساخت آزمایشگاه عملکرد

  • انژکتورهای بار باید ظرفیت کافی داشته و از راه دور مدیریت شوند. همچنین ، باید محل انژکتورها توافق شود
  • مکانیسم نظارت و هشدار در زمان واقعی باید در دسترس باشد و باید برنامه ، سرورها و همچنین انژکتورهای بار را پوشش دهد.
  • گزارش های برنامه باید در دسترس باشد.

7.2 استفاده از پرونده نویسی

  • ابزار تست عملکرد که استفاده خواهد شد JMeter است
  • در مورد موارد مورد نیاز برای استفاده در موارد استفاده شده در اسکریپت بحث شده است

7.3 ساخت سناریو آزمون

  • نوع آزمایشی که باید اجرا شود (بار / فشار و غیره)
  • مشخصات بار / مدل بار باید برای هر نوع آزمایش (سطح شیب دار / پایین ، مراحل و غیره) توافق شود
  • زمان تفکر را در سناریوها بگنجانید

7.4 اجرا و تجزیه و تحلیل آزمون

آزمون های زیر باید به ترتیب زیر اجرا شوند:

  • تست خط مقدماتی
  • Load Test
  • سنجش استرس
  • تست سنبله
  • تست خیساندن
  • تست نقطه اشباع

در حالت ایده آل ، 2 آزمایش آزمایشی از هر نوع آزمون انجام می شود. پس از اجرای هر تست ، برنامه می تواند به منظور افزایش کارایی ، تنظیم شود و سپس یک چرخه آزمایش دیگر آغاز می شود.

7.5 تجزیه و تحلیل و گزارش گیری پس از آزمون

  • ضبط و تهیه نسخه پشتیبان از کلیه گزارشات مربوطه و بایگانی کردن.
  • با مقایسه نتایج آزمون با اهداف عملکرد ، موفقیت یا عدم موفقیت را تعیین کنید. اگر اهداف برآورده نشوند ، باید تغییرات مناسب ایجاد شود و سپس چرخه اجرای آزمایش دیگری آغاز می شود. مشخص نیست که چند چرخه اعدام برای دستیابی به اهداف توافق شده مورد نیاز است.
  • نتایج آزمون را به تیم مستند کرده و ارائه دهید.