Tren Kunci dalam Pengujian Perangkat Lunak dari SmartBear: Jenis dan Tren Uji

Pada 2019, SmartBear mengadakan survei tahunan terhadap komunitas penguji perangkat lunak untuk ketiga kalinya . Alyona Batitskaya, pengembang front-end, guru dan ketua kursus di fakultas Pemrograman Netologi, menerjemahkan penelitian dan mengumpulkan hasil-hasil utama pada metodologi pengembangan, alat pengujian dan teknologi, otomatisasi, dan tren pengembangan industri selama dua tahun ke depan.  

Siapa yang diwawancarai


Perusahaan mewawancarai 2.526 orang dari berbagai negara dan industri, di antaranya QA-engineer dan automation engineer menang - 37%. Juga di antara responden adalah pengembang (15%), manajer QA (14%), arsitek (8%), penguji manual (7%), manajer analitik produk / bisnis (5%), konsultan (4%), DevOps insinyur (4%).


Profesi responden berbeda secara konsisten,

ada banyak jenis pengujian perangkat lunak, dan paling sering beberapa pendekatan diterapkan. Jumlah rata-rata jenis pengujian dalam tim responden adalah 2.2. Ini menunjukkan bahwa departemen pengujian tidak khusus, yaitu, mereka tidak menggunakan banyak pendekatan pengujian, tetapi mereka tidak berhenti pada bentuk yang sama.  


Sebagian besar responden menguji perangkat lunak atau memasuki tim yang sesuai
 
Sehubungan dengan penguji yang bekerja secara independen, ada lebih banyak manajer QA yang mengatur dan mengontrol tugas. Peneliti menjelaskan hal ini dengan perbaikan terus menerus dari kualifikasi responden dan transisi ke langkah selanjutnya dalam jenjang karier.  
  
Sejak 2017, ukuran perusahaan tempat responden bekerja telah berubah. Sebelumnya, semua orang ingin masuk ke perusahaan besar (10.000+ karyawan), tetapi sekarang mereka lebih suka perusahaan kecil (kurang dari 500 karyawan).  

Apa yang diuji




Aplikasi web yang paling banyak diuji (79%) dan API / layanan web (77%). 

Sejak 2017, jumlah pengujian API / layanan web dan aplikasi web seluler meningkat sekitar 10%. Pada saat yang sama, ada kecenderungan menurun dalam pengujian aplikasi desktop, aplikasi web hybrid dan progresif, dan solusi kotak. 

Waktu pengujian


Waktu yang dihabiskan untuk pengujian tidak banyak berubah sejak 2018 - rata-rata, ini adalah 61% dari waktu kerja.

Tugas yang paling memakan waktu 23% responden mempertimbangkan untuk melakukan tes. Pembuatan tes otomatis di tempat kedua (18%), diikuti dengan penulisan skrip untuk pengujian manual (17%). Pelaporan / analisis hasil tes tetap pada tingkat yang sama - tempat keempat dengan 12% responden, tetapi ini secara signifikan lebih tinggi dari 3% yang mengatakan bahwa ini adalah tugas yang paling memakan waktu di 2017. 
 
Karyawan perusahaan besar lebih puas dengan proses pengujian perangkat lunak bawaan. Alasannya mungkin karena organisasi besar, berbeda dengan yang kecil, memiliki sumber daya, sejarah, dan pengetahuan untuk pengujian yang lebih baik. 
 
Korelasi berikut ini terungkap: responden yang menghabiskan kurang dari 20% dari pengujian waktu mereka kurang puas dengan proses pengujian, tidak seperti mereka yang menguji dari 20 hingga 80%. Ini mungkin mencerminkan kesadaran yang lebih besar tentang proses dan kenyamanan mereka, atau tingkat minat dan kepuasan yang lebih rendah di antara mereka yang jarang melakukan tes. 
 

Siklus tes


Perusahaan terus beralih ke siklus pengujian perangkat lunak yang lebih cepat.

Kombinasi metodologi pengembangan yang paling populer adalah Agile dan DevOps. Ini menunjukkan bahwa perusahaan yang sudah menggunakan Agile terus meningkatkan dalam proses ini dan mulai menerapkan proses DevOps. 

Hanya satu pendekatan DevOps yang menggunakan perusahaan kecil dan besar. Dan penggunaan kedua pendekatan - Agile dan DevOps - lebih banyak diamati di perusahaan besar. 
 

Metodologi Agile dan DevOps tidak tumbuh cepat, perlahan-lahan mengambil pangsa pasar dari Waterfall. Sebagian besar responden menunjukkan bahwa mereka menggunakan kombinasi pendekatan dalam proses beralih ke DevOps.
 

Alat dan teknologi pengujian


Di antara alat, Jenkins memimpin tahun ketiga berturut-turut (52%). Pada saat yang sama, jumlah mereka yang tidak menggunakan alat CI / CD dalam pekerjaan mereka menurun dari tahun ke tahun - pada tahun 2019 hanya ada 14% dari total. 


