Pengujian fungsional. Pengujian stres perangkat lunak

Pengujian fungsional

Pengujian fungsional- Ini adalah pengujian perangkat lunak untuk memeriksa kelayakan persyaratan fungsional, yaitu kemampuan perangkat lunak untuk memecahkan masalah yang dibutuhkan pengguna dalam kondisi tertentu. Persyaratan fungsional menentukan apa sebenarnya yang dilakukan perangkat lunak, tugas apa yang diselesaikannya.

Persyaratan fungsional termasuk:

  • Kesesuaian fungsional (eng. kesesuaian).
  • Akurasi (eng. ketepatan).
  • Interoperabilitas (eng. interoperabilitas).
  • Kepatuhan dengan standar dan peraturan (eng. kepatuhan).
  • Keamanan (eng. keamanan).

literatur

  • Lisa Crispin, Janet Gregory Pengujian Agile: Panduan Praktis untuk Penguji dan Tim Agile. - M.: "Williams", 2010. - 464 hal. - (Seri Tanda Tangan Addison-Wesley). - 1000 eksemplar. - ISBN 978-5-8459-1625-9,

Yayasan Wikimedia. 2010.

Lihat apa itu "Pengujian Fungsional" di kamus lain:

    pengujian fungsional- - [L.G. Sumenko. Kamus Bahasa Inggris Rusia Teknologi Informasi. M .: GP TsNIIS, 2003.] Topik teknologi informasi secara umum EN pengujian fungsional ...

    pengujian- Acara pengujian dan pengujian fungsional (yang terakhir tidak terkait dengan acara olahraga) adalah komponen kunci untuk memastikan kesiapan Pertandingan dan satu-satunya kesempatan nyata untuk menguji OCOG yang dikembangkan ... ... Panduan penerjemah teknis

    Perangkat lunak adalah pengujian perangkat lunak yang dilakukan pada sistem yang lengkap dan terintegrasi untuk memverifikasi bahwa sistem tersebut memenuhi persyaratan asli. Pengujian sistem mengacu pada metode pengujian hitam ... ... Wikipedia

    Analis- (Analyst) Spesialis, karyawan suatu perusahaan, bank Informasi tentang bidang kegiatan analis, analis keuangan dan bisnis, analis mata uang dan pasar saham Isi >>>>>>>> Analis adalah, definisi Sejarah Analisis muncul ketika ... ... ensiklopedia investor

    Artikel ini tidak memiliki tautan ke sumber informasi. Informasi tersebut harus dapat diverifikasi, jika tidak maka dapat dipertanyakan dan dihapus. Anda dapat mengedit artikel ini ... Wikipedia

    Didirikan 1941 Pendiri Martin dan Eugen Hilty Tokoh kunci Pius Baschera (Ketua Dewan Direksi), Bo Risberg (Ketua Dewan Eksekutif)… Wikipedia

    Pengembangan Perangkat Lunak Proses Pengembangan Perangkat Lunak Proses Langkah Analisis Desain Pemrograman Dok… Wikipedia

    - (Performance Engineering) adalah bagian dari rekayasa sistem, yang mencakup seperangkat peran, pengetahuan, praktik, alat dan hasil dan diterapkan pada setiap tahap Siklus Pengembangan Perangkat Lunak untuk memastikan bahwa apa yang sedang dibuat, .. . ... Wikipedia

    Artikel ini perlu ditulis ulang sepenuhnya. Mungkin ada penjelasan di halaman pembicaraan. Istilah ini memiliki arti lain, lihat Program ... Wikipedia

Buku

  • Dasar-dasar pengujian dan verifikasi perangkat lunak, Sergey Mikhailovich Staroletov. Tutorial ini ditujukan untuk programmer masa depan yang perlu mengetahui dasar-dasar pengujian perangkat lunak, prinsip-prinsip bekerja dalam tim dengan penguji, kebutuhan dan ...
  • Pemrograman fungsional dalam JavaScript. Bagaimana Meningkatkan Kode JavaScript, Atencio Luis. Dalam aplikasi web yang kompleks, detail kode JavaScript tingkat rendah dapat mempersulit analisis program dan memengaruhi kinerja sistem secara keseluruhan. Pemrograman fungsional (FP) sebagai ...

Semuanya jenis pengujian perangkat lunak, tergantung pada tujuan yang dikejar, secara kondisional dapat dibagi menjadi kelompok-kelompok berikut: 1) fungsional; 2) tidak berfungsi; 3) terkait dengan perubahan.

Tes fungsional didasarkan pada fungsi dan fitur, serta interaksi dengan sistem lain, dan dapat disajikan di semua tingkat pengujian: Pengujian Komponen / Unit, Pengujian integrasi, pengujian Sistem, dan pengujian Penerimaan. ). Pengujian fungsional memeriksa perilaku eksternal suatu sistem. Berikut ini adalah jenis tes fungsional yang paling umum:

- Pengujian fungsional(Pengujian fungsional)

- Pengujian keamanan(Pengujian Keamanan dan Kontrol Akses)

- Pengujian interaksi(Pengujian Interoperabilitas)

Pengujian fungsional. Jenis pengujian ini memeriksa kepatuhan fungsi yang diimplementasikan dengan persyaratan, kerangka acuan, spesifikasi, berbagai dokumen proyek lainnya, dan hanya harapan pengguna. Masing-masing fungsi aplikasi diperiksa dan semuanya digabungkan. Semua kasus penggunaan diselidiki. Kecukupan data yang disimpan dan keluaran, metode pemrosesannya, pemrosesan data masukan, metode penyimpanan data, metode mengimpor dan mengekspor data, dll. diperiksa. tergantung pada spesifikasi aplikasi.

Tes fungsional didasarkan pada fungsi yang dilakukan oleh sistem dan dapat dilakukan di semua tingkat pengujian (komponen, integrasi, sistem, penerimaan). Biasanya, fitur ini dijelaskan dalam persyaratan, spesifikasi fungsional, atau kasus penggunaan.

Pengujian fungsionalitas dapat dilakukan dalam dua aspek: “ persyaratan»; « proses bisnis».

Pengujian dalam perspektif " persyaratan»Menggunakan spesifikasi kebutuhan fungsional sistem sebagai dasar perancangan kasus uji (Test Cases). Dalam hal ini perlu dibuat daftar apa yang akan diuji dan apa yang tidak, memprioritaskan persyaratan berdasarkan risiko (jika ini tidak dilakukan dalam dokumen persyaratan), dan berdasarkan ini, memprioritaskan kasus uji (test case) . Ini akan memungkinkan Anda untuk fokus dan tidak melewatkan fungsi terpenting saat pengujian.

Pengujian dalam perspektif " proses bisnis»Menggunakan pengetahuan tentang proses bisnis yang menggambarkan skenario penggunaan sistem sehari-hari. Dari perspektif ini, skrip pengujian biasanya didasarkan pada kasus penggunaan.

Keuntungan pengujian fungsional: mensimulasikan penggunaan sebenarnya dari sistem. Kekurangan pengujian fungsional: kemampuan untuk mengabaikan kesalahan logis dalam perangkat lunak; kemungkinan pengujian yang berlebihan.


Cukup umum adalah otomatisasi pengujian fungsional.

Pengujian keamanan... Strategi pengujian yang digunakan untuk memverifikasi keamanan sistem, serta untuk menganalisis risiko yang terkait dengan menyediakan pendekatan holistik untuk melindungi aplikasi, serangan peretas, virus, dan akses tidak sah ke data rahasia. Pengujian keamanan dapat dilakukan secara otomatis dan manual, termasuk memeriksa kasus uji positif dan negatif. Berdasarkan tiga utama prinsip- Ini kerahasiaan, integritas, dan ketersediaan(kerahasiaan, integritas, ketersediaan)

Kerahasiaan Adalah penyembunyian sumber daya atau informasi tertentu. Kerahasiaan dapat dipahami sebagai membatasi akses ke sumber daya untuk kategori pengguna tertentu, atau dengan kata lain, dalam kondisi apa pengguna berwenang untuk mengakses sumber daya ini.

Ada dua kriteria utama untuk mendefinisikan konsep: integritas:

1. Kepercayaan. Sumber daya diharapkan hanya dimodifikasi dengan cara yang tepat oleh sekelompok pengguna tertentu.

2. Kerusakan dan pemulihan. Jika data rusak atau salah diubah oleh pengguna yang berwenang atau tidak sah, perlu untuk menentukan seberapa penting prosedur pemulihan data.

Ketersediaan mewakili persyaratan bahwa sumber daya harus tersedia untuk pengguna yang berwenang, entitas internal, atau perangkat. Umumnya, semakin kritis suatu sumber daya, semakin tinggi tingkat ketersediaannya.

Pengujian interaksi... Dengan perkembangan teknologi jaringan dan Internet, interaksi sistem, layanan, dan aplikasi yang berbeda satu sama lain telah memperoleh relevansi yang signifikan, karena setiap masalah yang terkait dengan ini dapat menyebabkan penurunan otoritas perusahaan, yang, sebagai akibatnya, akan menimbulkan kerugian finansial. Oleh karena itu, pengujian interaksi harus ditanggapi dengan serius.

Pengujian interaksi itu adalah pengujian fungsional yang menguji kemampuan aplikasi untuk berinteraksi dengan satu atau lebih komponen atau sistem dan mencakup pengujian kompatibilitas dan pengujian integrasi.

