Apa itu pengujian kinerja?

Kelompok anak muda yang beragam tersenyum satu sama lain di ruang konferensi

Penyusun

Phill Powell

Staff Writer

IBM Think

Ian Smalley

Staff Editor

IBM Think

Apa itu pengujian kinerja?

Pengujian kinerja menilai kinerja sistem atau kinerja aplikasi dengan banyak berbagai ukuran.

Kriteria utama termasuk kecepatan (seberapa cepat operasinya), stabilitas (jika berkinerja tanpa crash), skalabilitas (seberapa lancar peningkatan beban ditangani) dan daya tanggap (seberapa cepat solusi ini merespons prompt pengguna).

Konsep kinerja perangkat lunak mendasari semua penggunaan komputer, dan kinerja yang buruk dapat merusak upaya terbaik organisasi untuk memberikan pengalaman pengguna yang berkualitas. Jika pengembang tidak cukup mengawasi pengujian kinerja atau menjalankan pengujian kinerja dengan cukup sering, hal ini dapat menyebabkan kemacetan kinerja. Situasi ini dapat menekan kemampuan sistem untuk menangani bahkan beban lalu lintas tipikal selama periode yang diharapkan. Hal ini menjadi lebih bermasalah ketika waktu penggunaan puncak yang tidak terduga menciptakan permintaan tambahan.

Tantangan ini dapat membahayakan seluruh operasi perusahaan yang menghadap publik. Reputasi untuk kualitas yang bertahan lama biasanya membutuhkan waktu lama untuk berkembang. Namun, reputasi dapat dengan cepat dan permanen rusak ketika publik mulai mempertanyakan apakah sistem atau aplikasi dapat beroperasi dengan fungsionalitas yang dapat diandalkan. Kesabaran pengguna akhir semakin menjadi sesuatu yang langka. Jadi, ada banyak hal yang dipertaruhkan ketika masalah kinerja menjadi topik pembicaraan karena reputasi perusahaan sering kali dipertaruhkan.

Berita teknologi terbaru, didukung oleh insight dari pakar

Ikuti perkembangan tren industri yang paling penting—dan menarik—di bidang AI, otomatisasi, data, dan lainnya dengan buletin Think. Lihat Pernyataan Privasi IBM.

Terima kasih! Anda telah berlangganan.

Langganan Anda akan disediakan dalam bahasa Inggris. Anda akan menemukan tautan berhenti berlangganan di setiap buletin. Anda dapat mengelola langganan atau berhenti berlangganan di sini. Lihat Pernyataan Privasi IBM kami untuk informasi lebih lanjut.

Enam langkah pengujian kinerja

Pertama-tama mari kita tentukan metodologi yang digunakan dalam sebagian besar skenario uji kinerja. Enam langkah beberapa bagian menentukan proses pengujian kinerja yang khas.

1. Tentukan kriteria kinerja dan persyaratan

Langkah pertama dalam proses pengujian kinerja melibatkan penetapan parameter yang berguna, seperti menguraikan tujuan kinerja aplikasi.

Kemudian, tetapkan apa yang merupakan kriteria kinerja yang dapat diterima (seperti waktu respons, keluaran, pemanfaatan sumber daya, dan tingkat kesalahan).

Tahap ini juga ketika personel mengidentifikasi indikator kinerja utama (KPI) untuk dapat mendukung persyaratan kinerja dan prioritas bisnis.

2. Rancang dan rencanakan pengujian

Tidak semua tes harus digunakan dalam setiap situasi. Pengembang atau penguji lain harus menentukan apa yang dimaksudkan untuk dianalisis pengujian.

Langkah ini dimulai dengan menentukan skenario penggunaan utama dan merancang kasus uji yang mencerminkan interaksi pengguna di dunia nyata. Langkah selanjutnya adalah menentukan data pengujian dan beban kerja yang akan digunakan selama proses pengujian.

Setelah mengunci variabel-variabel ini, penguji memilih alat pengujian kinerja, skrip uji, dan teknik pengujian untuk digunakan. Langkah ini mencakup pengaturan gating, proses di mana gerbang kualitas berbasis kode mengizinkan atau menolak akses ke langkah produksi selanjutnya.

