実際のテストの例
目標:気象データ都市を取得します:
最初のステップ:都市の都市コード取得する送信要求
http://toy1.weather.com.cn/search?cityname=上海
上海の都市コードなどの要求に対する応答から得ました:
上海エリアコード101 020 100
上海動物園は、地域コードです:10102010016A
ステップ2:都市の気象データを取得することができhttp://www.weather.com.cn/weather2d/101020100.shtml:にリクエストを送ります
ステップ1:スレッドグループを作成します。
すべてのタスクがスレッドによって処理されなければならないのJMeterスレッドグループを作成しなければならない、すべてのタスクは、以下のスレッドグループ内に作成する必要があります。
ステップ2:HTTPリクエストを作成します。
http://toy1.weather.com.cn/search?cityname=上海:たとえば、私は、httpリクエストのGetメソッドを送信したいです
だから、次の図に記入します
第三段階は、HTTPヘッドマネージャーを追加することです
新しいHTTPリクエストに応じてステップを選択します。右、新しいHTTPヘッダマネージャを作成します。ヘッダを追加します。
ステップ4:ビューの追加は、ツリーの結果
ビューの結果ツリーは、操作の結果を表示するために使用されます
ステップ5:結果を確認するテストを実行します
ここで。我々は、正常稼働しています。
ステップ6:アサーションとアサートの結果を追加します
HTTPリクエストを選択し、右の追加 - >アサーション - 。>応答アサーションをテストするためにパターンを追加しました
そして、結果アサーションの実行を表示するAssetion結果を追加します。
スレッドグループの右の[追加]を選択します - >リスナー - >アサーション結果。
运行后, 如果HTTP Response中没有包含期待的字符串。 那么test 就会Fail.
第7步: 使用用户自定义变量
我们还可以在Jmeter中定义变量。 比如我定义一个变量叫 city. 使用它的时候用 ${city}
添加一个 User Defined Variables. 选中Thread Group: 右键 Add -> Config Element -> User Defined Variables.
我们添加一个变量: city
然后在Http Request中使用这个变量
第八步:关联
所谓关联, 就是第二个Requst, 使用第一个Request中的数据
我们需要在第一个Http Requst 中新建一个正则表达式,把Response的值提取到变量中,提供给别的Http Request 使用
选择第一个Http Request, 右键 Add -> Post Processors -> Regular Expresstion Extractor
现在新建第二个Http Request, 发送到: http://www.weather.com.cn/weather2d/${citycode}.html
${citycode} 中的数据, 是从Regular Expression Extractor 中取来的
到这, 脚本就全部写好了, 运行下,看下最终结果