Perangkat lunak dengan karakteristik interoperabilitas yang baik dapat dengan mudah diintegrasikan dengan sistem lain tanpa memerlukan modifikasi besar. Dalam hal ini, jumlah perubahan dan waktu yang dibutuhkan untuk menyelesaikannya dapat digunakan untuk mengukur interoperabilitas.

Pengujian fungsional adalah salah satu jenis pengujian utama, yang tugasnya adalah menetapkan kepatuhan perangkat lunak yang dikembangkan (SW) dengan persyaratan fungsional asli pelanggan. Artinya, melakukan pengujian fungsional memungkinkan Anda untuk memeriksa kemampuan sistem informasi dalam kondisi tertentu untuk memecahkan masalah yang dibutuhkan pengguna.


Tergantung pada tingkat akses ke kode sistem, dua jenis tes fungsional dapat dibedakan:
  • pengujian kotak hitam - pengujian fungsional tanpa akses ke kode sistem,
  • pengujian kotak putih - pengujian fungsional dengan akses ke kode sistem.

Pengujian black box dilakukan tanpa mengetahui mekanisme internal sistem dan bergantung pada manifestasi eksternal dari pekerjaannya. Pengujian ini memeriksa perilaku perangkat lunak dengan data masukan yang berbeda dan keadaan internal sistem. Dalam kasus pengujian kotak putih, kasus uji dibuat berdasarkan terutama pada kode sistem perangkat lunak. Ada juga jenis pengujian kotak hitam yang diperluas, yang mencakup studi kode - yang disebut kotak abu-abu.

Kunci Keuntungan

  1. Pengujian perangkat lunak fungsional sepenuhnya mensimulasikan penggunaan sistem yang sebenarnya.
  2. Ini memungkinkan Anda untuk mengidentifikasi kesalahan sistem perangkat lunak secara tepat waktu dan, dengan demikian, menghindari banyak masalah saat bekerja dengannya di masa mendatang.
  3. Penghematan dengan memperbaiki bug sebelumnya dalam siklus hidup perangkat lunak.

Tahapan utama pengujian fungsional

Pelatihan

melaksanakan

Pelatihan

Analisis dokumen awal tentang sistem dilakukan: persyaratan fungsional dan bisnis, kerangka acuan, paspor proyek. Juga, pengembangan dan persetujuan rencana pengujian, kasus uji, persetujuan tenggat waktu proyek, jumlah iterasi, dan penilaian risiko yang mungkin terjadi. Tugas untuk tahap ini dilakukan bersama dengan perwakilan pelanggan.

melaksanakan

Pengujian fungsional dilakukan secara manual menggunakan skenario pengujian yang telah disiapkan sebelumnya dengan semua kesalahan yang ditemukan dalam sistem pelacakan bug. Jika pelanggan tidak memiliki sistem seperti itu, kami dapat: menyediakan sistem manajemen pengujian di situs kami; memberikan lisensi kepada pelanggan; menggunakan sarana yang tersedia bagi pelanggan; bertahan hanya dengan paket kantor; untuk memberikan proses pengujian di situs pelanggan berdasarkan dana gratis.

Laporan pengujian sedang dikembangkan dan disetujui dengan daftar penyimpangan yang terdeteksi dan rekomendasi untuk meningkatkan sistem. Pelatihan pengguna disediakan jika perlu.

Peralatan

Manajemen pengujian dilakukan dalam sistem khusus.

Informasi keamanan 11.07.2018 8693

Pengujian fungsional adalah salah satu jenis pengujian utama, yang tugasnya adalah menetapkan kepatuhan perangkat lunak (perangkat lunak) yang dikembangkan dengan persyaratan fungsional asli perusahaan klien. Artinya, melakukan pengujian fungsional memungkinkan Anda untuk memeriksa kemampuan sistem informasi dalam kondisi tertentu untuk memecahkan masalah yang dibutuhkan pengguna.

Tergantung pada tingkat akses ke kode sistem, dua jenis tes fungsional dapat dibedakan:

pengujian kotak hitam - pengujian fungsional tanpa akses ke kode sistem,
pengujian kotak putih - pengujian fungsional dengan akses ke kode sistem.
Pengujian black box dilakukan tanpa mengetahui mekanisme internal sistem dan bergantung pada manifestasi eksternal dari pekerjaannya. Pengujian ini memeriksa perilaku perangkat lunak dengan data masukan yang berbeda dan keadaan internal sistem. Dalam kasus pengujian kotak putih, kasus uji dibuat, terutama berdasarkan kode sistem perangkat lunak. Ada juga jenis pengujian kotak hitam yang diperluas, yang mencakup studi kode - yang disebut kotak abu-abu.

Kunci Keuntungan

Pengujian fungsional perangkat lunak sepenuhnya mensimulasikan penggunaan sistem yang sebenarnya.
Memungkinkan Anda untuk mengidentifikasi kesalahan sistem perangkat lunak secara tepat waktu dan, dengan demikian, menghindari banyak masalah saat bekerja dengannya di masa mendatang.
Penghematan dengan memperbaiki bug pada tahap awal siklus hidup perangkat lunak.

