เฮ้ ฮับ!
นี่เป็นภาคก่อนของฉัน
ครั้งนี้ ฉันจะเล่าให้คุณฟังเกี่ยวกับประสบการณ์ของฉันในการปรับ JMeter และ IBM MQ เพื่อการทดสอบแอปพลิเคชันบน IBM WAS อย่างมีความสุข ฉันต้องเผชิญกับงานดังกล่าวมันไม่ง่ายเลย อยากช่วยประหยัดเวลาให้กับทุกคนที่สนใจ
การแนะนำ
เกี่ยวกับโครงการ: บัสข้อมูล, ข้อความ xml จำนวนมาก, พื้นที่แลกเปลี่ยนสามแห่ง (คิว, ฐานข้อมูล, ระบบไฟล์), บริการบนเว็บที่มีตรรกะการประมวลผลข้อความของตัวเอง เมื่อโปรเจ็กต์ดำเนินไป การทดสอบด้วยตนเองก็กลายเป็นเรื่องยากมากขึ้น Apache JMeter ถูกเรียกให้มาช่วยเหลือ - ทรงพลังและเป็นโอเพ่นซอร์ส พร้อมด้วยชุมชนผู้ใช้ขนาดใหญ่และอินเทอร์เฟซที่เป็นมิตร ความง่ายในการปรับแต่งเวอร์ชันสำเร็จรูปช่วยให้คุณสามารถครอบคลุมทุกกรณี และคำมั่นสัญญาของผู้พัฒนาหลักที่จะช่วยเหลือ ในกรณี (มันช่วยได้) ในที่สุดก็ยืนยันการเลือกของฉัน
การเตรียมบริบทเริ่มต้น
หากต้องการโต้ตอบกับผู้จัดการคิว คุณต้องมีบริบทเริ่มต้น มีหลายประเภทที่นี่
หากต้องการสร้างมัน จะสะดวกในการใช้ MQ Explorer:
รูปที่ 1: การเพิ่มบริบทเริ่มต้น
เลือกประเภทไฟล์บริบทและไดเร็กทอรีหน่วยเก็บข้อมูล .การผูก ไฟล์ที่จะมีคำอธิบายของวัตถุ JNDI:
รูปที่ 2: การเลือกประเภทบริบทเริ่มต้น
จากนั้นคุณก็สามารถเริ่มสร้างวัตถุเหล่านี้ได้ และเริ่มต้นด้วยโรงงานเชื่อมต่อ:
รูปที่ 3: การสร้างโรงงานการเชื่อมต่อ
เลือกชื่อที่เป็นมิตร...
รูปที่ 4: การเลือกชื่อโรงงานการเชื่อมต่อ
... และพิมพ์ โรงงานเชื่อมต่อคิว:
รูปที่ 5: การเลือกประเภทโรงงานการเชื่อมต่อ
มาตรการ - ลูกค้า MQ เพื่อให้สามารถโต้ตอบกับ MQ จากระยะไกล:
รูปที่ 6: การเลือกโปรโตคอลการเชื่อมต่อจากโรงงาน
ในขั้นตอนถัดไป คุณสามารถเลือกโรงงานที่มีอยู่แล้วคัดลอกการตั้งค่าเพิ่มเติมจากนั้นได้ คลิก ถัดไปหากไม่มี:
รูปที่ 7: การเลือกการตั้งค่าสำหรับโรงงานการเชื่อมต่อที่มีอยู่
ในหน้าต่างการเลือกพารามิเตอร์ ก็เพียงพอที่จะระบุสามรายการ บนแท็บ การเชื่อมต่อ ระบุชื่อของผู้จัดการคิวและหมายเลข IP พร้อมที่ตั้ง (พอร์ต 1414 ออกจาก):
รูปที่ 8: การกำหนดค่าพารามิเตอร์โรงงานการเชื่อมต่อ
และบนแท็บ ช่องทาง – ช่องทางการเชื่อมต่อ คลิก เสร็จสิ้น ทำให้สมบูรณ์:
รูปที่ 9: การสร้างโรงงานการเชื่อมต่อเสร็จสมบูรณ์
ตอนนี้เรามาสร้างการเชื่อมต่อกับคิวกัน:
รูปที่ 10: การสร้างวัตถุเป้าหมาย
เรามาเลือกชื่อที่เป็นมิตร (ฉันชอบระบุชื่อจริงของคิว) แล้วพิมพ์ คิว:
รูปที่ 11: การเลือกชื่อและประเภทเป้าหมาย
โดยการเปรียบเทียบกับ รูปที่ 7 คุณสามารถคัดลอกการตั้งค่าจากคิวที่มีอยู่ได้ คลิกเช่นกัน ถัดไปถ้าเป็นอันแรก:
รูปที่ 12: การเลือกการตั้งค่าสำหรับเป้าหมายที่มีอยู่
ในหน้าต่างการตั้งค่า เพียงเลือกชื่อผู้จัดการและคิวที่ต้องการ คลิก เสร็จสิ้น. จากนั้นทำซ้ำตามจำนวนที่ต้องการจนกระทั่งคิวทั้งหมดที่จำเป็นในการโต้ตอบกับ JMeter ได้ถูกสร้างขึ้น:
รูปที่ 13: การสร้างเป้าหมายให้เสร็จสมบูรณ์
กำลังเตรียม JMeter
การเตรียม JMeter เกี่ยวข้องกับการเพิ่มไลบรารีที่จำเป็นในการโต้ตอบกับ MQ ตั้งอยู่ใน %wmq_home%/java/lib คัดลอกไปที่ %jmeter_home%/lib/ext ก่อนเริ่ม 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.โถ
- jta.jar
- providerutil.jar
แนะนำรายการทางเลือก
เกิดข้อผิดพลาด NoClassDEfFoundError เกิดขึ้นกับ jms.jar ซึ่งเป็นวิธีแก้ไขปัญหาที่ฉันพบ
- com.ibm.mq.allclient.jar
- fscontext.jar
- javax.jms-api-2.0.jar
- providerutil.jar
รายการไลบรารีทั้งสองทำงานกับ JMeter 5.0 และ IBM MQ 8.0.0.4 ได้สำเร็จ
จัดทำแผนการทดสอบ
ชุดองค์ประกอบ JMeter ที่จำเป็นและเพียงพอมีลักษณะดังนี้:
รูปที่ 14: แผนการทดสอบ
มีตัวแปรห้าตัวในแผนการทดสอบตัวอย่าง แม้ว่าจะมีจำนวนน้อย แต่ฉันแนะนำให้สร้างองค์ประกอบการกำหนดค่าแยกต่างหากสำหรับตัวแปรประเภทต่างๆ เมื่อการทดสอบเติบโตขึ้น สิ่งนี้จะทำให้การนำทางง่ายขึ้นมาก ในกรณีนี้ เราได้รับสองรายการ ตัวแรกประกอบด้วยพารามิเตอร์สำหรับเชื่อมต่อกับ MQ (ดู 2 รูป и 4 รูป):
รูปที่ 15: ตัวเลือกการเชื่อมต่อ MQ
ประการที่สองคือชื่อของวัตถุเป้าหมายที่อ้างถึงคิว:
รูปที่ 16: ชื่อคิวที่กำหนดพารามิเตอร์
สิ่งที่เหลืออยู่คือการกำหนดค่า JMS Publisher เพื่อโหลดข้อความทดสอบลงในคิวขาออก:
รูปที่ 17: การตั้งค่า JMS Publisher
และ JMS Subscriber เพื่ออ่านข้อความจากคิวที่เข้ามา:
รูปที่ 18: การกำหนดค่าสมาชิก JMS
หากทุกอย่างถูกต้องผลลัพธ์ของการดำเนินการในรายการจะเต็มไปด้วยสีเขียวสดใสและร่าเริง
ข้อสรุป
ฉันจงใจละเว้นประเด็นเรื่องการกำหนดเส้นทางและการดูแลระบบซึ่งเป็นหัวข้อที่ค่อนข้างใกล้ชิดและกว้างขวางสำหรับสิ่งพิมพ์แยกต่างหาก
นอกจากนี้ยังมีความแตกต่างที่สำคัญในการทำงานกับคิวฐานข้อมูลและไฟล์ซึ่งฉันอยากจะพูดถึงแยกกันและโดยละเอียดด้วย
ประหยัดเวลาของคุณ และขอขอบคุณสำหรับความสนใจของคุณ
ที่มา: will.com