Performans Test Planı Şablonu

Performans tələbləri baxımından layihə ehtiyaclarınıza uyğun olaraq dəyişdirilə bilən bir performans test planı şablonu.



1. Məqsəd

Bu bölmənin məqsədi üçün yerinə yetirilməli olan performans testi yanaşmasının yüksək səviyyədə icmalını təmin etməkdir. layihə. Bu, bütün maraqlı tərəflərə təqdim edilməli və konsensus əldə etmək üçün müzakirə edilməlidir.



2. Giriş

Çatdırılmasının bir hissəsi olaraq, həllin həm funksional, həm də qeyri-funksional sahələr baxımından qəbul meyarlarına cavab verməsi tələb olunur. Bu sənədin məqsədi -nin qeyri-funksional sınaqları üçün xülasə verməkdir həll.


Bu sənəd aşağıdakıları əhatə edir:

  • Giriş və Çıxış Kriteriyaları
  • Ekoloji tələblər
  • Həcm və performans testi yanaşması
  • Performans Test Fəaliyyəti


3. Giriş meyarları

Həqiqi performans test fəaliyyətinə başlamaq üçün aşağıdakı iş maddələri əvvəlcədən tamamlanmalı / razılaşdırılmalıdır:


  • Mümkün olduğu təqdirdə NFR-lərlə birlikdə tərəfindən təmin edilmiş qeyri-funksional test tələbləri sənədi
  • Kritik istifadə halları funksional olaraq sınaqdan keçirilməli və heç bir kritik səhv olmamalıdır
  • Dizayn Memarlıq Şemaları təsdiqləndi və mövcuddur
  • Əsas istifadə halları müəyyənləşdirilib və genişləndirilib
  • Performans test növləri razılaşdırıldı
  • Enjektorların quraşdırılması
  • Hər hansı bir məlumat qurulmasına ehtiyac var - məs. -Də yaradılan müvafiq istifadəçi sayı


4. Meyarlardan çıxın

Performans test fəaliyyəti aşağıdakı hallarda başa çatacaq:

  • NFR hədəfləri yerinə yetirildi və performans test nəticələri komandaya təqdim edildi və təsdiq edildi.


5. Ətraf mühitin tələbləri

Performans testləri sabit versiyasına qarşı aparılacaqdır həll testi (artıq funksional testlərdən keçib) və performans testi zamanı həmin mühitə yerləşdirmədən performans testi üçün təyin olunmuş xüsusi istehsala bənzər bir mühitdə (əvvəlcədən istehsal?) həyata keçirilmişdir.

5.1 Yük enjektorları

Performans testi üçün tələb olunan yükü başlamaq üçün qurulmuş bir və ya daha çox 'yük enjektoru' olacaqdır. Yük enjektörü, istəkləri başlatan bir JMeter nümunəsi olan bir VM və ya birdən çox VM ola bilər.

5.2 Test alətləri

Həcm və Performans testi üçün istifadə olunan test vasitələri aşağıdakılardır:


5.2.1 JMeter

Açıq mənbəli yük testi vasitəsi. Əsasən səs və performans testi üçün istifadə olunur.

5.2.2 Splunk

Splunk qeyd etmək üçün istifadə olunacaq (Başqa bir vasitə istifadə edə bilər - mükəmməl test qrupu ilə təsdiqləməlisiniz).



6. Həcm və performans testi yanaşması

həll aşağıdakı yük meyarlarını idarə etmək üçün kifayət qədər performanslı olmalıdır.

N.B. Aşağıdakı cədvəldəki rəqəmlər yalnız nümunə üçündür - real dəyərlər ilə tamamlandıqdan sonra daxil edilməlidir NFR sənədi.


6.1 Hədəf Xidməti Həcmlər

Saatlıq hədəflər [Y2019] üçün hazırkı həlldən tapılır. Plan şablonundan digər ‘nümunə’ dəyərləri silindi.

Saatlik pik dəyərləri yüksək olmadığından sabit yük testi üçün hədəf olaraq alınacaqdır. Ölçekleme faktoru hazırda TBD'dir.

6.2 İstifadəçi sayı

Performans testi maksimum 1000 [?] İstifadəçi ilə işləyəcək. İstifadəçilər -də yaradılacaqdır əvvəlcədən və Giriş API. Hər bir sorğu fərqli userID ilə daxil olacaq.

6.3 İddialar

JMeter aləti performans testi skriptlərini icra etmək üçün istifadə ediləcəkdir. Ssenarilər daxilində yuxarıdakı ölçümlərin yoxlanılmasına dair iddialar və hər bir sorğu üçün düzgün cavabların alınması üçün bəzi əsas funksional yoxlamalar veriləcəkdir.


6.4 Yükləmə profilləri

Yük profilləri tipik bir orta günlük trafiği -ə kimi təqlid etmək üçün dizayn edilməlidir Sayt. Trafikin yalnız saytın Müştəri Kimliği və Giriş İdarəetmə hissəsi ilə bölündüyünü və məhdudlaşdığını unutmayın.

  • Daxil ol
  • Qeydiyyatdan keçin
  • Parolu sıfırlamak
  • Şifrəni unutmusunuz
  • Müştəri təyin edin
  • Müştəri əldə edin