Tahapan utama pengujian fungsional

Pelatihan- Analisis dokumen awal tentang sistem sedang dilakukan: persyaratan fungsional dan bisnis, kerangka acuan, paspor proyek. Juga, pengembangan dan persetujuan rencana pengujian, kasus uji, persetujuan tenggat waktu proyek, jumlah iterasi, dan penilaian risiko yang mungkin terjadi. Tugas untuk tahap ini dilakukan bersama dengan perwakilan pelanggan.

melaksanakan- Pengujian fungsional dilakukan secara manual sesuai dengan skenario pengujian yang telah disiapkan sebelumnya dengan memasukkan semua kesalahan yang ditemukan ke dalam sistem pelacakan bug. Jika perusahaan klien tidak memiliki sistem seperti itu, perusahaan moderator pengujian kerumunan dapat: menyediakan sistem manajemen pengujian di situsnya; memasok perusahaan kepada klien dengan lisensi; menggunakan dana yang tersedia untuk perusahaan klien; bertahan hanya dengan paket kantor; untuk memberikan proses pengujian di perusahaan klien berdasarkan dana gratis.

Laporan- Pengembangan dan persetujuan laporan pengujian yang dilakukan dengan daftar penyimpangan yang terdeteksi dan rekomendasi untuk perbaikan sistem sedang berlangsung. Pelatihan pengguna disediakan jika perlu.

Area pengujian fungsional

Pengujian regresi - Menguji fungsionalitas produk setelah memperbaiki bug atau menerapkan fungsionalitas baru

Pengujian keamanan - Penilaian kerentanan perangkat lunak terhadap berbagai serangan dan upaya akses tidak sah ke data.

Pengujian sistem - Verifikasi kepatuhan perangkat lunak dengan persyaratan yang dinyatakan dalam spesifikasi

Menguji aplikasi seluler - Identifikasi cacat dalam pekerjaan antarmuka grafis

Menguji instalasi - Menguji proses install/uninstall software

- Memeriksa pengoperasian perangkat lunak pada berbagai lingkungan perangkat lunak dan perangkat keras.

Tes integrasi - Menguji interaksi antara komponen sistem dan antara beberapa sistem.

Pengujian asap - Siklus tes singkat untuk menentukan operasi yang benar dari fungsi utama aplikasi.

Dokumentasi Pengujian - Memeriksa dokumen untuk kepatuhan dengan standar yang diterima, serta kepatuhan dengan karakteristik tertentu

Menyediakan cakupan tes - Penilaian kepadatan cakupan sistem dengan tes

Pengujian kegunaan - Penentuan tingkat kegunaan, kejelasan dan daya tarik produk yang dikembangkan

Pengujian regresi


Setiap kali Anda membuat perubahan pada sistem, atau menambahkan fungsionalitas baru ke dalamnya, ada

kemungkinan bahwa perubahan ini akan mempengaruhi kinerja fungsionalitas yang dikembangkan sebelumnya atau sistem secara keseluruhan. Pengujian regresi memungkinkan Anda untuk memeriksa kebenaran add-on dan memastikan bahwa program, setelah perubahan, terus mematuhi persyaratan yang ditetapkan dan berhasil berinteraksi dengan sistem lain.

Jenis pengujian ini direkomendasikan setiap kali setelah memperbaiki program, yang mungkin termasuk memperbaiki cacat, menggabungkan kode, bermigrasi ke OS atau database lain, menambahkan fungsionalitas baru, dan perubahan lainnya. Jika selama pengoperasian perangkat lunak jumlah pengguna sistem telah meningkat secara signifikan dibandingkan dengan operasi percontohan, disarankan untuk melakukan pengujian beban regresi.

Selama proyek berlangsung, pertama-tama penguji memeriksa bagian fungsionalitas yang kemungkinan kesalahannya paling besar setelah perubahan dilakukan. Untuk menghemat waktu, spesialis dapat mengembangkan tes regresi otomatis yang akan mengurangi waktu pengujian tanpa kehilangan kualitas pekerjaan.

Kunci Keuntungan

Dengan pengujian regresi reguler - pengurangan yang signifikan dalam jumlah cacat dalam sistem pada saat rilis.
Penghapusan penurunan kualitas sistem dengan pertumbuhan fungsionalitas.
Mengurangi kemungkinan kesalahan kritis dalam operasi percontohan.

Langkah utama

