2017-10-29 6 views
0

私はDBから読み込んでデータをアサートするテストをしようとしています 私はJDBCリクエストとJSR223サンプラー+ Jsr223アサーションを作成します。サンプラーの 私はsensativity_resultsという変数を作成しました。 と私はアサーションにそれを渡したいと思います。 また、私がテスト」の結果を印刷すると呼ばれる別のサンプラーを作成し、私ははJmeter - Groovyでサンプラーのアサーションに変数を渡すことができません

vars.putObject("sensativity_results", sensativity_results); 

を使用して、アサーションに、私はそれを呼び出すと、それを印刷しようと、 問題はJMeterのがちょうど主張を認めていないということです、 sensativity_results」とJMeterはちょうども

int actual_sensativity() 
{ 
    float Actual_sensativity; 
    int loop_num = vars.get("Loop_Number") as int; 
    int conversion_sense = vars.get("Conv_sens") as int; 
    int actual_conversion = vars.get("Conv_numbers_1") as int; 
    Actual_sensativity = (float) (actual_conversion/loop_num)*100; 
    System.out.println("************** Actual_sensativity in %: " + Actual_sensativity); 
    System.out.println("**conversion_sensativity: " + conversion_sense); 
    System.out.println("**actual_conversion: " + actual_conversion); 
    System.out.println("**loop number: " + loop_num); 
    return Actual_sensativity; 

} 




int sensativity_results; 
sensativity_results = actual_sensativity(); 
vars.putObject("sensativity_results", sensativity_results); 
System.out.println("sensativity_results: " + sensativity_results); 

試験計画は、可能な第1のサンプラーでの感度の結果を印刷し、そしてだけで移動しないで、この工程まで期待通りに実行し、エラーなしで停止し、それを実行して通過しません誰か助言してください?

enter image description here enter image description here

enter image description here

enter image description here

enter image description here

答えて

0

だけ入れvars.put( "sensativity_results"、sensativity_results)。 、それはあなたの後、私は次のようにそれを保存することをお勧めにStringとしてこのsensativity_results変数を使用すると仮定すると、問題に

0

を解く:そうでなければあなたは${sensativity_results}ようにそれを使用しようとする試みにClassCastException: java.lang.Integer cannot be cast to java.lang.Stringエラーになります

vars.put("sensativity_results", String.valueOf(sensativity_results)) 

:非文字列変数にアクセスする

別の方法は次のように(JMeter 3.1以降で利用可能)__groovy()関数を使用することだろう

関連する問題