Pengujian kinerja juga memeriksa bandwidth untuk memastikan bahwa kecepatan transmisi data dapat menangani lalu lintas beban kerja secara memadai.

3. Menetapkan lingkungan pengujian

Satu langkah terakhir harus diambil sebelum proses pengujian kinerja dapat secara resmi dimulai. Penguji membangun lingkungan pengujian yang secara akurat meniru lingkungan produksi nyata sistem, kemudian mengkonfirmasi bahwa aplikasi perangkat lunak yang diuji (AUTs) telah diterapkan dalam lingkungan pengujian.

Persiapan akhir melibatkan pengintegrasian alat pemantauan untuk menangkap metrik kinerja yang dihasilkan oleh sistem selama pengujian.

4. Melakukan pengujian

Dengan parameter pengujian yang kini ditetapkan dengan jelas, saatnya untuk menjalankan pengujian kinerja. Penguji atau otomatisasi pengujian menjalankan skenario pengujian yang telah dipilih, dan pengujian tersebut digunakan bersama dengan alat pengujian kinerja.

Penguji biasanya memantau kinerja sistem secara real-time sehingga mereka dapat memeriksa throughput, waktu respons, dan penggunaan sumber daya. Sepanjang skenario pengujian, penguji memantau sistem untuk kemacetan kinerja atau keanehan terkait kinerja lainnya yang tercermin dalam metrik pengujian.

5. Hasil studi

Selanjutnya, penguji mengevaluasi data kinerja yang telah dikumpulkan selama proses pengujian. Mereka meneliti data yang dikumpulkan dan mencari area kinerja yang perlu ditingkatkan.

Kemudian, penguji membandingkan hasil tes ini dengan tolok ukur kinerja yang ditetapkan sebagai bagian dari langkah pertama dari proses pengujian. Melalui perbandingan ini, penguji dapat melihat di mana Hasil pengujian menyimpang dari kinerja yang diharapkan dan kemacetan bisa saja terjadi.

6. Optimalkan, uji, ulangi

Setelah mengidentifikasi masalah kinerja melalui analisis data pengujian, pengembang bekerja dengan kode untuk memperbaruinya dengan sistem. Mereka menggunakan pengoptimalan kode, peningkatan sumber daya, atau perubahan konfigurasi untuk mengurangi masalah kinerja yang dikutip.

Setelah menerapkan perubahan, pengembang mengulangi urutan pengujian perangkat lunak untuk mengonfirmasi bahwa mereka telah menerapkan perubahan dengan sukses. Pengembang mengulangi prosedur sampai hasil kinerja selaras dengan tolok ukur yang ditentukan.

IBM DevOps

Apa itu DevOps?

Andrea Crawford menjelaskan apa itu DevOps, nilai DevOps, dan cara praktik serta alat DevOps membantu Anda memproses aplikasi Anda melalui seluruh delivery pipeline, dari ide hingga produksi. Dipimpin oleh para pemimpin terkemuka IBM, kurikulumnya dirancang untuk membantu para pemimpin bisnis dalam mendapatkan pengetahuan yang diperlukan untuk memprioritaskan investasi AI yang dapat mendorong pertumbuhan.

Siapa yang mendapat manfaat dari pengujian kinerja?

Pengujian kinerja berjalan jauh “tersembunyi” untuk memeriksa output sistem atau aplikasi, jadi masuk akal bahwa tim pengembangan perangkat lunak adalah pengguna metode pengujian kinerja yang paling umum. Termasuk dalam kelompok pengguna pertama ini adalah para profesional yang secara aktif terlibat dalam proses pengembangan: pengembang, insinyur jaminan kualitas (QA), dan tim DevOps. Masing-masing mendapatkan sesuatu yang unik dari pengujian kinerja:

  • Pengembang menggunakan pengujian kinerja untuk menemukan masalah kinerja di awal siklus pengembangan perangkat lunak (SDLC) sehingga mereka dapat memprioritaskan perubahan pengembangan dan menerapkannya secara lebih efisien.
  • Tim QA mengandalkan pengujian kinerja untuk menginformasikan upaya mereka dan membantu mereka menentukan apakah kecepatan operasi aplikasi, stabilitas fungsional, dan fitur skalabilitas bekerja cukup pada berbagai beban kerja.