Meskipun kepemimpinan Jenkins yang kuat, pasar untuk alat pengujian terlihat terpecah-pecah.
 
Bahasa yang paling umum untuk aplikasi penulisan adalah Java (49%) dan JavaScript (44%). Frekuensi menggunakan C # (24%) dan VB.net (11%) menurun, tetapi frekuensi menggunakan Python meningkat (18%). Popularitas Swift, R, dan Go terus tumbuh, tetapi mereka semua mempertahankan tingkat tanggapan yang kira-kira sama. 

Jumlah rata-rata bahasa pemrograman untuk aplikasi penulisan telah meningkat: dari 2,36 menjadi 2,54. 

Distribusi serupa di antara bahasa telah dipertahankan dalam penulisan tes otomatis. Kecuali Python bertukar tempat dengan C #. 
 

Manajemen tes 


Muncul pola yang jelas: semakin kecil perusahaan, semakin mereka tidak suka menggunakan program untuk mengelola proses pengujian.  


Perusahaan kecil cenderung menggunakan alat manajemen pengujian. 

Di antara mereka yang masih menggunakan perangkat lunak tersebut, tidak ada satu program pemimpin tunggal:  



Pengujian Stres 


Dari 30% menjadi 35% jumlah responden meningkat bahwa pengujian beban dilakukan sebelum setiap publikasi proyek.  


Popularitas pengujian beban untuk berbagai jenis perangkat lunak
 
Di antara alat pengujian beban, Apache JMeter open-source pecah dengan margin yang meyakinkan - 37% dari penguji memilihnya. Tren open source berkembang di komunitas TI, jadi pemimpin seperti itu tidak mengejutkan. 

Tempat kedua - di LoadRunner (18%). Alat โ€œlainnyaโ€ yang tidak ditunjuk digunakan oleh 17%. 
 

 

Otomasi Tes 


Tingkat cakupan perangkat lunak dengan tes otomatis tidak berubah secara praktis sejak 2017:
 

Hanya 18% dari aplikasi yang dicakup oleh autotests lebih dari 75%.
 
Dan lagi-lagi, ada pola dengan ukuran perusahaan. 
Semakin besar perusahaan, semakin besar tingkat cakupan aplikasi dengan autotest. 
 Mempertahankan relevansi tes karena aplikasi berubah dan tumbuh masih merupakan masalah terbesar โŸถ 21% dari jawaban. Kurangnya waktu untuk pengujian tercatat 15%. Kualifikasi karyawan yang tidak memadai dicatat oleh 12%.

Pengujian UI 


Kesulitan dan tantangan utama




Dalam daftar kesulitan utama dalam pengujian, UI memimpin pengujian stabilitas (18%).

Jawaban baru "Mulai lakukan ini" [mereka belum pernah menguji UI sebelumnya, sekarang siap untuk melanjutkan. - kira-kira. Ed.] Langsung menempati posisi kedua dengan 17%.  
 
Distribusi jawaban lain:
 
  • Penentuan objek uji dan kontrol proses (15%).
  • Pengujian di lingkungan yang berbeda (perangkat, sistem operasi) (13%).
  • Tes cakupan tes (11%).
  • Layanan tes (11%).
  • Pembuatan data sintetis (9%).

 

Alat


Di antara alat untuk pengujian UI otomatis ada banyak aplikasi dengan popularitas rendah. 

Untuk tahun kedua berturut-turut, Selenium Webdriver tetap menjadi pemimpin (27%). Di tempat kedua adalah TestNG (10%). TestComplete menutup tiga teratas (8%).



 

Menjalankan tes pada saat bersamaan


Menjalankan beberapa jenis tes pada saat yang sama menghemat waktu untuk pengujian, yang sangat penting dalam kondisi siklus pengembangan yang singkat.  
Pada saat yang sama, beberapa penguji menggunakan chip ini: hanya 30% responden menjalankan lebih dari 10 tes sekaligus.



Jumlah tes yang diluncurkan secara bersamaan

Keteraturan lain: hampir semua orang yang tidak menjalankan tes secara paralel tidak mengotomatiskan tes. 

Hampir setiap orang yang menggunakan skrip atau metode lain untuk menguji UI menggunakan pengujian paralel, tidak seperti mereka yang memilih Rekam dan Ulangi sebagai cara utama untuk menguji UI. 

Memilih Pendekatan Otomatisasi vs Tes Paralel
 

Menjalankan tes di cloud 


Jumlah mereka yang menjalankan tes di cloud perlahan tapi pasti bertambah. Pada 2017, ada 45% jawaban seperti itu, dan pada 2019 sudah 50%.  

Peramban populer


Tiga pemimpin tidak berubah sejak 2017. Browser yang paling populer untuk menguji aplikasi web adalah Chrome (53%). Berikutnya adalah Firefox (41%) dan Internet Explorer (35%). 

