Templat Rencana Tes Kinerja

Cithakan rencana tes kinerja sing bisa digunakake utawa diowahi supaya cocog karo kebutuhan proyek sampeyan babagan syarat kinerja.



1. Tujuan

Tujuane bagean iki yaiku nyedhiyakake ringkesan level tinggi babagan pendekatan tes kinerja sing kudu ditindakake kanggo proyek Iki kudu diwenehake marang kabeh pihak sing gegandhengan lan kudu dibahas kanggo entuk konsensus.



2. Pambuka

Minangka bagean pangiriman , solusi kasebut kudu memenuhi kriteria panrima, saka segi fungsi lan non-fungsional. Tujuan dokumen iki yaiku nyedhiyakake outline kanggo tes non-fungsi fungsi solusi


Dokumen iki kalebu ing ngisor iki:

  • Kriteria Entri lan Exit
  • Syarat Lingkungan
  • Pendekatan Tes Volume lan Kinerja
  • Kegiatan Tes Kinerja


3. Kriteria Entri

Barang-barang kerja ing ngisor iki kudu dirampungake / disepakati sadurunge supaya bisa nerusake kegiatan uji coba kinerja nyata:


  • Dokumen syarat tes sing ora fungsional diwenehake dening , kanthi NFR jumlah nalika bisa
  • Kasus panggunaan kritis kudu dites kanthi fungsional lan tanpa kesalahan kritis sing luar biasa
  • Diagram Arsitektur Desain disetujoni lan kasedhiya
  • Kasus panggunaan utama wis ditetepake lan dijaluk
  • Jinis tes kinerja sarujuk
  • Persiyapan injeksi mbukak
  • Apa wae persiyapan data sing dibutuhake - f.eks. Nomer pangguna sing cocog digawe ing


4. Kriteria Keluar

Kegiatan pengujian kinerja bakal rampung nalika:

  • Target NFR wis ditemokake lan asil tes kinerja wis diwenehake menyang tim lan disetujoni.


5. Syarat Lingkungan

Tes kinerja bakal diluncurake karo versi stabil solusi (sing wis lulus tes fungsional) lan dileksanakake ing lingkungan kaya produksi (pre-prod?) sing ditugasake kanggo tes kinerja tanpa deployment ing lingkungan kasebut sajrone tes kinerja.

5.1 Injektor Beban

Bakal ana siji utawa luwih 'penyuntik beban' sing disedhiyakake kanggo miwiti beban sing dibutuhake kanggo nyoba kinerja. Injektor mbukak bisa uga VM utawa pirang-pirang VM sing kedadeyan kayata JMeter, miwiti panjaluk.

5.2 Piranti Tes

Alat uji sing digunakake kanggo tes Volume lan Kinerja yaiku:


5.2.1 JMeter

Alat uji mbukak sumber terbuka. Biasane digunakake kanggo tes volume lan kinerja.

5.2.2 Splunk

Splunk bakal digunakake kanggo ngangkut barang (Bisa nggunakake alat liya - kudu dikonfirmasi karo tim pengujian parfum).



6. Pendekatan Tes Volume lan Kinerja

Sing solusi kudu cukup performant kanggo ngatur kritéria momotan ing ngisor iki.

N.B. Nomer ing tabel ing ngisor iki mung kanggo conto - nilai nyata kudu dilebokake sawise dirampungake dening Dokumen NFR.


6.1 Volume Layanan Target

Target saben jam ditemokake saka solusi saiki kanggo [Y2019]. Mbusak nilai 'conto' liyane saka template rencana.

Amarga nilai puncak saben jam ora dhuwur, mula bakal dijupuk target kanggo tes beban tetep. Faktor skala yaiku TBD saiki.

6,2 Jumlah Pangguna

Tes kinerja bakal mbukak kanthi maksimal 1000 pangguna [?]. Pangguna bakal digawe ing sadurunge lan bisa diakses liwat Login API. Saben panjaluk bakal mlebu nganggo userID sing beda.

6.3 Pratelan

Alat JMeter bakal digunakake kanggo nglakokake skrip pengujian kinerja. Ing skrip kasebut, bakal ana negesake pratelan sing mriksa metrik ing ndhuwur uga sawetara cek fungsional dhasar kanggo mesthekake yen jawaban sing bener ditampa kanggo saben panjaluk.


6.4 Profil Beban

Profil muatan kudu dirancang kanggo niru lalu lintas rata-rata dina rata-rata menyang situs Elinga yen lalu lintas mung dibagi lan diwatesi ing bagean Identity Customer and Access Access ing situs kasebut, yaiku

  • Login
  • Ndhaptar
  • Reset Sandi
  • Kelalen Sandi
  • Setel Pelanggan
  • Goleki Pelanggan

