Mela le JMeter: ho arolelana le Mohatisi le Ngoliso

Lumela, Habr! Ena ke tatelano ea ka phatlalatso e fetileng, moo ke tla bua ka likhetho tsa ho beha melaetsa meleng e sebelisang JMeter.

Re etsetsa khamphani e kholo ea federal libese tsa data. Mefuta e fapaneng ea likopo, liphetoho, litsela tse rarahaneng. Bakeng sa tlhahlobo, o hloka ho romella melaetsa e mengata moleng. Ka letsoho ke bohloko boo e seng chiropractor e 'ngoe le e' ngoe e ka sebetsanang le eona.

Mela le JMeter: ho arolelana le Mohatisi le Ngoliso

Selelekela

Le hoja ke ile ka tlameha ho mamella bohloko bona qalong. Tsohle li qalile ka RFHUtil. E matla, empa e sa hlaka ebile e tšosa: U tseba Rus.

Mela le JMeter: ho arolelana le Mohatisi le Ngoliso

E bohlokoa maemong a mang, empa e fokotseha butle-butle haeba e sebelisoa ka mafolofolo.
Teko e bonolo ha e khonehe ka eona.

Ka JMeter tsohle li se li le bonolo. Kamora mohato oa pele oa ho ipabola le ho o tloaela, tšepo e ile ea qala ho hlaha bakeng sa teko e thabisang.

Ke sebelisa lisampole tsa JMS Publisher le JMS Subscriber ka mafolofolo. Ho fapana le JMS Point-to-Point, para ena e ne e bonahala e le bonolo ho e sebelisa. Mohlala, ka Subscriber ho JMS Selector o ka hlakisa phetoho, empa ka Point-to-Point u ke ke ua khona (kapa mokhoa ona ha o totobetse haholo).

Ho lokisa li-samplers

Mohatisi oa JMS

  • Seta - Mohlala o mong le o mong. Apache e khothalletsa sebelisa khetho ena haeba mela/lihlooho li hlalositsoe ka mefuta e fapaneng.
  • Ho felloa ke nako (ms) = 120000. Haeba ho hlōleha, likōpo tsa teko li tla nyamela moleng ka mor'a metsotso ea 2.
  • Sebelisa mokhoa o sa khaotseng oa ho tlisa? - nnete. IBM ea lumelamokhoa oo o phehellang o tiisa paballo e tšepahalang ea melaetsa e fetisoang ha ho ka etsahala hore ho hlolehe ka tšohanyetso. Le phapanyetsano e potlakileng ka mokhoa o sa tsitsang. Bakeng sa merero ea tlhahlobo, lebelo le bohlokoa ho feta.

Ho Mohatisi e mong le e mong ke behile thepa ea jms eo Moreri a tla e sebelisa ho Sekhetho sa JMS. Bakeng sa tlhahiso e 'ngoe le e 'ngoe, boleng bo sa reroang bo hlahisoa karolong ea leano la tlhahlobo ea User Parameters:

Mela le JMeter: ho arolelana le Mohatisi le Ngoliso

Ka tsela ena u ka kholiseha hore molaetsa o nepahetseng oa baloa.

"Lekhetlo" la ho qetela la Mohatisi oa JMS ea lokiselitsoeng esale pele:

Mela le JMeter: ho arolelana le Mohatisi le Ngoliso

Mongolisi oa JMS

  • Seta - Mohlala o mong le o mong. Be, ua utloisisa.
  • Nako ea nako (ms) = 100000. Haeba kopo e sa fihle moleng ka mor'a metsotsoana e 100 ea ho leta, ho na le phoso e itseng.
  • Emisa pakeng tsa disampole? - nnete.

JMS Selector - e bonolo haholo ntho. Mongolisi oa ho qetela oa JMS:

Mela le JMeter: ho arolelana le Mohatisi le Ngoliso

