2016-12-05 1 views
3

여러 시나리오를 병렬 실행하는 것이 가장 좋은 방법은 무엇입니까? 예를 들어 30 % 사용자가 시나리오 1을 실행하고 70 % 사용자는 시나리오 2를 실행합니다.여러 시나리오의 병렬 실행

아래 코드가 올바른지, 아니면 REST 호출이 연속적으로 실행되는 시나리오를 갖는 것이 더 좋습니까?

class MySimulation extends Simulation { 

    val userIdsData = csv(userIdsCSV).queue 



    ... 



    val scenario1 = scenario("Scenario 1") 

    .feed(userIdsData) 

    .get(...) 



    val scenario2 = scenario("Scenario 2") 

    .feed(userIdsData) 

    .get(...) 

    .post(...) 



    setUp(scenario1.inject(rampUsers(30) over (ramp seconds)) 

     .protocols(HttpConfig.value(baseURL)), 

    scenario2.inject(rampUsers(70) over (ramp seconds)) 

     .protocols(HttpConfig.value(baseURL)) 

) 

} 

답변

3

무엇을 하시든지 절대적으로 좋습니다.

설치를 실행하는 방식에 따라 요청이 병렬로 실행되고 있음을 알 수 있습니다.

+1

시나리오가 "시나리오 ("시나리오 이름 ")로 구성되어 있습니까? exec (Search.search, Browse.browse, Edit.edit) '병렬로 실행 하시겠습니까? 또는 세 가지 구성 요소가 순차적으로 실행됩니까? – Sergio

+1

@Sergio 연속적으로 실행되지 않고 병렬로 실행됩니다. –

+0

감사합니다. 위의 관용구를 병렬 실행에 사용해야하는 경우에는 여전히 혼란스럽고, 다음과 같이 별도의 "사용자"를 사용해야하는 경우가 있습니다. setUp (users.inject (atOnceUsers (1), admin.inject (atOnceUsers (1))) 프로토콜 (httpConf))'당신이 명확히 할 수 있습니까? – Sergio

3

개틀링은 SetUp 내의 각 항목을 병렬로 실행합니다. 여기서 시나리오에 정의 된 각 항목은 sequentially으로 실행됩니다. 링크에서 알 수 있듯이

사용자 삽입 프로필의 정의는 삽입 방법으로 수행됩니다. 이 메소드는 순차적으로 처리 될 단계 단계의 인수를 인수로 취합니다.

위의 코드는 scenario01 ramp to 30 over x secondsscenario02 ramp to 70 over y seconds을 병렬로 실행합니다.

관련 문제