Kelompok pengguna berikutnya bukanlah pengembang tetapi mereka masih bekerja di tingkat dasar dengan manajemen kinerja sistem sebagai komponen utama dari pekerjaan mereka:

  • Manajer proyek menggunakan pengujian kinerja untuk menilai risiko dan mengukur dampak sistem yang dapat dihasilkan dari perubahan sistem.
  • Kepala petugas teknologi (CTO) atau staf dalam kapasitas yang sama memerlukan pengujian kinerja untuk membantu mereka menentukan bagaimana permintaan yang berubah dapat diterjemahkan ke dalam pertumbuhan jangka panjang.
  • Pemilik perusahaan sangat peduli dengan perlindungan aliran pendapatan. Pengujian kinerja menegaskan bahwa waktu muat cukup cepat dan layanan pelanggan yang tidak responsif tidak mengganggu proses pendapatan.

Tapi bukan hanya manajemen perusahaan yang melakukan pengujian kinerja. Banyak organisasi dan bisnis yang juga sering menggunakan pengujian kinerja untuk berbagai tujuan di perusahaan dengan berbagai ukuran:

  • Bisnis besar yang secara teratur mengalami periode volume lalu lintas tinggi bergantung pada pengujian kinerja untuk memastikan bahwa aplikasi mereka dapat menangani beban kerja yang berat. Pendekatan ini sangat penting bagi perusahaan yang sangat bergantung pada platform online dengan basis pengguna yang besar.
  • Perusahaan kecil (dan startup) membutuhkan pengujian kinerja sebagai bagian dari upaya perencanaan pertumbuhan. Organisasi-organisasi ini menggunakan pengujian kinerja untuk mengingatkan mereka tentang hambatan di masa depan yang dapat berdampak negatif pada kemampuan mereka untuk tumbuh dengan sukses.
  • Bisnis (dari berbagai ukuran) yang bersiap untuk meluncurkan aplikasi baru cerdas untuk terlibat dalam pengujian kinerja sebagai sarana untuk memprediksi masalah dengan skenario operasi dunia nyata. Hal yang sama berlaku untuk perusahaan yang membuat perubahan sistem TI yang penting.
  • Lembaga keuangan memikul tanggung jawab yang sangat besar dan menghadapi peraturan industri yang cukup banyak. Bisnis semacam itu secara rutin menggunakan pengujian kinerja untuk membantu mereka mempertahankan standar dasar, terutama yang berkaitan dengan periode volume transaksi yang tinggi.

Jenis pengujian kinerja

Pengembang melakukan berbagai jenis pengujian kinerja untuk memperoleh jenis data hasil tertentu dan mendukung strategi pengujian tertentu. Berikut ini adalah jenis-jenis ujian yang paling menonjol.

Pengujian beban

Pengujian beban menunjukkan bagaimana kinerja sistem saat beroperasi dengan beban yang diharapkan. Tujuan pengujian beban adalah untuk menunjukkan perilaku sistem ketika menghadapi beban kerja berukuran rutin dalam kondisi kerja normal dengan jumlah rata-rata pengguna yang bersamaan.

Contoh: Untuk situs web e-commerce, penguji melakukan simulasi sebagai pengguna situs dan melakukan langkah-langkah berbelanja barang, menempatkan produk di keranjang, dan membayar pembelian tersebut.

Pengujian skalabilitas

Pengujian beban menunjukkan apakah sistem dapat mendukung kondisi beban reguler. Skalabilitas menempatkan sistem itu di bawah tekanan dengan meningkatkan volume data atau beban pengguna yang ditangani. Ini menunjukkan apakah suatu sistem dapat memenuhi kecepatan yang meningkat dan masih memberikan.

Contoh: Dalam penskalaan vertikal, pengembang dapat meningkatkan CPU dan memori server basis data agar dapat mengakomodasi volume kueri data yang lebih besar.

Pengujian stres

Pengujian stres analog dengan tes menyelam yang dilakukan oleh awak kapal selam. Di sini, sistem didorong hingga batas operasional yang dipahami-dan bahkan lebih jauh lagi-untuk menentukan dengan tepat berapa banyak yang dapat diterima oleh sistem sebelum mencapai titik puncaknya.

