我正在设置一个带有负载的性能测试我已经设置了100个GET请求样本请求,如下所示:
http://34.202.108.112:8080/adserver/html5/inwapads/?sleepAfter=0&adFormat=preappvideo&ak=c39ca252e3605ca216f05d4c6ed18b08&version=1.0&fullscreen=1&vdo=1&requester=dashbid&channelType=site&pageURL=http%3A%2F%2Fibtimes.co.uk&siteName=ibtimes.co.uk&refURL=ibtimes.co.uk&*ipAddress=212.232.34.134*&ua=Mozilla%2F5.0+%28Linux%3B+Android+5.0.1%3B+SCH-R970+Build%2FLRX22C%29+AppleWebKit%2F537.36+%28KHTML%2C+like+Gecko%29+Chrome%2F47.0.2526.83+Mobile+Safari%2F537.36&cb=1477379953087252374&target_params=latlong=57.6198/39.8554|geoType=1&size=x&dnt=0&output=vast;vdocookieid=af7d5dc67d7cd4e9f4a56f09d0b1046b 2351daf4-3fb3-4d5c-890c-c32672e036df 35c720f4-5bb3-45f3-b5b1-be9fcd5f2f5d
所有请求集都有不同的ipAddress
,我想为每个请求添加X-Forwarded-For
请求标头,其请求值与ipAddress
相同。
任何建议都会有很大的帮助。
答案 0 :(得分:2)
如果您从CSV文件中获取这些IP地址,则只需添加HTTP Header Manager并将其配置为:
如果您有100个具有硬编码IP地址的请求(即来自录制)仍然可以,但您需要执行一些脚本
将以下代码放入JSR223 PreProcessor“脚本”区域
import org.apache.jmeter.protocol.http.control.Header
def address = sampler.getArguments().getArgumentsAsMap().get("ipAddress")
def headerManager = sampler.getHeaderManager()
headerManager.removeHeaderNamed("X-Forwarded-For")
headerManager.add(new Header("X-Forwarded-For", address))
以上代码将查找ipAddress
请求参数,如果找到它,则会在请求中添加相关的X-Forwarded-For
标头