2015-12-01 30 views
2

我在ObjectA中提取會話變量,並想將它傳遞給ObjectB,實現此目的的最佳方法是什麼?如何在Gatling中將會話變量從一個對象傳遞給另一個對象?

object ObjectA { 
    val foo = exec(jsfPost("Request1", "/something.xhtml") 
     .formParam("SUBMIT", "1") 
     .check(regex("""Count:([^:]*),""").saveAs("Count")) 
     ) 
     .pause(1) 
     .exec { session => 
      val Count = session("Count").as[String].toInt 
      val GroupName = SomeCustomFunc(Count) 
     } 
     .exec(ObjectB.bar) 
} 

object ObjectB{  
    val bar = group(GroupName){ 
     myChain 
    } 
} 

很確定我會在看到答案後感到很蠢,但到目前爲止還沒有設法使這個工作。

答:正如斯蒂芬建議通過會議工作得很好:

object ObjectA { 
    val foo = exec(jsfPost("Request1", "/something.xhtml") 
     .formParam("SUBMIT", "1") 
     .check(regex("""Count:([^:]*),""").saveAs("Count")) 
     ) 
     .pause(1) 
     .exec(session => session.set("GroupName", SomeCustomFunc(session("Count").as[String].toInt))) 
     .exec(ObjectB.bar) 
} 

object ObjectB{  
    val bar = group("${GroupName}"){ 
     myChain 
    } 
} 

回答

2

您可以選擇存儲組名用戶的在你的exec(功能)會話,以便您可以在以後獲取它(加特林EL或功能)。

相關問題