ฤดูใบไม้ผลิ KafkaTestUtils:งรอจนกว่าข้อความในหัวข้อจะถูกลือนกิน

0

คำถาม

แล้วฉันเผชิญหน้ากับสถานการณ์ที่น่าสนใจ:

ในของฉันร่วมทดสอบฉันส่งข้อมูลต้อง 2 หัวข้อคุและพวกเขาควรจะต้องกลือนกินโดยโปรแกรมโดยคำสั่ง ตอนแรก-userTopic แล้ว shoud ต้องกลือนกิน userOrderTopic.

ตอนที่ฉันส่งข้อความของผมในการทดสอบมันส่งจริงๆอย่างรวดเร็วในเวลาเดียวกัน แต่บางครั้งคำสั่งของกินโดยโปรแกรมต่างออกไป (userOrder เรื่องนั้ userTopic)สิ่งที่ทำให้ฉันทดสอบทั้งหมด

ฉันเจอบางอย่า triks ว่าฉันจะสามารถหลีกเลี่ยงมัน-ด้านหลับเป็นต้น แต่ฉันอยากจะเชื่อเลยว่ามันเลวคิดอะไรบางอย่างออก

ผมใหม่กับ kafka อย่างที่ผลลัพธ์ที่ได้ด้วย KafkaTestUtils. มันมีวิธีการซึ่งสามารถตรวจสอบข้อความในเรื่องถูกลือนกิน/เช็คจนกว่านั้นข้อความถูกกลือนกิน?

บางอย่างเหมือนนี้:

//check that message in userTopic was consumed, to have a chance send message to userOrderTopic 
KafkaTestUtils.waitUntilBeConsumed(serverBootstrap, "user-consumer", topic, 0, messageToUserTopic)

หรือ

KafkaTestUtils.getNowConsumedMessage(serverBootstrap, "user-consumer", topic, 0)

พีเอสในของฉัน intergration ทดสอบฉันไม่มี accsess เพื่อโปรดิวเซอร์/ของลูกค้า.

หรือบางทีอาจจะอยู่ในฤดูใบไม้ผลิแล้วkafka/ฤดูใบไม้ผลิแล้วkafka.ทดสอบพออีกเครื่องมือที่จะทำมันอยู่ในที่เหมาะสมทาง?

1

คำตอบที่ดีที่สุด

0

KafkaTestUtils เป็นเพียงสำหรับกินอกจากทดสอบ consumers ไม่ใช่ของจริงโปรแกรม consumers.

ไม่มีทางออกง่ายสำหรับการแข่งครั้งนี้เงื่อนไข;คุณต้องการที่จะรอสำหรับบันทึกแรกเป็นต้องกลือนกินก่อนที่กำลังส่งอีกเป็นครั้งที่สอง

2021-11-23 21:03:32

แล้วมีทางไหนให้ตรวจสอบว่าข้อความถูก cosumed? มากกว่าดูเหมือนเส้นด้ายนอนหลับไม่ใช่ความคิดที่แย่มาก
Gary Russell

มีไม่กี่แตกต่างเทคนิคการตัวอย่างเช่นถ้าคุณเป็นนักฟังที่เรียกผู้ให้บริการเพิ่มล้อเลียนกา/ขั้นของบริการในการทดสอบคดีนี้แล้วก็รอให้มันถูกเรียกว่า;-เพิ่ม RecordInterceptor ไปที่ตู้คอนเทนเนอร์เป็นนักฟังที่โรงงานในบทดสอบของคุณคนเดียวเพื่อรอฟัง interceptor จะเรียก;-เพิ่มเป็นพร็อกซีที่เป็นนักฟังที่นั่นนับเป็นถึงอยู่ในการทดสอบคดีนี้-แล้วเจอกัน stackoverflow.com/questions/53678801/... สำหรับตัวอย่าง

ขอบคุณสำหรับคำอธิบาย

ในภาษาอื่นๆ

หน้านี้อยู่ในภาษาอื่นๆ

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................

ดังอยู่ในนี้หมวดหมู่

ดังคำถามอยู่ในนี้หมวดหมู่