Mhoro, Habr! Iyi inoteedzana neni
Tiri kugadzira data bhazi rekambani huru yemubatanidzwa. Mafomati akasiyana ekukumbira, shanduko, yakaoma nzira. Kuti uedze, unofanirwa kutumira mameseji akawanda kumutsara. Manually kurwadziwa kusingaite wese chiropractor anogona kubata.
Nhanganyaya
Kunyange zvazvo ndaifanira kutsungirira kurwadziwa uku pakutanga. Izvo zvese zvakatanga neRFHUtil. Ane simba, asi anonetsa uye anotyisa: Zvakanaka, iwe unoziva Rus.
Inonyanya kukosha mune zvimwe zviitiko, asi zvishoma nezvishoma kuderera kana kushandiswa kushanda.
Kuedza kwakaringana hakubviri nazvo.
NeJMeter zvese zvave nyore. Mushure mechikamu chekutanga chekuziva nekujaira, tariro yakatanga kubuda yekuyedzwa kwemufaro.
Ini ndinoshingairira kushandisa JMS Publisher uye JMS Subscriber samplers. Kusiyana neJMS Point-to-Point, vaviri ava vairatidza nyore kushandisa. Semuenzaniso, ne Subscriber muJMS Selector unogona kutsanangura shanduko, asi nePoint-to-Point haugone (kana nzira iyi haina kunyatsojeka).
Kugadzirira samplers
JMS Publisher
- Setup - Imwe neimwe Sample. Apache
inokurudzira shandisa sarudzo iyi kana mitsetse/misoro yatsanangurwa kuburikidza nezvinosiyana. - Kupera (ms) = 120000. Muchiitiko chekukundikana, zvikumbiro zvekuedza zvichanyangarika kubva pamutsara mushure memaminitsi maviri.
- Shandisa isingarambe ichiendesa nzira? - chokwadi. IBM
inobvuma iyo inopfuurira modhi inovimbisa kuchengetedzwa kwakavimbika kwemameseji anofambiswa muchiitiko chekutadza kamwe kamwe. Uye nekukurumidza kuchinjana mune isingarambe ichiita maitiro. Nezvinangwa zvekuyedza, kumhanya kunonyanya kukosha.
MuMuparidzi wega wega ndinoisa jms pfuma iyo Munyoreri achashandisa muJMS Selector. Pakutumira kwega kwega, kukosha kwakasarudzika kunogadzirwa muMushandisi Parameters bvunzo chirongwa chinhu:
Nenzira iyi unogona kuva nechokwadi chokuti meseji yakarurama inoverengwa.
Yekupedzisira "isina chinhu" yeyakafanogadzirirwa JMS Publisher:
Munyoreri weJMS
- Setup - Imwe neimwe Sample. Zvakanaka, unonzwisisa.
- Timeout (ms) = 100000. Kana chikumbiro chikasasvika mumutsara mushure memasekonzi 100 ekumirira, ipapo pane chakashata.
- Mira pakati pemasampuli? - chokwadi.
JMS Selector - yakanakira chaizvo
Maitiro ekuita neCyrillic alphabet mune inofambiswa mameseji. MuJMeter, nekusarudzika, mushure mekuverengera, inoratidzwa zvisina kururama. Kuti udzivise izvi uye unakirwe nehukuru uye hune simba nguva dzose uye kwese kwese, unofanirwa:
- Wedzera nharo yeJVM kuJMeter "launcher":
-Dfile.encoding=UTF-8
- Wedzera JSR223 PostProcessor kune Subscriber ine groovy line:
prev.setDataEncoding("UTF-8")
Send text
Iyo ine usimbe sarudzo. Inokodzera kugadzirisa bvunzo dzichangobva kunyorwa. Kana kumakesi kana iwe uchida kutumira kanenge chinhu chidiki. Sarudza sarudzo Message source - Textarea uye isa muviri wemeseji mubhokisi remavara:
Kuendeswa kwefaira
Sarudzo yakajairika. Inokodzera kune akawanda mascenario. Sarudza sarudzo Message source - Kubva pafaira uye ratidza nzira yeshoko riri mumunda Faira - Zita refaira:
Kuendesa faira kundima yemavara
Sarudzo inosarudzika. Inokodzera akawanda mamiriro + anogona kushandiswa muJMS Point-to-Point uko pasina yechipiri kutumira sarudzo:
Kupfuura byte array
Iyo yakanyanya kuoma sarudzo. Inokodzera kutarisisa kutadza kwakaringana kuendesa zvikumbiro pasi kune byte, pasina kukanganisa, SMS uye kukanganisa. Iwe haugone kuita izvi mune yakasarudzika JMeter.
Saka ndaifanira kudhaunirodha
Yakatsiviwa nenzira extractContent(..)
mutsetse:
buffer.append(bytesMessage.getBodyLength() + " bytes received in BytesMessage");
on:
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);
}
uye kuvakazve JMeter.
Chasara ndechekuwedzera akati wandei eJSR223 Samplers. Yekutanga iri pamberi peMuparidzi / Munyoreri vaviri kuti vagadzire faira reDAT rine mabhaiti asina kurongeka:
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");
}
Yechipiri - pakupera kwechinyorwa, inodzima faira:
import java.io.File;
File RESULT_FILE = new File(vars.get("PATH_TO_BYTES"));
RESULT_FILE.delete();
Uye usakanganwa kuwedzera nzira kune iyo faira muPublisher:
Uye zvakare cheki muJSR223 Assertion yeMunyoreri - enzanisa kwainobva bytes neaya anosvika mumutsara wemugamuchiri:
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;
}
mhedziso
Ndakatsanangura nzira ina dzekutumira mameseji kumitsetse, yandinoshandisa mazuva ese mukuita. Ndinovimba ruzivo urwu rwunorerutsa hupenyu hwako. Mukuenderera mberi, ndinoronga kutaura nezve ruzivo rwangu rwekuedza kuchinjana uko kune mutsara kune imwe mugumo uye database kana faira system kune imwe.
Chengetedza nguva yako. Uye ndinokutendai nekuteerera kwenyu.
Source: www.habr.com