Ing ngisor iki minangka conto profil sedina:

6.4.1 Baselining

Tindakan sing kapisan yaiku golek garis dasar. Nggunakake mung 1 pangguna, kita bakal mbukak simulasi sajrone wektu (kayata 5 menit) kanggo entuk rata-rata kaping tanggepan kanggo saben titik pungkasan. Iki njamin manawa mung karo 1 pangguna, kita sejatine bisa nggayuh panjaluk puncak per detik.


6.4.2 Uji Beban

Sawise metrik garis dasar dikumpulake, mula simulasi sing padha, sing nggawe simulasi profil beban, diluncurake kanthi akeh pangguna kanggo nyoba nglawan volume target. Gagasan tes mbukak iki yaiku nyoba sistem kanthi beban sing biasane, simulasi ramp-ups, pucuk awan, lan down-downs.

6.4.3 Tes Stres

Tujuan tes stres yaiku kanggo nemokake titik rusak sistem, yaiku nalika apa sistem kasebut dadi ora responsif. Yen skala otomatis kasedhiya, tes stres uga bakal dadi indikator sing apik nalika sisik sistem lan sumber daya anyar ditambahake. Kanggo tes stres, simulasi sing padha digunakake kanggo tes beban digunakake nanging kanthi beban sing luwih dhuwur tinimbang sing diarepake.

6.4.4 Tes Spike

Tes lunjakan ngenalake beban pinunjul ing sistem kasebut sajrone wektu sing kurang suwe. Tujuan tes iki yaiku simulasi acara adol kayata, nalika akeh pangguna kanthi bebarengan ngakses akun kasebut sajrone wektu sing cukup sithik.

6.4.5 Uji Rendhem

Uji rendhem bakal mbukak tes beban sajrone wektu sing suwe. Tujuane yaiku kanggo mbukak bocor memori lan ora responsif utawa kesalahan sajrone tes rendhem. Biasane kita nggunakake 80% momotan (digunakake kanggo pengujian beban) sajrone 24 jam, lan / utawa 60% momotan sajrone 48 jam.

6.4.6 Tes Titik Jenuh

Ing pengujian titik jenuh, kita terus nambah beban kanthi tetep kanggo nemtokake ing endi sistem ora responsif, yaiku nemokake titik rusak sistem ing babagan beban.



7. Kegiatan uji coba kinerja

Kegiatan ing ngisor iki disaranake supaya bisa ditindakake supaya bisa ngrampungake Kinerja Kinerja:

7.1 Nggawe Kinerja Tes Lingkungan

  • Injeksi muatan kudu cukup kapasitas lan kudu diatur saka jarak adoh. Uga, dununge suntik kudu disarujuki
  • Mekanisme ngawasi lan menehi tandha wektu nyata kudu ana lan kudu nutupi aplikasi, server uga suntik beban.
  • Log aplikasi kudu bisa diakses.

7.2 Scripting Kasus Guna

  • Alat uji coba kinerja sing bakal digunakake yaiku JMeter
  • Sembarang syarat data wis dibahas babagan kasus panggunaan sing kudu ditulis skrip

7.3 Skenario Tes Nggawe

  • Jinis tes sing bakal ditindakake (Beban / Stress lsp)
  • Model mbukak / model mbukak kudu disepakati kanggo saben jinis tes (munggah-mudhun / mudhun, langkah lsp)
  • Gabungake wektu mikir menyang skenario

7.4 Eksekusi Tes lan Analisis

Tes ing ngisor iki kudu dileksanakake kanthi urutan ing ngisor iki:

  • Tes Baselining
  • Tes Beban
  • Tes Stres
  • Tes Spike
  • Tes Rendhem
  • Tes Jeneng Jenuh

Saenipun, 2 uji coba saben jinis tes bakal ditindakake. Sawise saben uji coba mbukak aplikasi bisa uga wis disetel supaya bisa nambah kinerja lan banjur siklus tes liyane bakal diwiwiti.

7.5 Analisis lan Pelaporan Pasca Tes

  • Nangkep lan nggawe cadangan kabeh laporan data sing relevan lan arsip.
  • Temtokake sukses utawa kegagalan kanthi mbandhingake asil tes karo target kinerja. Yen target ora bisa ditindakake, mula kudu ana pangowahan sing pas lan mula siklus eksekusi tes liyane bakal diwiwiti. Ora dingerteni pirang-pirang siklus eksekusi sing dibutuhake kanggo nggayuh target sing disepakati.
  • Dokumentasi lan saikiake asil tes menyang tim.