थ्रेड ग्रुप्स दरम्यान जेएमटर पास व्हेरिएबल्स

या JMeter ट्यूटोरियल मध्ये आपण थ्रेड ग्रुप्स मधील व्हेरिएबल्स कशा सामायिक आणि पास करू शकतो ते पाहू.

प्रगत जेएमटर स्क्रिप्ट विकसित करताना, बहुदा आपल्यात बहु थ्रेड गट असतील. प्रत्येक थ्रेड गट भिन्न विनंत्या करीत आहेत.

जेव्हा आम्हाला बीयर टोकन असलेल्या वापरकर्त्यांना प्रमाणीकरण करण्याची आवश्यकता असते तेव्हा त्याचे एक चांगले उदाहरण. एक थ्रेड गट प्रमाणीकरण करतो आणि टोकन जतन करतो. दुसर्‍या थ्रेड गटाला या टोकनमध्ये प्रवेश करण्याची आणि दुसर्‍या विनंतीमध्ये ती वापरण्याची आवश्यकता आहे.


म्हणून, आम्हाला थ्रेड गटांमधील चल पास करण्याची एक यंत्रणा आवश्यक आहे.



जेमिटरमध्ये थ्रेड ग्रुपमधील वेरीएबल्स पास करा

या उदाहरणार्थ, आमच्या चाचणी योजनेत दोन थ्रेड गट असतील. प्रथम थ्रेड गट वेब सेवेस जीईटी विनंती करतो. आम्ही नंतर वापर जेएसओएन एक्सट्रॅक्टर JSON प्रतिसाद विश्लेषित करण्यासाठी प्लगइन.


जेएसओएनपाथ वापरुन आम्ही विशिष्ट की साठी मूल्य काढू आणि जेएमटर व्हेरिएबल म्हणून सेव्ह करू.

आमची JMeter विनंती अशी दिसते:

वरील विनंतीचा निकाल जेएसओएन स्वरूपनात खालील प्रतिसाद उत्पन्न करतो:


आणि आमचे JSONPath प्रथम url काढण्यासाठी असे दिसते:

JSONPath क्वेरीचे मूल्य | _ _ + _ | म्हणून जतन केले गेले आहे. हा व्हेरिएबल फक्त त्याच थ्रेड गटामध्ये प्रवेश करण्यायोग्य आहे आणि आपण | _ _ _ _ | वापरुन त्याचे मूल्य मिळवू शकता. आता आम्ही इतर थ्रेड गटांद्वारे हे व्हेरिएबल accessक्सेस करण्यायोग्य कसे बनवणार आहोत?


उत्तर first_url वापरणे आहे व्हेरिएबल ग्लोबल प्रॉपर्टी म्हणून सेव्ह करण्यासाठी. अशा प्रकारे आपण थ्रेड ग्रुप्स मध्ये व्हेरिएबल्स पास करू शकतो.

बीनशेल एसेसरेशन जोडण्यासाठी, चाचणी योजनेवर उजवे क्लिक करा> जोडा> भर द्या> बीनशेल ठाम मत

आमच्या बीनशेल एसेरेशनमध्ये आम्ही खालील कोड प्रविष्ट करू शकतो

${first_url} |


आता थ्रेड ग्रुप २ मध्ये आपण या व्हेरिएबलवर | _ _ + _ | वापरून थेट प्रवेश करू शकतो खाली दाखविल्याप्रमाणे:

किंवा, आम्ही एक _ _ + _ | वापरू शकतो चल बदलण्यासाठी:


बीनशेल प्रीप्रोसेसरमध्ये, आपण _ _ + _ | वापरून दुसर्‍या थ्रेड ग्रुपमधून पास केलेले व्हेरिएबल accessक्सेस करू शकता. त्यानंतर आम्ही काही स्ट्रिंग मॅनिपुलेशन करू आणि त्याचा परिणाम नवीन व्हेरिएबल म्हणून सेव्ह करू.

वरील उदाहरणात, आम्ही | _ _ _ _ | थ्रेड ग्रुप 1 मधून पास झालेल्या व्हेरिएबल मधून, आणि हा निकाल आपण व्हेरिएबल म्हणून सेव करू. _ + _ _ |

चल BeanShell Assertion | थ्रेड ग्रुप 2 वर आता स्थानिक आहे आणि | _ _ _ _ | वापरुन त्यात थेट प्रवेश करा खाली दाखविल्याप्रमाणे:

मनोरंजक लेख