Mokhoa oa ho sebetsana le alfabeta ea Cyrillic melaetsa e fetisitsoeng. Ho JMeter, ka ho sa feleng, ka mor'a ho hlahloba liphoso, e hlahisoa ka mokhoa o khopameng. Ho qoba sena le ho natefeloa ke tse kholo le tse matla kamehla le hohle, o hloka ho:

  1. Kenya khang ea JVM ho "launcher" ea JMeter:
    -Dfile.encoding=UTF-8
  2. Kenya JSR223 PostProcessor ho Subscriber ka mohala oa groovy:
    prev.setDataEncoding("UTF-8")

Romela mongolo

Khetho ea botsoa. E loketse ho lokisa liteko tse sa tsoa ngoloa. Kapa bakeng sa linyeoe ha u hloka ho romela bonyane ntho e nyenyane. Khetha khetho Mohloli oa molaetsa - Textarea ebe o beha 'mele oa molaetsa ka har'a boloko ba mongolo:

Mela le JMeter: ho arolelana le Mohatisi le Ngoliso

Phetiso ea faele

Khetho e tloaelehileng ka ho fetisisa. E loketse maemo a mangata. Khetha khetho Mohloli oa molaetsa - Ho tsoa faeleng mme o supe tsela e yang molaetseng o tšimong Faele - Filename:

Mela le JMeter: ho arolelana le Mohatisi le Ngoliso

Ho fetisetsa faele sebakeng sa mongolo

Khetho e fapaneng ka ho fetisisa. E loketse maemo a mangata + e ka sebelisoa ho JMS Point-to-Point moo ho se nang khetho ea bobeli ea ho romella:

Mela le JMeter: ho arolelana le Mohatisi le Ngoliso

Ho fetisa lethathamo la li-byte

Khetho e thata ka ho fetisisa. E loketse ho lekola phetisetso e nepahetseng ea likopo ho theosa le li-byte, ntle le ho sotha, SMS le pherekano. U ke ke ua khona ho etsa sena ho JMeter ea kamehla. mona Ka sebele ke ile ka bolelloa ka sena.

Kahoo ke ile ka tlameha ho khoasolla mehloli le ho fetola khoutu Mongolisi oa JMS.

Ho nkeloa sebaka ke mokhoa extractContent(..) mola:

buffer.append(bytesMessage.getBodyLength() + " bytes received in BytesMessage");

ho

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);
}

mme e hahiloe bocha JMeter.

Ho setseng ke ho kenyelletsa li-Samplers tse 'maloa tsa JSR223. Ea pele e ka pele ho sehlopha sa Mohatisi/Mongolisi ho etsa faele ea DAT e nang le li-byte tse sa reroang:

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");
        }

Ea bobeli - qetellong ea sengoloa, e hlakola faele:

import java.io.File;

File RESULT_FILE = new File(vars.get("PATH_TO_BYTES"));
RESULT_FILE.delete();

Mme u seke oa lebala ho kenyelletsa tsela ea faele ho Mohatisi:

Mela le JMeter: ho arolelana le Mohatisi le Ngoliso

Hape le cheke ho JSR223 Assertion for Subscriber - bapisa li-byte tsa mohloli le tse fihlang moleng oa moamoheli:

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;
	}

fihlela qeto e

Ke hlalositse mekhoa e mene ea ho romella melaetsa ho mela, eo ke e sebelisang letsatsi le leng le le leng ha ke ntse ke sebetsa. Ke tšepa hore boitsebiso bona bo nolofaletsa bophelo ba hau. Ha ke tsoela pele, ke rera ho bua ka phihlelo ea ka ea ho hlahloba phapanyetsano moo ho nang le mokoloko ka lehlakoreng le leng le database kapa tsamaiso ea faele ka lehlakoreng le leng.

Boloka nako ea hau. 'Me ke leboha tlhokomelo ea hau.

Mela le JMeter: ho arolelana le Mohatisi le Ngoliso

Source: www.habr.com

Eketsa ka tlhaloso