Aşağıda bir gün üçün bir profil nümunəsi verilmişdir:

6.4.1 Bazelinq

İlk fəaliyyət kursu bir başlanğıc yolu tapmaqdır. Yalnız 1 istifadəçidən istifadə edərək hər bir son nöqtə üçün ortalama cavab müddətini əldə etmək üçün bir müddət (məsələn, 5 dəqiqə) bir simulyasiya edəcəyik. Bu, yalnız 1 istifadəçi ilə saniyədə ən yüksək istəklərə nail olmağımızı təmin edir.


6.4.2 Yük Testi

Əsas göstəricilər toplandıqdan sonra, yüklənmə profilini simulyasiya edən eyni simulyasiya, hədəf həcmlərinə qarşı test etmək üçün artan istifadəçi sayı ilə aparılır. Bu yük testinin ideyası sistemin tipik bir günün yükünə qarşı yoxlanılması, yüksəlişləri, günün zirvələrini və enmələrini endirməkdir.

6.4.3 Stres Testi

Stres testinin məqsədi sistemin qırılma nöqtəsini tapmaqdır, yəni sistem hansı nöqtədə cavabsız qalır. Avtomatik miqyaslandırma varsa, stres testi də sistem tərəziləri və yeni qaynaqlar əlavə olunduğu yaxşı bir göstərici olacaqdır. Stres testləri üçün, yük testi üçün istifadə olunan eyni simulyasiya istifadə olunur, lakin gözlənilən yükdən daha yüksəkdir.

6.4.4 Sünbül Testi

Sünbül testi sistemə nisbətən qısa müddətdə əhəmiyyətli bir yük gətirir. Bu testin məqsədi, məsələn, çox sayda istifadəçinin hesablarına nisbətən qısa müddətdə eyni vaxtda daxil olduqları bir satış hadisəsini simulyasiya etməkdir.

6.4.5 Nəmləndirici Test

Nəmləndirici test uzun müddət yük testini aparacaq. Məqsəd, islatma testi zamanı hər hansı bir yaddaş sızıntısını və cavabsızlığı və ya səhvləri aşkar etməkdir. Tipik olaraq yükün 80% -ini (yük testi üçün istifadə olunur) 24 saat, və ya yükün 60% -ini 48 saat istifadə edəcəyik.

6.4.6 Doyma Nöqtəsi Testi

Doyma nöqtəsi testində sistemin hansı nöqtədə cavab verməyəcəyini, yəni sistem baxımından yük baxımından qırılma nöqtəsini tapdığımızı müəyyən etmək üçün yükü davamlı olaraq artırmağa davam edirik.



7. Performans test fəaliyyətləri

Performans Testini başa çatdırmaq üçün aşağıdakı fəaliyyətlərin həyata keçirilməsi tövsiyə olunur:

7.1 Performans Testi Ətraf Mühiti

  • Yük enjektorlarının kifayət qədər tutumu olmalıdır və uzaqdan idarə olunmalıdır. Ayrıca, enjektorların yeri də razılaşdırılmalıdır
  • Həqiqi vaxtda izləmə və xəbərdarlıq mexanizmi olmalıdır və tətbiqi, serverləri və yük enjektörlərini əhatə etməlidir.
  • Tətbiq qeydləri əlçatan olmalıdır.

7.2 İstifadəyə aid sənədlərin hazırlanması

  • İstifadə ediləcək performans test aracı JMeterdir
  • İstifadəyə dair sənədlərin yazılması üçün hər hansı bir məlumat tələbi müzakirə edilmişdir

7.3 Test Ssenarisi Yarat

  • İcra ediləcək test növü (Yük / Stress və s.)
  • Hər bir test növü üçün yük profili / yük modeli razılaşdırılmalıdır (enmə / aşağı, addımlar və s.)
  • Düşüncə vaxtını ssenarilərə daxil edin

7.4 Test İcrası və Təhlili

Aşağıdakı testlər aşağıdakı qaydada aparılmalıdır:

  • Bazelining Testi
  • Yük testi
  • Stress testi
  • Sünbül Testi
  • Nəmləndirici Test
  • Doyma Nöqtəsi Testi

İdeal olaraq, hər bir test növündən 2 Test işi həyata keçiriləcəkdir. Hər bir sınaqdan sonra tətbiqetmə performansını artırmaq üçün yaxşı tənzimlənə bilər və sonra başqa bir test dövrü başlayacaq.

7.5 Testdən Sonra Analiz və Hesabat

  • Bütün müvafiq məlumat hesabatlarını və arxivləri çəkin və yedəkləyin.
  • Test nəticələrini performans hədəfləri ilə müqayisə edərək müvəffəq və ya uğursuzluğu təyin edin. Hədəflər yerinə yetirilmədikdə, müvafiq dəyişikliklər edilməli və sonra başqa bir test icra dövrü başlayacaqdır. Razılaşdırılmış hədəflərə çatmaq üçün neçə icra dövrünün lazım olacağı məlum deyil.
  • Test nəticələrini sənədləşdirin və komandaya təqdim edin.