nGrinder 성능 도구 원본 설치 배치 과정
nGrinder 는 일련의 기계 에서 Groovy 나 Jython 테스트 스 크 립 트 를 실행 하 는 응용 프로그램 으로 내부 엔진 은 Grinder 를 기반 으로 합 니 다.nGrinder 는 contrller 와 에이전트 를 사용 하여 각각 Grinder 의 console 과 에이전트 를 포장 하고 여러 가지 기능 을 확장 하여 병행 테스트 를 지원 할 수 있 도록 합 니 다.
nGrinder 는 두 개의 주요 구성 요소 로 구성 되 어 있 습 니 다.
테스트 프로 세 스 를 조율 하 다.
테스트 의 통계 결 과 를 정리 하고 표시 하 다.
사용자 로 하여 금 스 크 립 트 를 만 들 고 수정 하 게 합 니 다.
대상 기기 의 시스템 성능 모니터링(예:CPU/MEMORY/네트워크 카드/디스크)
머리말
다운로드 주소:https://github.com/naver/ngrinder/releases
https://github.com/naver/ngrinder.git방식
로 컬 설정
zip 패 키 지 를 다운로드 하여 설치 하 는 것 을 보 여 줍 니 다.
디 렉 터 리 시작 스 크 립 트 열기:
실행 이 성공 하 기 를 기다 리 면 다음 jar 패 키 지 를 로 컬 창고 에 설치 합 니 다.
4.IDEA 설정
IDEA 개발 도구 열기:
파일 을 클릭 하여 Project 가 져 오기:
클릭
Open as Project
:새 창 열기:
Maven 이 해당 하 는 jar 를 불 러 올 때 까지 기 다 립 니 다.
코드 수정:
구체 적 인 코드 는 다음 과 같다.
package org.ngrinder.perftest.service;
import org.ngrinder.infra.config.Config;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.ApplicationContext;
import org.springframework.context.ApplicationContextAware;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.EnableAspectJAutoProxy;
import org.springframework.context.annotation.Profile;
import org.springframework.scheduling.annotation.EnableScheduling;
import org.springframework.transaction.annotation.EnableTransactionManagement;
/**
* Dynamic creation of {@link PerfTestService} depending on the cluster enable or disable.
*
* @author JunHo Yoon
* @since 3.1
*/
@Configuration
@Profile("production")
@EnableScheduling
@EnableTransactionManagement
@EnableAspectJAutoProxy
public class PerfTestServiceConfig implements ApplicationContextAware {
@Autowired
private Config config;
private ApplicationContext applicationContext;
/**
* Create PerTest service depending on cluster mode.
*
* @return {@link PerfTestService}
*/
@Bean(name = "perfTestService")
public PerfTestService perfTestService() {
if (config.isClustered()) {
return applicationContext.getAutowireCapableBeanFactory().createBean(ClusteredPerfTestService.class);
} else {
return applicationContext.getAutowireCapableBeanFactory().createBean(PerfTestService.class);
}
// return applicationContext.getAutowireCapableBeanFactory().createBean(
// config.isClustered() ? ClusteredPerfTestService.class : PerfTestService.class);
}
@Override
public void setApplicationContext(ApplicationContext applicationContext) {
this.applicationContext = applicationContext;
}
}
Tomcat 다시 설정:실행 방법 선택:
선택 할 때 업데이트 실행:
JVM 시작 인 자 를 추가 하 는 것 이 좋 습 니 다:
-Xms1024m -Xmx1024m -XX:MaxPermSize=200m
메모리 이상 방지클릭 하여 확인:
시작 항목:
5.시작 검증
브 라 우 저 를 열 어 성공 여 부 를 검증 합 니 다:
http://localhost:8081/ngrinder/login
로그 인 성공:
6.원본 디 버 깅 간단 한 스 크 립 트 사용
script-sample
프로젝트 에서pom.xml
파일 증가:코드 는 다음 과 같 습 니 다:
<!-- https://mvnrepository.com/artifact/junit/junit -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
<scope>test</scope>
</dependency>
아이디어 에서 전역 검색:groovy-all
버 전 번호 보기
7.대본 작성 모방
플랫폼 을 통 해 스 크 립 트 생 성:
클릭
R HEAD
:스 크 립 트 보기:
importstatic net.grinder.script.Grinder.grinder
importstatic org.junit.Assert.*
importstatic org.hamcrest.Matchers.*
import net.grinder.plugin.http.HTTPRequest
import net.grinder.plugin.http.HTTPPluginControl
import net.grinder.script.GTest
import net.grinder.script.Grinder
import net.grinder.scriptengine.groovy.junit.GrinderRunner
import net.grinder.scriptengine.groovy.junit.annotation.BeforeProcess
import net.grinder.scriptengine.groovy.junit.annotation.BeforeThread
// import static net.grinder.util.GrinderUtils.* // You can use this if you're using nGrinder after 3.2.3
import org.junit.Before
import org.junit.BeforeClass
import org.junit.Test
import org.junit.runner.RunWith
import java.util.Date
import java.util.List
import java.util.ArrayList
importHTTPClient.Cookie
importHTTPClient.CookieModule
importHTTPClient.HTTPResponse
importHTTPClient.NVPair
/**
* A simple example using the HTTP plugin that shows the retrieval of a
* single page via HTTP.
*
* This script is automatically generated by ngrinder.
*
* @author admin
*/
@RunWith(GrinderRunner)
classTestRunner{
publicstaticGTest test
publicstaticHTTPRequest request
publicstaticNVPair[] headers = []
publicstaticNVPair[] params= []
publicstaticCookie[] cookies = []
@BeforeProcess
publicstaticvoid beforeProcess() {
HTTPPluginControl.getConnectionDefaults().timeout = 6000
test = newGTest(1, "www.baidu.com")
request = newHTTPRequest()
grinder.logger.info("before process.");
}
@BeforeThread
publicvoid beforeThread() {
test.record(this, "test")
grinder.statistics.delayReports=true;
grinder.logger.info("before thread.");
}
@Before
publicvoid before() {
request.setHeaders(headers)
cookies.each { CookieModule.addCookie(it, HTTPPluginControl.getThreadHTTPClientContext()) }
grinder.logger.info("before thread. init headers and cookies");
}
@Test
publicvoid test(){
HTTPResponse result = request.GET("https://www.baidu.com/", params)
if(result.statusCode == 301|| result.statusCode == 302) {
grinder.logger.warn("Warning. The response may not be correct. The response code was {}.", result.statusCode);
} else{
assertThat(result.statusCode, is(200));
}
}
}
스 크 립 트 복사:아이디어 에 새 스 크 립 트 만 들 기:
Groovy 스 크 립 트 선택:
이름 을 입력 하고 저장 을 클릭 하면 됩 니 다:
새 작업 이 끝 났 습 니 다.방금 스 크 립 트 를 복사 해서 방법 이름 을 수정 하 십시오.
클릭 하여 실행:
힌트 를 볼 수 있 습 니 다:
Idea
->Run->Edit Configurations->Default->Junit-> VM options
에 사용자 정의 설정 을 작성 하고 Apply 단 추 를 누 르 면 설정 을 저장 하면 유효 합 니 다.다시 클릭:
실행 결 과 는 다음 과 같 습 니 다.
이 컴퓨터 스 크 립 트 디 버 깅 에 성 공 했 습 니 다.
소결
다음 에 로 컬 매개 변수 화 와 Post 요청 을 다시 공유 합 니 다.
이상 은 성능 도구 의 nGrinder 소스 코드 설치 에 대한 상세 한 내용 입 니 다.nGrinder 소스 코드 설치 에 관 한 자 료 는 다른 관련 글 을 주목 하 십시오!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
nGrinder 성능 도구 원본 설치 배치 과정nGrinder 는 일련의 기계 에서 Groovy 나 Jython 테스트 스 크 립 트 를 실행 하 는 응용 프로그램 으로 내부 엔진 은 Grinder 를 기반 으로 합 니 다.nGrinder 는 contrller ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.