Tes verifikasi: termasuk tes untuk memeriksa perbaikan bug dan tes untuk memeriksa integritas fungsi dasar di setiap versi baru perangkat lunak;
Tes regresi: memeriksa versi baru program dengan serangkaian tes yang digunakan saat menguji versi sebelumnya dan tidak mengungkapkan kesalahan apa pun;
Regresi pada kesalahan yang dikoreksi: memeriksa kesalahan yang diidentifikasi sebelumnya dan diperbaiki, ini diperlukan untuk menghindari munculnya kesalahan tersebut setelah memodifikasi kode.

Tes integrasi


Banyak sistem TI modern berinteraksi dengan sistem dan modul lain, oleh karena itu sangat

penting untuk mengetahui hubungan mereka dan memeriksa kinerja mereka. Pengujian integrasi memungkinkan Anda mendeteksi cacat yang muncul selama interaksi sistem. Untuk ini, tes manual dan otomatis dapat digunakan.

Pengujian integrasi dianjurkan sebelum memulai pengujian sistem. Jenis pengujian ini harus dilakukan sedini mungkin, karena cacat integrasi biasanya bersifat arsitektural, memperbaikinya di akhir pengembangan berisiko dan bisa jauh lebih mahal. Untuk mempercepat awal proses pengujian, disarankan untuk menggunakan pengembangan emulator sistem eksternal.

Pengujian integrasi juga dapat melakukan pengujian regresi untuk memverifikasi perubahan yang dibuat pada aplikasi atau lingkungan dan fungsionalitas lama berfungsi.

Kunci Keuntungan

Pengujian integrasi memungkinkan Anda untuk mensimulasikan tindakan pengguna dan dengan cepat menerima konfirmasi bahwa produk perangkat lunak berhasil berinteraksi dengan sistem lain. Pendekatan ini menjamin beberapa keuntungan sekaligus:

Pencegahan kesalahan kritis dalam produksi percontohan;
Mengurangi pengaruh faktor manusia;
Penghematan biaya perbaikan cacat.

Tugas utama

Tugas utama dari pengujian integrasi adalah untuk menemukan kesalahan yang terkait dengan interaksi modul sistem atau beberapa sistem. Akibatnya, semua sistem dan modul yang berdekatan dari satu sistem harus bekerja secara bersamaan.

Metode pengujian integrasi dipilih tergantung pada solusi integrasi.

Tahapan

Pengembangan rencana pengujian - panduan tindakan untuk penguji;
Pembentukan data uji dan pembuatan kasus uji;
Implementasi skrip untuk meluncurkan kasus uji;
Eksekusi kasus uji dan perbaikan bug;
Mengulangi siklus pengujian hingga integrasi berhasil.

Pengujian keamanan


Pengujian keamanan dilakukan untuk menilai ketahanan sistem terhadap ilegal

tindakan: serangan hacker, penetrasi virus, upaya untuk mengakses informasi perusahaan. Pengujian keamanan sangat relevan untuk aplikasi web, aplikasi dengan informasi komersial atau pribadi yang penting, sistem pembayaran, aplikasi yang memerlukan integritas informasi, aplikasi sosial, aplikasi dengan lisensi komersial. Seringkali untuk pemeriksaan keamanan

sistem pengujian fungsional seperti itu tidak cukup.

Kunci Keuntungan

Pengujian keamanan mengurangi kemungkinan akses tidak sah ke sistem, pencurian informasi, dan kehilangan data;
Klien menerima penilaian objektif tentang tingkat keamanan sistem mereka.

Tugas utama

Menganalisis arsitektur dan membangun model ancaman dan risiko
Penentuan kriteria keamanan
Cari kerentanan dalam kode sumber
Pengujian Fuzz
Pengujian penetrasi
Pengujian Berbasis Risiko
Melakukan tes stres

Tahapan

Persiapan: pengumpulan informasi, klarifikasi detail;
Perencanaan: analisis kerentanan sistem dan kemungkinan ancaman, menyusun matriks risiko;
Desain: penentuan parameter keamanan sistem, analisis kode, tes dasar;
Pengembangan: masukan data yang tidak diharapkan, salah, atipikal (pengujian fuzzy), penilaian komponen perangkat lunak non-fungsional, model pengujian risiko;
Implementasi: pengujian beban, uji penetrasi.

Pengujian asap

Perakitan perangkat lunak yang sering tidak selalu bekerja dengan kualitas yang tepat, akibatnya produk perangkat lunak mungkin mengandung kesalahan dalam pengoperasian fungsi bisnis yang penting. Itulah sebabnya verifikasi fungsi utama sistem harus dilakukan segera setelah perakitan dan sebelum mentransfer perangkat lunak untuk pengujian.