Contoh: Pengujian failover adalah bentuk ekstrem dari pengujian stres yang dimulai dengan mensimulasikan kegagalan komponen. Tujuannya adalah untuk melihat berapa lama waktu yang dibutuhkan sistem untuk pulih dan melanjutkan operasi.

Pengujian lonjakan

Di sini kami menguji jenis stres yang berbeda-ketika lalu lintas pengguna atau transfer volume data tiba-tiba mengalami lonjakan aktivitas yang tajam dan drastis. Sistem harus menyerap berbagai perubahan sambil melanjutkan operasi biasa.

Contoh: Perusahaan yang menjalankan situs web perlu mempersiapkan diri tidak hanya untuk pemadaman, tetapi juga untuk lonjakan pengguna yang mencoba mengakses situs secara bersamaan setelah situs kembali online. Mereka juga harus menilai apakah sistem dapat menangani peningkatan permintaan yang tiba-tiba itu. Pengujian lonjakan dapat menghitung seberapa lancar kemungkinan akan berjalan.

Pengujian volume

Terkadang dengan kinerja, kami mendiskusikan lalu lintas pengguna. Pengujian volume, sebaliknya, berkaitan dengan bagaimana sistem mengelola sejumlah besar data. Dapatkah sistem memproses data sepenuhnya dan menyediakan penyimpanan data tanpa degradasi data?

Contoh: Sebuah klinik medis menyimpan informasi pasien dalam jumlah besar dan secara hukum diwajibkan untuk dapat mengakses catatan pasien dan data medis terkait. Masuknya data yang konstan dapat membebani sistem. Pengujian volume memungkinkan pengguna mengetahui apakah sistem mereka siap menghadapi tantangan untuk terus menerima lebih banyak data.

Pengujian daya tahan

Anggap saja ini sebagai pengujian kinerja dalam jangka panjang. Penyebab sebenarnya yang dicari oleh pengujian ketahanan (juga disebut pengujian rendam) adalah degradasi data dan masalah kebocoran memori yang sering terjadi dalam jangka waktu yang lama.

Contoh: Platform media sosial beroperasi sepanjang waktu, dan penggunaan yang terus menerus dapat menimbulkan masalah pada stabilitas platform, penyimpanan data, dan akun pengguna. Pengujian ketahanan memberi Anda gambaran tentang operasi saat ini dan indikator kinerja masa depan.

Alat pengujian kinerja yang banyak digunakan

Pengembang dan penguji dapat memilih dari berbagai alat yang dirancang untuk pengujian kinerja. Berikut adalah beberapa yang paling populer

  • JMeter: Aplikasi JMeter Apache adalah perangkat lunak sumber terbuka favorit yang dirancang untuk pengujian kinerja beban kerja. Alat ini dapat menggunakan grup thread untuk menghasilkan pengguna virtual untuk mencerminkan skenario lalu lintas yang melibatkan pengguna nyata, termasuk kondisi yang mengandung kelebihan pengguna. Situasi ekstrem ini ditetapkan sebagai mempelajari sistem yang diuji (SUT). JMeter menyediakan metrik pengujian yang berharga seperti waktu respons, yang mengukur seberapa cepat sistem yang sedang diuji (SUT) merespons permintaan pengguna. Ini juga melacak tingkat kesalahan—persentase permintaan yang gagal—dan throughput, yang mengindikasikan berapa banyak permintaan yang dapat ditangani oleh SUT dalam jangka waktu tertentu.
  • LoadRunner: Seperti halnya JMeter, LoadRunner menciptakan pengguna virtual dalam jumlah besar. LoadRunner kemudian menghasilkan aktivitas pengguna buatan untuk jutaan pengguna virtual ini, seperti pesan antar komponen atau interaksi pengguna dengan antarmuka pengguna. Interaksi tersebut disimpan dalam skrip pengujian yang dihasilkan LoadRunner. Dilaporkan bahwa pada tahun 2025, lebih dari 2.600 perusahaan menggunakan Micro Focus LoadRunner sebagai alat bantu untuk pengujian kinerja dan aktivitas QA.
  • RoadRunner: “PHP” dulunya adalah singkatan dari “personal home page,” tetapi istilah ini berubah menjadi “hypertext preprocessor.” Sekarang ini mengacu pada bahasa skrip sisi server (artinya pengembang mengeksekusi kode di server dan bukan di browser web klien). RoadRunner sumber terbuka (jangan disamakan dengan LoadRunner yang mirip) berfungsi sebagai server aplikasi PHP dan manajer proses. Solusi ini merampingkan kinerja aplikasi dengan meniadakan kebutuhan untuk waktu muat boot dan membatasi latensi. RoadRunner memungkinkan kerangka kerja analisis dinamis untuk program Java yang beroperasi secara bersamaan. RoadRunner menawarkan antarmuka pemrograman aplikasi (API) yang mengevaluasi event streams.

