Awọn ila ati JMeter: pinpin pẹlu Olutẹwe ati Alabapin

Kaabo, Habr! Eyi jẹ atele si temi ti tẹlẹ atejade, ninu eyiti Emi yoo sọrọ nipa awọn aṣayan fun gbigbe awọn ifiranṣẹ sinu awọn ila ni lilo JMeter.

A n ṣe ọkọ akero data fun ile-iṣẹ apapo nla kan. Awọn ọna kika ibeere oriṣiriṣi, awọn iyipada, ipa ọna intricate. Fun idanwo, o nilo lati fi ọpọlọpọ awọn ifiranṣẹ ranṣẹ si isinyi. Pẹlu ọwọ jẹ irora ti kii ṣe gbogbo chiropractor le mu.

Awọn ila ati JMeter: pinpin pẹlu Olutẹwe ati Alabapin

Ifihan

Botilẹjẹpe Mo ni lati farada irora yii ni akọkọ. Gbogbo rẹ bẹrẹ pẹlu RFHUtil. Alagbara, ṣugbọn àìrọrùn ati ẹru: O dara, o mọ Rus.

Awọn ila ati JMeter: pinpin pẹlu Olutẹwe ati Alabapin

Ko ṣe pataki ni awọn igba miiran, ṣugbọn idinku ni imurasilẹ ni ọran ti lilo lọwọ.
Idanwo ti o rọrun ko ṣee ṣe pẹlu rẹ.

Pẹlu JMeter ohun gbogbo ti di rọrun. Lẹhin ipele akọkọ ti iṣakoso ati lilo rẹ, ireti bẹrẹ si owurọ fun idanwo idunnu.

Mo lo Atẹwe JMS ati awọn apẹẹrẹ Alabapin JMS. Ko dabi JMS Point-to-Point, bata yii dabi irọrun diẹ sii lati lo. Fun apẹẹrẹ, pẹlu Alabapin ni JMS Selector o le pato oniyipada kan, ṣugbọn pẹlu Point-to-Point o ko le (tabi ọna yii ko han gbangba).

Ngbaradi samplers

JMS Akede

  • Eto - Kọọkan Ayẹwo. Apache ṣe iṣeduro lo aṣayan yii ti awọn ila / awọn koko-ọrọ ti wa ni pato nipasẹ awọn oniyipada.
  • Ipari (ms) = 120000. Ni ọran ikuna, awọn ibeere idanwo yoo parẹ lati isinyi lẹhin iṣẹju 2.
  • Ṣe o lo ipo ifijiṣẹ ti kii duro bi? - otitọ. IBM fọwọsiIpo itẹramọṣẹ ṣe idaniloju ifipamọ igbẹkẹle ti awọn ifiranṣẹ ti a firanṣẹ ni iṣẹlẹ ti ikuna lojiji. Ati paṣipaarọ yiyara ni ipo ti ko duro. Fun awọn idi idanwo, iyara jẹ pataki diẹ sii.

Ninu Olutẹjade kọọkan Mo ṣeto ohun-ini jms kan ti Alabapin yoo lo ninu yiyan JMS. Fun ifakalẹ kọọkan, iye laileto kan ni ipilẹṣẹ ninu ero ero Awọn paramita Olumulo:

Awọn ila ati JMeter: pinpin pẹlu Olutẹwe ati Alabapin

Ni ọna yii o le ni idaniloju pe ifiranṣẹ ti o tọ ti ka.

“Òfo” ikẹhin ti Atẹjade JMS ti a ti ṣatunto tẹlẹ:

Awọn ila ati JMeter: pinpin pẹlu Olutẹwe ati Alabapin

Alabapin JMS

  • Eto - Kọọkan Ayẹwo. O dara, o loye.
  • Aago akoko (ms) = 100000. Ti ibeere naa ko ba de ni isinyi lẹhin awọn aaya 100 ti idaduro, lẹhinna nkan kan ti jẹ aṣiṣe.
  • Duro laarin awọn ayẹwo? - otitọ.

JMS Selector - oyimbo rọrun nkan. Alabapin JMS ti o kẹhin:

Awọn ila ati JMeter: pinpin pẹlu Olutẹwe ati Alabapin

Bii o ṣe le ṣe pẹlu alfabeti Cyrillic ninu awọn ifiranṣẹ ti a firanṣẹ. Ni JMeter, nipasẹ aiyipada, lẹhin kika, o han ni wiwọ. Lati yago fun eyi ati gbadun nla ati alagbara nigbagbogbo ati nibikibi, o nilo lati:

  1. Ṣafikun ariyanjiyan JVM kan si “olupilẹṣẹ” JMeter:
    -Dfile.encoding=UTF-8
  2. Ṣafikun JSR223 PostProcessor si Alabapin pẹlu laini groovy:
    prev.setDataEncoding("UTF-8")

Firanṣẹ ọrọ

Aṣayan ọlẹ julọ. Dara fun n ṣatunṣe aṣiṣe awọn idanwo kikọ tuntun. Tabi fun awọn ọran nigbati o nilo lati firanṣẹ o kere ju nkan kekere. Yan aṣayan Orisun ifiranṣẹ - Textarea ki o si fi ara ti ifiranṣẹ naa sinu idina ọrọ kan:

Awọn ila ati JMeter: pinpin pẹlu Olutẹwe ati Alabapin

Gbigbe faili kan

Aṣayan ti o wọpọ julọ. Dara fun julọ awọn oju iṣẹlẹ. Yan aṣayan Orisun ifiranṣẹ - Lati faili ati tọka ọna si ifiranṣẹ ni aaye Faili - Orukọ faili:

Awọn ila ati JMeter: pinpin pẹlu Olutẹwe ati Alabapin

Gbigbe faili lọ si aaye ọrọ

Aṣayan ti o pọ julọ. Dara fun ọpọlọpọ awọn oju iṣẹlẹ + le ṣee lo ni Ojuami-si-Point JMS nibiti ko si aṣayan fifiranṣẹ keji:

Awọn ila ati JMeter: pinpin pẹlu Olutẹwe ati Alabapin

Ran a baiti orun

Aṣayan ti o nira julọ. Dara fun ṣayẹwo gbigbe gbigbe deede ti awọn ibeere si isalẹ si baiti, laisi ipalọlọ, SMS ati rudurudu. Iwọ kii yoo ni anfani lati ṣe eyi ni aiyipada JMeter. nibi Mo ti sọ pato nipa eyi.

Nitorina ni mo ni lati gba lati ayelujara awọn orisun ki o si yipada koodu Alabapin JMS.

Rọpo ni ọna extractContent(..) ila:

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

lori:

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

ati tun JMeter ṣe.

Gbogbo ohun ti o ku ni lati ṣafikun tọkọtaya JSR223 Awọn ayẹwo. Akoko wa niwaju Olutẹwe/ Alabapin bata lati ṣẹda faili DAT ti o ni awọn baiti lairotẹlẹ ninu:

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

Awọn keji - ni opin ti awọn akosile, pa awọn faili:

import java.io.File;

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

Maṣe gbagbe lati ṣafikun ọna si faili ni Olutẹjade:

Awọn ila ati JMeter: pinpin pẹlu Olutẹwe ati Alabapin

Ati ayẹwo ni JSR223 Ijẹri fun Alabapin - ṣe afiwe awọn baiti orisun pẹlu awọn ti o de ni isinyi olugba:

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

ipari

Mo ṣe apejuwe awọn ọna mẹrin lati firanṣẹ awọn ifiranṣẹ si awọn ila, eyiti Mo lo ni gbogbo ọjọ ni iṣe. Mo nireti pe alaye yii jẹ ki igbesi aye rẹ rọrun. Ni ilọsiwaju, Mo gbero lati sọrọ nipa iriri mi ti idanwo paṣipaarọ kan nibiti isinyi wa ni opin kan ati data data tabi eto faili ni ekeji.

Fi akoko rẹ pamọ. Ati ki o ṣeun fun akiyesi rẹ.

Awọn ila ati JMeter: pinpin pẹlu Olutẹwe ati Alabapin

orisun: www.habr.com

Fi ọrọìwòye kun