ሰላም ሀብር! ይህ የእኔ ቀጣይ ነው።
ለትልቅ የፌዴራል ኩባንያ ዳታ አውቶቡስ እየሰራን ነው። የተለያዩ የጥያቄ ቅርጸቶች፣ ትራንስፎርሜሽን፣ ውስብስብ ማዘዋወር። ለሙከራ, ወደ ወረፋው ብዙ መልዕክቶችን መላክ ያስፈልግዎታል. በእጅ እያንዳንዱ ኪሮፕራክተር ሊቋቋመው የማይችል ህመም ነው.
መግቢያ
ምንም እንኳን መጀመሪያ ላይ ይህን ህመም መታገስ ነበረብኝ. ሁሉም የተጀመረው በ RFHUtil ነው። ኃይለኛ, ግን አሰቃቂ እና አስፈሪ: ደህና, ሩስን ታውቃለህ.
በአንዳንድ ሁኔታዎች አስፈላጊ ነው, ነገር ግን በንቃት ጥቅም ላይ ከዋለ በቋሚነት እየቀነሰ ይሄዳል.
ከእሱ ጋር ምቹ ሙከራ ማድረግ አይቻልም.
በ JMeter ሁሉም ነገር ቀላል ሆኗል. ከመጀመሪያው የመማር እና የመላመድ ደረጃ በኋላ፣ ለደስታ ፈተና ተስፋ መውጣት ጀመረ።
የJMS አታሚ እና የጄኤምኤስ ተመዝጋቢ ናሙናዎችን በንቃት እጠቀማለሁ። ከJMS ነጥብ-ወደ-ነጥብ በተለየ፣ እነዚህ ጥንድ ለመጠቀም የበለጠ አመቺ ይመስላል። ለምሳሌ፣ በJMS Selector ውስጥ ካለው ተመዝጋቢ ጋር ተለዋዋጭ መግለጽ ይችላሉ፣ ነገር ግን ከነጥብ-ወደ ነጥብ ጋር ማድረግ አይችሉም (ወይም ይህ ዘዴ በጣም ግልፅ አይደለም)።
ናሙናዎችን በማዘጋጀት ላይ
JMS አታሚ
- ማዋቀር - እያንዳንዱ ናሙና. Apache
ይመክራል ወረፋዎች/ርእሶች በተለዋዋጮች ከተገለጹ ይህንን አማራጭ ይጠቀሙ። - የማለቂያ ጊዜ (ms) = 120000. ካልተሳካ, የፈተና ጥያቄዎች ከ 2 ደቂቃዎች በኋላ ከወረፋው ይጠፋሉ.
- የማያቋርጥ የማድረሻ ሁነታን ይጠቀሙ? - እውነት። አይቢኤም
ማፅደቅ ያ የማያቋርጥ ሁነታ ድንገተኛ ውድቀት በሚከሰትበት ጊዜ የሚተላለፉ መልዕክቶችን አስተማማኝ ጥበቃ ያደርጋል። እና ፈጣን ልውውጥ በማይቋረጥ ሁነታ. ለሙከራ ዓላማዎች, ፍጥነት የበለጠ አስፈላጊ ነው.
በእያንዳንዱ አታሚ ውስጥ ተመዝጋቢው በJMS መራጭ ውስጥ የሚጠቀመውን የ jms ንብረት አዘጋጃለሁ። ለእያንዳንዱ ግቤት፣ በዘፈቀደ ዋጋ የሚመነጨው በተጠቃሚ መለኪያዎች የሙከራ እቅድ አካል ውስጥ ነው፡-
በዚህ መንገድ ትክክለኛው መልእክት መነበቡን እርግጠኛ መሆን ይችላሉ።
ቀድሞ የተዋቀረ የJMS አታሚ የመጨረሻው “ባዶ”፡-
የጄኤምኤስ ተመዝጋቢ
- ማዋቀር - እያንዳንዱ ናሙና. እሺ ይገባሃል።
- የጊዜ ማብቂያ (ms) = 100000. ጥያቄው ከ 100 ሰከንድ መጠበቅ በኋላ ወረፋው ላይ ካልደረሰ, የሆነ ችግር ተፈጥሯል.
- በናሙናዎች መካከል ይቁም? - እውነት።
JMS መራጭ - በጣም ምቹ
በሚተላለፉ መልዕክቶች ውስጥ የሲሪሊክ ፊደላትን እንዴት መቋቋም እንደሚቻል። በJMeter ውስጥ፣ በነባሪነት፣ ከተጣራ በኋላ፣ በጠማማነት ይታያል። ይህንን ለማስቀረት እና ታላቁን እና ሀይለኛውን ሁል ጊዜ እና በሁሉም ቦታ ለመደሰት፣ የሚከተሉትን ማድረግ አለብዎት:
- የJVM ነጋሪ እሴት ወደ JMeter “አስጀማሪ” ያክሉ፡-
-Dfile.encoding=UTF-8
- JSR223 ፖስትፕሮሰሰርን ወደ ተመዝጋቢ አክል ከግሩቭ መስመር፡
prev.setDataEncoding("UTF-8")
ጽሑፍ ላክ
በጣም ሰነፍ አማራጭ። አዲስ የተፃፉ ፈተናዎችን ለማረም ተስማሚ። ወይም ቢያንስ ትንሽ ነገር መላክ ሲፈልጉ ለጉዳዮች። አማራጭ ይምረጡ የመልእክት ምንጭ - Textarea እና የመልእክቱን አካል በጽሑፍ ብሎክ ውስጥ ያስቀምጡት፡-
ፋይል ማስተላለፍ
በጣም የተለመደው አማራጭ. ለአብዛኛዎቹ ሁኔታዎች ተስማሚ። አማራጭ ይምረጡ የመልእክት ምንጭ - ከፋይል እና በመስክ ላይ ወደ መልእክቱ የሚወስደውን መንገድ ያመልክቱ ፋይል - የፋይል ስም:
ፋይልን ወደ የጽሑፍ መስክ በማስተላለፍ ላይ
በጣም ሁለገብ አማራጭ. ለአብዛኛዎቹ ሁኔታዎች ተስማሚ የሆነ + ሁለተኛ የመላክ አማራጭ በሌለበት በJMS ነጥብ-ወደ-ነጥብ ውስጥ መጠቀም ይቻላል፡
የባይት ድርድር ማለፍ
በጣም አስቸጋሪው አማራጭ. እስከ ባይት ድረስ ያሉ ጥያቄዎችን ያለማዛባት፣ ኤስኤምኤስ እና ግርግር ሳይሳሳቱ ትክክለኛ ስርጭትን ለማረጋገጥ ተስማሚ። ይህንን በነባሪ JMeter ውስጥ ማድረግ አይችሉም።
ስለዚህ ማውረድ ነበረብኝ
ዘዴው ውስጥ ተተካ extractContent(..)
መስመር፡
buffer.append(bytesMessage.getBodyLength() + " bytes received in BytesMessage");
በ
byte[] bytes = new byte[(int) bytesMessage.getBodyLength()];
bytesMessage.readBytes(bytes);
try {
buffer.append(new String(bytes, "UTF-8"));
} catch (UnsupportedEncodingException e) {
throw new RuntimeException(e);
}
እና JMeter እንደገና ገንብቷል።
የቀረው ሁለት JSR223 ናሙናዎችን ማከል ብቻ ነው። የመጀመሪያው በዘፈቀደ ባይት የያዘ DAT ፋይል ለመፍጠር ከአታሚ/ተመዝጋቢው ጥንድ በፊት ነው።
import org.apache.commons.lang3.RandomUtils;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
vars.put("PATH_TO_BYTES", "C:temprandomBytes.dat");
File RESULT_FILE = new File(vars.get("PATH_TO_BYTES"));
byte[] arr = RandomUtils.nextBytes((int)(Math.random()*10000));
try {
FileOutputStream fos = new FileOutputStream(RESULT_FILE);
fos.write(arr);
fos.close();
} catch (IOException e) {
System.out.println("file not found");
}
ሁለተኛው - በስክሪፕቱ መጨረሻ ላይ ፋይሉን ይሰርዛል-
import java.io.File;
File RESULT_FILE = new File(vars.get("PATH_TO_BYTES"));
RESULT_FILE.delete();
እና በአታሚ ውስጥ ወደ ፋይሉ ዱካ ማከልን አይርሱ፡-
እና እንዲሁም በJSR223 ማረጋገጫ ለደንበኝነት ተመዝጋቢ - የምንጭ ባይት በተቀባዩ ወረፋ ላይ ከሚደርሱት ጋር ያወዳድሩ፡
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.Arrays;
Path path = Paths.get(vars.get("PATH_TO_BYTES"), new String[0]);
byte[] originalArray = Files.readAllBytes(path);
byte[] changedArray = ctx.getPreviousResult().getResponseData();
System.out.println(changedArray.length);
if (Arrays.equals(originalArray, changedArray))
{
SampleResult.setResponseMessage("OK");
} else {
SampleResult.setSuccessful(false);
SampleResult.setResponseMessage("Comparison failed");
SampleResult.setResponseData("Bytes have changed","UTF-8");
IsSuccess=false;
}
መደምደሚያ
በየእለቱ በተግባር የምጠቀምባቸውን መልዕክቶች ወደ ወረፋ የሚልኩበት አራት መንገዶችን ገለጽኩላቸው። ይህ መረጃ ህይወትዎን ቀላል እንደሚያደርግ ተስፋ አደርጋለሁ። በመቀጠል፣ በአንደኛው ጫፍ ወረፋ፣ በሌላኛው ደግሞ የውሂብ ጎታ ወይም የፋይል ስርዓት ባለበት የልውውጡን የመሞከር ልምድ ለመንገር እቅድ አለኝ።
ጊዜዎን ይቆጥቡ. እና ስለ ትኩረትዎ እናመሰግናለን።
ምንጭ: hab.com