Dampak AI terhadap pengujian kinerja

Seperti hampir semua hal yang berkaitan dengan komputer, kecerdasan buatan (AI) sekarang mendorong pengujian perangkat lunak ke tingkat efisiensi yang sama sekali baru. AI membuat proses pengujian kinerja secara keseluruhan lebih cepat, lebih akurat, dan lebih mudah diotomatisasi.

Secara khusus, AI dapat menggunakan siklus pengujian yang lebih pendek, sehingga membutuhkan lebih sedikit waktu untuk menjalankan pengujian. Dan melalui akurasi AI yang tajam, AI mampu melihat perubahan kinerja yang lebih halus yang bisa luput dari penguji manusia. Selain itu, melalui analisis prediktif, AI dapat mengevaluasi tren operasi dan data historis dan memprediksi di mana dan kapan kemacetan mungkin terjadi selanjutnya. AI juga dapat memanfaatkan perilaku sistem prediktif itu dan bahkan menyesuaikan parameter pengujian berdasarkan itu.

Namun, sejauh ini, hal paling signifikan yang telah dilakukan AI untuk pengujian kinerja (sejauh ini) adalah membantu upayanya dalam skala besar dengan mengaktifkan otomatisasi. Otomatisasi ini sungguh luar biasa karena mampu menjalankan seluruh proses pengujian kinerja.

AI tidak hanya dapat mengotomatiskan bagaimana pengujian dilakukan, tetapi juga dapat menulis skrip pengujian yang dimaksudkan untuk dieksekusi. Selain itu, dapat menafsirkan hasil pengujian di backend dan menawarkan panduan untuk memulihkan situasi masalah.

Salah satu dampak AI yang paling menarik dan menjanjikan pada pengujian kinerja adalah meningkatnya penggunaan kolaborasi manusia-AI. Pengaturan ini menyadari bahwa naluri dan pengetahuan manusia masih memiliki peran penting untuk dimainkan. Bahkan, dalam beberapa situasi, mengikuti impuls manusia masih merupakan arahan utama.

Beberapa pakar yakin bahwa pengujian kinerja masa depan bergantung pada pendekatan ini. Pendekatan ini menggabungkan mentalitas komputer dan pemrosesan otot dengan rasa konteks dan nuansa manusia.

Solusi terkait
IBM DevOps Mempercepat

Otomatiskan pengiriman perangkat lunak untuk aplikasi apa pun di lingkungan on premises, cloud, atau mainframe.

Jelajahi DevOps Accelerate
Solusi DevOps

Gunakan perangkat lunak dan alat bantu DevOps untuk membangun, menerapkan, dan mengelola aplikasi cloud native di berbagai perangkat dan lingkungan.

Jelajahi solusi DevOps
Layanan Konsultasi Cloud 

Dapatkan kemampuan baru dan dorong ketangkasan bisnis dengan layanan konsultasi cloud IBM. Temukan cara berkolaborasi dalam menciptakan solusi, mempercepat transformasi digital, dan mengoptimalkan kinerja melalui strategi hybrid cloud dan kemitraan pakar.

Layanan cloud
Ambil langkah selanjutnya

Maksimalkan potensi DevOps untuk membangun, menguji, dan menerapkan aplikasi cloud-native secara aman dengan integrasi berkelanjutan dan pengiriman tanpa henti.

Jelajahi solusi DevOps Temukan DevOps dalam aksi