2017-11-07 8 views
1

ログインURLを10回リクエストしたいと思っています。私はそれをこのようでした:空手ループスルーリクエスト

Background: 
    * def loginAttempt = 
    """ 
     function(times){ 
     for(i=0;i<times;i++){ 
      karate.log('Run test round: '+(i+1)); 
      karate.call('classpath:init/login.feature'); 
     } 
     java.lang.Thread.sleep(1*1000); 
     } 
    """ 
    Scenario: Correct 
    * call loginAttempt 10 

をそして、これはlogin.featureです:

Feature: register a user 
    Scenario: call register for a user 
    Given url urlBase + loginUrl 
    And request 
    """ 
    { 
     "username": #(username), 
     "password": #(password) 
    } 
    """ 
    When method post 

直接ループにlogin.featureにコードを配置する方法は?

+0

私の以前の回答の1つを受け入れるとは思わない、してください。 –

+0

@PeterThomas 私は同僚とテストする時間があります。テストしたすべての回答を受け入れました。私はあなたの答えを今upvoteで評価しました。 –

答えて

1

答えはできません。空手の一連のフィーチャステップを再利用できる唯一の方法は、それを別のフィーチャファイルに移動することです。なぜあなたはこれを問題として見るのか分かりません。他のテストからのログインを再利用できるので、これは実際には良いことです。

すべての機能を1つの機能にまとめたい場合は、Javaでやりたいことを書いてから、1つの機能ファイルからループで呼び出すことができます。

関連する問題