Pengujian asap (pengujian asap) menetapkan tugas untuk mengidentifikasi cacat segera setelah perangkat lunak dibangun. Ini mencakup sejumlah kecil skenario pengujian dan dirancang untuk mendeteksi bug yang jelas dalam fungsionalitas. Biasanya tes asap dilakukan setelah pembaruan perangkat lunak, tetapi metode ini juga dapat digunakan untuk menguji produk perangkat lunak yang dibuat dari awal. Pengujian ASAP dapat dilakukan sebagai uji penerimaan sebelum pengujian fungsional. Karena pengujian asap dilakukan dengan frekuensi yang cukup tinggi dan sumber daya penguji yang signifikan dihabiskan untuk itu, disarankan untuk mengotomatisasi arah ini.

Kunci Keuntungan

Identifikasi kesalahan kritis dalam beberapa jam pertama (menit) setelah instalasi
Mengurangi risiko penarikan produk berkualitas rendah;
Meminimalkan risiko saat mengintegrasikan sistem;
Mengurangi biaya memperbaiki cacat;
Percepatan verifikasi melalui otomatisasi.

Tugas utama

Pemilihan skenario pengujian, untuk menyediakan cakupan pengujian fungsi sistem dengan prioritas tertinggi.
Penentuan jumlah tes ASAP dan waktu pelaksanaannya. Biasanya, untuk pengujian ASAP, tidak lebih dari 10 skenario dipilih dengan waktu eksekusi beberapa jam.
Menulis skrip tes, menjelaskan langkah-langkah untuk mereproduksi dan hasil yang diharapkan dari implementasinya. Atas permintaan klien, skrip dapat diotomatisasi.
Melakukan tes ASAP.

Pengujian sistem


Pengujian sistem adalah untuk pengujian

perangkat lunak siap pakai di negara bagian di mana ia akan diperkenalkan ke dalam operasi industri percontohan.

Pengujian sistem memungkinkan Anda untuk mendeteksi cacat seperti mengidentifikasi fungsionalitas yang hilang dalam sistem, pengoperasian fungsi sistem yang salah, kesalahan yang terjadi saat menggunakan data pengujian tertentu atau kombinasinya, kesalahan dalam interaksi dengan sistem lain.

Kunci Keuntungan

Mengurangi jumlah cacat dalam operasi percontohan;
Kemampuan untuk menggunakan skrip pengujian sebagai materi pelatihan untuk pengguna sistem di masa mendatang;
Identifikasi kesalahan dalam pengaturan dudukan, yang memfasilitasi pekerjaan administrator AU selama pemasangan sistem dalam operasi percontohan.

Tugas utama

Menentukan pendekatan untuk menulis skenario pengujian
Pembuatan rencana dan prosedur pengujian
Menyiapkan data uji
Pengujian
Identifikasi penggunaan sumber daya yang salah

Tahapan

Rencana pengujian
Pengembangan tes
Menyiapkan data uji
Uji coba - otomatis dan reguler
Pelaporan
Pengujian regresi setelah perbaikan bug

Dokumentasi Pengujian

Pengujian dokumentasi memungkinkan Anda untuk mengevaluasi berbagai karakteristik dokumen dan persyaratan: kelengkapan dan redundansi, ketidakjelasan dan konsistensi, peringkat dan ketertelusuran, kelayakan dan kemampuan pengujian.

Disarankan untuk menguji dokumentasi saat membuat perangkat lunak baru atau saat mengubahnya sehubungan dengan pengembangan bisnis. Lebih baik memulai pengujian dokumentasi pada tahap pembuatan persyaratan sistem, ini akan memungkinkan Anda untuk menghilangkan beberapa cacat sebelum diimplementasikan dalam kode.

Kunci Keuntungan

Deteksi dini kesalahan persyaratan dapat mengurangi biaya untuk memperbaikinya.
Dokumentasi berkualitas tinggi mengurangi kompleksitas dan durasi proyek secara keseluruhan.
Persyaratan bisnis yang jelas dan lengkap memungkinkan pengembang untuk memperkirakan cakupan pekerjaan dan menyusun kerangka acuan dengan lebih baik.
Dokumentasi yang jelas mengurangi jumlah pertanyaan tentang sistem dari pengguna dan penguji, yang membuat pekerjaan administrator dan analis lebih mudah.

Pengujian dokumentasi melibatkan pengujian beberapa tingkat dokumentasi:

Persyaratan bisnis
Persyaratan fungsional
Kerangka Acuan
Panduan pengguna

Menguji aplikasi seluler


Pengujian- tahap paling penting dalam pengembangan aplikasi seluler. Jenis pengujian ini memungkinkan Anda untuk memeriksa kinerja aplikasi di berbagai perangkat dan sistem operasi sesuai dengan persyaratan yang ditentukan.

Kunci Keuntungan

Memeriksa fungsionalitas dan kompatibilitas aplikasi pada perangkat dan platform yang berbeda.
Mengurangi risiko reputasi, karena rilis aplikasi berkualitas rendah pada platform seluler apa pun dikaitkan dengan komentar negatif dan peringkat pengguna yang rendah.
Kemampuan untuk mengotomatiskan pengujian aplikasi seluler, yang mengurangi waktu setiap iterasi.

