በክር ቡድኖች መካከል የጄሜተር ማለፊያ ተለዋዋጮች

በዚህ የጄሜተር መማሪያ ውስጥ በክር ቡድኖች መካከል ተለዋዋጮችን እንዴት ማጋራት እና ማለፍ እንደምንችል እንመለከታለን ፡፡

የተራቀቁ የ JMeter ስክሪፕቶችን በሚፈጥሩበት ጊዜ ፣ ​​ምናልባት ብዙ ክር ቡድኖች ይኖሩዎታል ፡፡ እያንዳንዱ ክር ቡድኖች የተለያዩ ጥያቄዎችን እያከናወኑ ነው ፡፡

ተጠቃሚዎችን በተሸከርካሪ ምልክቶች ማረጋገጥ ስንፈልግ ለዚህ ጥሩ ምሳሌ ነው ፡፡ አንድ ክር ቡድን ማረጋገጫውን ያካሂዳል እና ምልክቱን ያድናል። ሌላ ክር ቡድን ይህንን ምልክት ማግኘት እና በሌላ ጥያቄ ውስጥ መጠቀም ያስፈልገዋል።


ስለሆነም በክር ቡድኖች መካከል ተለዋዋጭዎችን ለማለፍ የሚያስችል ዘዴ እንፈልጋለን ፡፡



በጄሜተር ውስጥ በክር ቡድኖች መካከል ተለዋዋጭዎችን ይለፉ

ለዚህ ምሳሌ የሙከራ እቅዳችን ሁለት ክር ቡድኖች አሉት ፡፡ የመጀመሪያው ክር ቡድን ለድር አገልግሎት የ GET ጥያቄን ያቀርባል ፡፡ ከዚያ እኛ እንጠቀማለን JSON ኤክስትራክተር የ JSON ምላሹን ለመተንተን ተሰኪ።


JSONPath ን በመጠቀም ለተለየ ቁልፍ ዋጋውን አውጥተን እንደ JMeter ተለዋዋጭ እንቆጥባለን ፡፡



የ JMeter ጥያቄያችን ይህን ይመስላል:

ከዚህ በላይ ያለው የጥያቄ ውጤት የሚከተለውን ምላሽ በ JSON ቅርጸት ያስገኛል-


እና የመጀመሪያውን ዩ.አር.ኤል. ለማውጣት የእኛ JSONPath ይመስላል:

የ JSONPath መጠይቅ ዋጋ እንደ first_url ይቀመጣል። ይህ ተለዋዋጭ በተመሳሳይ ክር ቡድን ውስጥ ብቻ የሚገኝ ሲሆን እኛ ዋጋውን ማግኘት የምንችለው ${first_url} በመጠቀም ነው ፡፡ አሁን ይህንን ተለዋዋጭ በሌሎች ክር ቡድኖች በኩል ተደራሽ ለማድረግ እንዴት እናደርጋለን?


መልሱ BeanShell Assertion መጠቀም ነው ተለዋዋጭውን እንደ ዓለም አቀፍ ንብረት ለማዳን ፡፡ በዚህ መንገድ በክር ቡድኖች መካከል ተለዋዋጮችን ማለፍ እንችላለን ፡፡

የቢንSል ማረጋገጫ ለማከል በቀኝ የሙከራ ዕቅድ ላይ ጠቅ ያድርጉ> አክል> ማረጋገጫ> የባቄላ ማረጋገጫ

በእኛ BeanShell ማረጋገጫ ውስጥ የሚከተሉትን ኮድ ማስገባት እንችላለን

${__setProperty(first_url, ${first_url})};


አሁን በክር ቡድን 2 ውስጥ | _ + + | | ን በመጠቀም ይህንን ተለዋዋጭ በቀጥታ ማግኘት እንችላለን ከዚህ በታች እንደሚታየው

ወይም ፣ አንድ ${__property(first_url)} መጠቀም እንችላለን ተለዋዋጭውን ለማንቀሳቀስ


በ BeanShell PreProcessor ውስጥ BeanShell PreProcessor በመጠቀም ከሌላ ክር ቡድን የተላለፈውን ተለዋዋጭ ማግኘት እንችላለን ፡፡ ከዚያ የተወሰኑ የ ‹ስትሪንግ› ማጭበርበሪያዎችን ማከናወን እና ውጤቱን እንደ አዲስ ተለዋዋጭ ማዳን እንችላለን ፡፡

ከዚህ በላይ ባለው ምሳሌ ውስጥ | _ _ + _ | ን እናስወግደዋለን ከክር ቡድን 1 ከተላለፈው ተለዋዋጭ ፣ እና ውጤቱን እንደ ተለዋዋጭ እንቆጥራለን props.get('name_of_variable').

ተለዋዋጭ http:// አሁን ወደ ክር ቡድን 2 አካባቢያዊ ሲሆን በቀጥታ _ _ + _ | በመጠቀም ይድረሱበት ከዚህ በታች እንደሚታየው