Halo, Habr!
Ini adalah prekuel
publikasi saya
sebelumnya dan pada saat yang sama membuat ulang artikel
pengujian layanan otomatis menggunakan protokol MQ menggunakan JMeter .
Kali ini saya akan bercerita tentang pengalaman saya merekonsiliasi JMeter dan IBM MQ untuk pengujian aplikasi yang bahagia di IBM WS. Menghadapi tugas seperti itu, dengan mudah tidak menyerah. Saya ingin membantu menghemat waktu untuk semua yang berminat.

Pendahuluan
Tentang proyek: bus data, banyak pesan xml, tiga area pertukaran (antrian, basis data, sistem file), layanan web dengan logika pemrosesan pesan mereka sendiri. Seiring perkembangan proyek, pengujian manual menjadi lebih sulit. Apache JMeter dipanggil untuk membantu - sumber yang kuat dan terbuka, dengan komunitas pengguna yang besar dan antarmuka yang ramah. Kemudahan penyesuaian versi "out of the box" memungkinkan Anda untuk menutupi setiap kasus, dan janji pengembang utama untuk membantu
jika sesuatu (memang membantu) akhirnya disetujui dalam pilihan.
Mempersiapkan konteks awal
Untuk berinteraksi dengan manajer antrian, Anda memerlukan konteks awal. Bisa dari beberapa jenis, di
sini Anda dapat membaca lebih lanjut.
Lebih mudah menggunakan MQ Explorer untuk membuatnya:
Gambar 1: Menambahkan Konteks AwalPilih tipe file dari konteks dan direktori untuk menyimpan
.bindings dari file yang akan berisi deskripsi objek JNDI:
Gambar 2: Memilih Jenis Konteks AwalKemudian Anda dapat mulai membuat objek-objek ini. Dan mulai dengan pabrik koneksi:
Gambar 3: Membuat pabrik koneksiPilih nama yang ramah ...
Gambar 4: Memilih nama pabrik koneksi... dan
jenis Pabrik Sambungan Antrian :
Gambar 5: Memilih Jenis Pabrik KoneksiProtokol -
MQ Client untuk kemungkinan berinteraksi dengan MQ dari jarak jauh:
Gambar 6: Memilih protokol pabrik koneksiPada langkah berikutnya, Anda dapat memilih pabrik yang ada dan menyalin pengaturan lebih lanjut darinya. Klik
Berikutnya , jika tidak ada:
Gambar 7: Memilih Pengaturan untuk Pabrik Koneksi yang AdaDi jendela pemilihan parameter, cukup atur tiga. Pada tab
Sambungan , tentukan nama manajer antrian dan ip dudukan dengan lokasinya (tinggalkan port
1414 ):
Gambar 8: Mengonfigurasi Pengaturan Pabrik KoneksiDan pada tab
Channels , saluran untuk koneksi. Klik
Selesai untuk menyelesaikan:
Gambar 9: Menyelesaikan Pabrik KoneksiSekarang buat koneksi ke antrian:
Gambar 10: Membuat TargetPilih nama yang ramah (saya lebih suka menentukan nama sebenarnya dari antrian) dan jenis
Antrian :
Gambar 11: Memilih nama dan tipe targetDengan analogi dengan
Gambar 7, Anda dapat menyalin pengaturan dari antrian yang ada. Juga klik
Berikutnya jika ini yang pertama:
Gambar 12: Memilih pengaturan target yang adaDi jendela pengaturan, cukup pilih nama manajer dan antrian yang diinginkan, klik
Selesai . Kemudian ulangi beberapa kali yang diperlukan sampai semua antrian yang diperlukan untuk berinteraksi dengan JMeter dibuat:
Gambar 13: Menyelesaikan penciptaan targetMempersiapkan JMeter
Persiapan JMeter adalah menambahkan perpustakaan yang diperlukan untuk berinteraksi dengan MQ. Mereka berada di% wmq_home% / java / lib. Salin ke% jmeter_home% / lib / ext sebelum memulai JMeter.
- com.ibm.mq.commonservices.jar
- com.ibm.mq.headers.jar
- com.ibm.mq.jar
- com.ibm.mq.jmqi.jar
- com.ibm.mq.pcf.jar
- com.ibm.mqjms.jar
- dhbcore.jar
- fscontext.jar
- jms.jar
- jta.jar
- providerutil.jar
Daftar alternatif yang diusulkan oleh
polarnik dalam
komentar dengan sedikit nuansa: javax.jms-api-2.0.jar bukannya jms.jar.
Dengan jms.jar, kesalahan NoClassDEfFoundError terjadi, solusinya ditemukan di
sini .
- com.ibm.mq.allclient.jar
- fscontext.jar
- javax.jms-api-2.0.jar
- providerutil.jar
Kedua daftar perpustakaan berhasil dengan JMeter 5.0 dan IBM MQ 8.0.0.4.
Penyiapan rencana pengujian
Satu set elemen JMeter yang diperlukan dan memadai terlihat seperti ini:
Gambar 14: Rencana TesAda lima variabel dalam contoh rencana pengujian. Meskipun jumlahnya kecil, saya sarankan memulai elemen konfigurasi terpisah untuk berbagai jenis variabel. Ketika tes tumbuh, ini akan sangat menyederhanakan navigasi. Dalam hal ini, dua daftar diperoleh. Yang pertama berisi parameter untuk menghubungkan ke MQ (lihat
Gambar 2 dan
Gambar 4 ):
Gambar 15: Pengaturan Koneksi MQYang kedua adalah nama-nama target yang merujuk pada antrian:
Gambar 16: Nama Antrian ParameterizedTetap mengkonfigurasi JMS Publisher untuk memuat pesan pengujian ke antrian keluar:
Gambar 17: Mengkonfigurasi Penerbit JMSDan Pelanggan JMS untuk membaca pesan dari antrian yang masuk:
Gambar 18: Mengkonfigurasi Pelanggan JMSJika semuanya dilakukan dengan benar, hasil dalam daftar akan diisi dengan warna hijau cerah dan ceria.
Kesimpulan
Dia sengaja menghilangkan masalah perutean dan administrasi, ini adalah topik yang agak akrab dan luas untuk publikasi individu.
Selain itu, ada banyak nuansa dalam bekerja dengan antrian, basis data dan file, yang juga ingin saya bicarakan secara terpisah dan menyeluruh.
Jaga waktu Anda. Dan terima kasih sudah menonton.