Chrome, FireFox, dan Internet Explorer turun tajam pada 2018, tetapi dua yang pertama tumbuh sekitar 5% pada 2019, tetapi Internet Explorer terus turun.  

38% responden menguji dalam tiga browser atau lebih. Sebagian besar (51%) diuji hanya di versi browser terbaru, 20% - dalam dua browser terakhir, 11% - dalam tiga browser terakhir.  

Browser tanpa kepala 


Teknologi browser tanpa kepala secara signifikan meningkatkan jumlah tes yang berjalan secara paralel, sehingga mempercepat seluruh proses pengujian hampir tiga kali lipat. Sejauh ini, hanya Chrome dan FireFox yang memiliki versi tanpa kepala. 
 
Menurut survei, 25% responden menggunakan teknologi ini. 75% sisanya tidak mengetahui penggunaan browser tanpa kepala di perusahaan atau yakin bahwa teknologi ini tidak diterapkan.  

Pengujian Seluler


Setiap tahun, kebutuhan bisnis untuk menguji produk pada perangkat seluler semakin meningkat: hanya 15% responden mengatakan bahwa mereka tidak menguji perangkat seluler sama sekali. 
 
Pemimpin, seperti tahun lalu, adalah perangkat iOS. Android sedang bersiap. 
 


โ€” , , . 

 



Pada 2018, 45% tes diotomatisasi, pada 2019 - 46%. Meski tidak substansial, tetapi pertumbuhannya stabil. 

Menurut rencana responden, pada tahun 2021 mereka ingin mengotomatisasi 69% dari tes. Insinyur QA memiliki harapan tertinggi.  

Menurut survei, mereka yang memiliki tingkat otomatisasi saat ini 1-25% berencana untuk meningkatkannya menjadi 26-50%. Dan mereka yang 26โ€“50% ingin mendapat 51โ€“75%. Artinya, tidak ada yang mengklaim otomatisasi absolut, benar-benar menilai kemampuan mereka.  

Opsi yang paling efektif adalah rilis produk mingguan, sekitar 37% responden memilihnya. Di tempat kedua adalah siklus pengembangan bulanan (28%). Tempat ketiga ditempati oleh rilis produk triwulanan (12%). 


Responden mencapai sebagian besar tujuan yang mereka tetapkan pada 2017

Grafik di atas memungkinkan Anda untuk membandingkan ekspektasi responden tahun lalu mengenai frekuensi publikasi dan kenyataan. Sasaran untuk publikasi mingguan dan bulanan tidak hanya tercapai, tetapi bahkan melampaui harapan. Tetapi setiap hari, atau menerbitkan beberapa kali sehari tidak berhasil bagi banyak orang - harapan terlalu berlebihan. 

Tren di cakrawala selama dua tahun


Responden berusaha memprediksi arah yang akan mendapatkan popularitas di bidang pengujian dalam dua tahun ke depan. Dari jawaban yang disebutkan lebih dari 10 kali, kami mengumpulkan awan tag yang disederhanakan.  


Menurut perkiraan, area yang paling populer adalah otomatisasi, kecerdasan buatan, dan pembelajaran mesin. 

hal utama 


Frekuensi rilis terus tumbuh karena semakin banyak perusahaan yang bergerak dari metodologi Waterfall ke kombinasi metodologi Agile dan DevOps.

Pengujian didominasi oleh aplikasi web dan API.  

Ada banyak alat pengujian berbeda yang digunakan, di antaranya pengujian manual memimpin. 

Tugas paling sulit untuk pengujian otomatis adalah menyinkronkan skrip pengujian dengan versi aplikasi saat ini. 

Scripting adalah pendekatan yang paling umum untuk menguji otomatisasi, dan Selenium adalah alat scripting yang paling populer. 

Menurut rencana responden, pada tahun 2021 mereka ingin mengotomatisasi 69% dari tes. 

Responden masih melihat perlunya menguji di berbagai browser dan versi browser, tetapi jumlah versi browser tidak signifikan, tetapi menurun. 

Seperempat penguji menggunakan browser tanpa kepala, sementara lebih dari seperempatnya tidak yakin apakah organisasi mereka menggunakan teknologi ini. 

Dalam dua tahun ke depan, bidang yang paling populer di industri pengujian adalah otomatisasi, kecerdasan buatan, dan pembelajaran mesin.

Dari editor Netology


Kami mengundang Anda untuk berkenalan dengan profesi penguji dalam pelajaran terbuka " Penguji: siapa itu dan bagaimana menjadi yang utama dalam hal kualitas di TI " - yang berikutnya akan diadakan pada 23 April pukul 19:00.

Dan bagi mereka yang sudah ingin mendapatkan profesi IT ini, kami sarankan untuk mempelajari program program " Software Tester ". 

All Articles