Untuk melakukan pengujian, moderator pengujian massal mengandalkan berbagai perangkat seluler, termasuk semua model tablet dan smartphone modern, yang dimiliki oleh penguji dari seluruh dunia.

Menyediakan cakupan tes

Cakupan pengujian adalah nilai yang menyatakan persentase fungsionalitas yang diuji oleh pengujian terhadap fungsionalitas sistem secara keseluruhan. Direkomendasikan agar cakupan pengujian dievaluasi selama persiapan rencana dan metode pengujian sehingga pengujian dapat memberikan tingkat cakupan pengujian yang diperlukan. Jenis pengujian ini dapat dilakukan baik secara manual maupun selama pengujian otomatis.

Kunci Keuntungan

Penilaian cakupan pengujian secara jelas menunjukkan persentase cakupan fungsionalitas berdasarkan pengujian dan merupakan kriteria untuk kelengkapannya: semakin tinggi persentase cakupan pengujian, semakin tinggi kelengkapannya.
Memberikan cakupan pengujian yang paling lengkap mengurangi cacat dan meningkatkan kualitas produk akhir.

Tugas utama

Saat menyiapkan rencana pengujian dan metodologi untuk pengujian manual dan otomatis, tingkat cakupan pengujian yang diperlukan ditentukan tergantung pada tujuan pengujian. Saat pengujian, disarankan untuk menggunakan tingkat cakupan pengujian maksimum yang dapat dicapai, namun, untuk mengurangi waktu persiapan dan pelaksanaan pengujian, diperbolehkan menggunakan cakupan pengujian yang tidak lengkap.

Menguji instalasi

Pengujian instalasi (pengujian instalasi) memungkinkan Anda untuk memastikan bahwa perangkat lunak telah diinstal dan dikonfigurasi dengan benar, versi baru bergulir ke depan tanpa kesalahan, dan juga memungkinkan untuk menghapus dan menghapus perangkat lunak ini. Pengujian instalasi harus dilakukan saat membuat perangkat lunak, setelah versi baru muncul, dan juga saat mengubah konfigurasi dudukan.
Disarankan untuk melakukan pengujian instalasi perangkat lunak pada platform yang berbeda, secara manual atau menggunakan otomatisasi. Jenis pekerjaan pengujian ini dipengaruhi oleh faktor-faktor berikut:
Platform dan sistem operasi apa yang didukung?
Bagaimana perangkat lunak akan didistribusikan?
Siapa yang akan menginstal perangkat lunak?

Kunci Keuntungan

Menguji penginstalan menghindari masalah seperti saat menginstal perangkat lunak di lingkungan industri seperti:
Ketidakmampuan untuk menginstal perangkat lunak
Kehilangan data setelah menginstal versi baru
Ketidakmampuan untuk memutar kembali ke versi sebelumnya

Akibatnya, uang dan waktu dihemat, dan pekerjaan administrator sangat dipermudah.
Tugas utama

Pengujian instalasi dilakukan sesuai dengan rencana instalasi perangkat lunak. Instalasi, konfigurasi, pembaruan, rollback, dan penghapusan perangkat lunak pada semua platform yang dideklarasikan diperiksa.

Pengujian kegunaan

Pengujian kegunaan dilakukan selama pembuatan perangkat lunak baru dan revisinya. Tujuan utama dari pengujian tersebut adalah untuk menemukan solusi dalam antarmuka program yang paling ramah pengguna untuk mengurangi waktu yang dihabiskan untuk memecahkan masalah pengguna.

Hasil dari pengujian usability adalah beberapa saran untuk perbaikan objek pengujian, misalnya mengubah lokasi tombol atau menambahkan yang baru untuk menjalankan perintah dengan cepat, mengisi nilai default, menambahkan hotkey, dll.
Kunci Keuntungan

Hasil uji usability akan memberikan feedback positif dari pengguna sistem di masa yang akan datang. Jika sistem ditujukan untuk penggunaan reguler, misalnya, oleh karyawan pusat panggilan, teller bank, atau asisten penjualan di toko, ergonomi sistem akan mengurangi biaya tenaga kerja mereka untuk melakukan operasi sehari-hari. Jika sistem ditujukan untuk layanan pelanggan, misalnya, toko online atau bank Internet, kenyamanan dan kesederhanaan sistem akan meninggalkan kenangan positif bekerja dengannya, yang akan mempertahankan pelanggan dan menarik pelanggan baru.

Tugas utama

Tujuan dari pengujian kegunaan adalah untuk menentukan tingkat kegunaan dan kemudahan pemecahan masalah oleh pengguna, untuk mana produk itu dibuat.

Dalam kerangka tugas ini, hal-hal berikut dinilai:

Berapa banyak langkah yang perlu Anda ambil untuk menyelesaikan tugas?
Berapa lama waktu yang dibutuhkan untuk menyelesaikan tugas tersebut?
Berapa banyak kesalahan yang dilakukan pengguna pemula saat menyelesaikan tugas?
Apa kesan pengguna bekerja dengan program ini?
Emosi pengguna selama tugas.

Pengujian konfigurasi

Pengujian konfigurasi- Ini adalah pengujian pengoperasian perangkat lunak pada berbagai lingkungan perangkat lunak dan perangkat keras. Jenis pengujian ini digunakan jika diketahui bahwa produk informasi akan digunakan, misalnya, pada platform yang berbeda, pada browser yang berbeda, dan akan mendukung versi driver yang berbeda.

Kunci Keuntungan

Pengujian konfigurasi sepenuhnya mensimulasikan penggunaan sistem yang sebenarnya.
Memungkinkan Anda untuk mengidentifikasi kesalahan sistem perangkat lunak secara tepat waktu dalam operasi di bawah konfigurasi yang berbeda, dan dengan demikian mencegah masalah saat bekerja dengannya.

Tahap utama pengujian konfigurasi

Pelatihan- Daftar konfigurasi sistem yang akan dilakukan pengujian dikompilasi. Dalam praktiknya, seringkali tidak mungkin untuk menggambarkan seluruh rangkaian konfigurasi di mana sistem akan digunakan. Oleh karena itu, mereka diprioritaskan, dan hanya konfigurasi yang paling penting yang dimasukkan dalam daftar akhir.
melaksanakan- Sistem diuji pada konfigurasi yang dipilih.
Laporan- Perusahaan memberi klien laporan terperinci dengan daftar cacat dan penyimpangan yang ditemukan dalam pengoperasian sistem untuk setiap opsi konfigurasi.

Misalkan ada fungsi get-datayang mengembalikan kartu informasi tentang ID pengguna yang diberikan. Fungsi ini sekarang menggunakan 3 fungsi sumber-a, sumber-b dan sumber-c untuk mendapatkan tiga jenis peta yang berbeda. Sekarang kita akan menggabungkan semua peta ini menjadi satu peta dan kembali dari get-data.

Saat saya menguji get-data, haruskah saya memeriksa data kunci? Apakah masuk akal jika fitur ini menolak pengujian unit jika salah satu dari sumber-a, sumber-b, dan sumber-c gagal? Jika tugas dari suatu fungsi adalah menggabungkan data dan memang demikian, itu sudah cukup, bukan?

1

2 balasan

Misalkan ada fungsi get-data yang mengembalikan peta informasi tentang ID pengguna yang diteruskan.

Bagus sekali. Maka Anda harus memeriksanya. Apakah Anda mengembalikan data yang benar untuk ID yang diberikan?

sekarang fungsi ini menggunakan 3 fungsi sumber-a, sumber-b dan sumber-c untuk mendapatkan tiga jenis peta yang berbeda.

Detail implementasi mana yang harus Anda abaikan dalam pengujian Anda. Semua yang Anda uji adalah bahwa unit kerja Anda (metode ini) melakukan apa yang seharusnya dilakukan (mengambil ID dan mengembalikan data XYZ untuk ID itu). Bagaimana metode ini tidak terlalu penting - lagi pula, manfaat utama dari pengujian unit ini adalah Anda dapat memfaktorkan ulang implementasi metode dan pengujian akan memverifikasi bahwa Anda melakukannya dengan benar.

Namun, Anda mungkin harus mengolok-olok sumber data, jadi pada titik tertentu pengujian mungkin perlu mengetahui cara kerja kode ini. Anda perlu menyeimbangkan tiga tujuan yang bersaing di sini: membuat tes mandiri (dengan mengejek data), membuat tes fokus pada persyaratan dan pragmatisme.

Pada akhirnya, ini adalah kode penting. Ada tes untuk mendukung kode aktual, membuang banyak waktu, dan memoles masalah pemeriksaan, tidak berguna seperti tes membuat .

Dalam pengujian unit, Anda hanya boleh menguji fungsionalitas satu kelas, jika metode sumber-a, sumber-b, dan sumber-c Anda memanggil kelas lain, Anda harus mengejeknya (mereka harus diuji unit di kelasnya).

Dalam pengujian integrasi, Anda memeriksa perilaku beberapa kelas yang berinteraksi di antara mereka, ini berarti bahwa fungsi get-data Anda harus memeriksa validitas data yang sedang diambil (sumber-a, sumber-b dan sumber-c sudah benar, dan data digabungkan dengan benar) ...

Tes unit lebih sederhana dan lebih fokus dan harus ditulis oleh pengembang. Tes integrasi cenderung menjadi usang dengan relatif cepat (jika ada komponen internal yang diubah), sehingga lebih sulit untuk dijalankan. Harus dibuat oleh profil QA.