2012-10-23 3 views
2

현재 jmeter에서 시나리오를로드 분할 중입니다.
내 테스트 계획 구조가 유사한 다음과 같습니다 : 이것은 나를 위해 작동하지 않습니다로드 분할 시나리오를 만드는 방법은 무엇입니까? JMeter에서


TestPlan 
BeanShell Preprocessor (here I have below code) 

    Integer totalLoad = 0; 
    Integer searchUsers = 0; 
    Integer createUseres = 0; 

    totalLoad = Integer.parseInt (vars.get("TOTALUSERS")); 
    searchUsers = ((totalLoad/100) * 40); createUseres =((totalLoad/100) * 10); guestUsers = ((totalLoad/100) * 50); 

    vars.put("searchUsers", searchUsers.toString()); 
    vars.put("createUseres", createUseres.toString()); 
    vars.put("guestUsers", guestUsers.toString()); 

Thread group: Search (I am using ${searchUsers} in the number of Threads(users) field) 
Thread group: Create (I am using ${createUseres} in the number of Threads(users) field) 
Thread group: Guest (I am using ${guestUsers} in the number of Threads(users) field) 

.
도와 주실 수 있습니까?

답변

1

JMeter 변수는 각 스레드에 대해 로컬입니다. 따라서 전처리기에 변수를 만들면이 레벨의 다른 스레드에서 액세스 할 수 없게됩니다.

당신은 넣어 속성을 사용한다/얻을 같은 searchUsers, createUseres, guestUsers :

BeanShell이다 처리기에서 사용 props.put("guestUsers", guestUsers.toString());. 스레드 그룹의 스레드 수는 ${__P(searchUsers)}입니다.

+0

도와 주신 Andrey에게 감사드립니다. 이제 스크립트가 제대로 작동합니다. – user1767083

관련 문제