Yandex坦克发布数据

 手机用户2502933647 发布于 2023-01-18 18:10

我想使用yandex tank测试我的Web应用程序,我想测试注册,所以我需要发送这样的请求

标头

POST /registration HTTP/1.1
Host: localhost:8080
Connection: keep-alive
Content-Length: 30
Cache-Control: max-age=0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
Origin: http://localhost:8080
User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/33.0.1750.146 Safari/537.36
Content-Type: application/x-www-form-urlencoded
Referer: http://localhost:8080/registration
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8,ru;q=0.6
Cookie: csrftoken=XJ3oheJb0SndHfNAH2lSV2AtKNxxuXdv; JSESSIONID=igq9ejgl10jirr4t73mpjblp

表格数据

login=abracadbra&password=brar

是否可以使用不同的登录字段发送这种请求?

1 个回答
  • 是的,有可能,对于POST请求,您应该使用请求样式的弹药文件,请参见http://yandextank.readthedocs.org/en/latest/tutorial.html#request-style

    您可以将ammo文件指定为命令行参数,也可以将其放在[phantom]节的tank .ini文件中。

    请记住,使用phantom作为负载生成器是不可能执行基于方案的测试的,因此您应该提前生成所有必要的数据以用于请求。Yandex-tank只会根据所需的负载方案发送它。

    我不确定CSRF保护在您的情况下如何工作,并且如果它不允许多个请求重复使用会话和csrftoken(并且此参数对于注册请求是必需的),则需要以某种方式获取有效的Cookie每个生成弹药的请求。在这种情况下,建议您切换到基于场景的工具,即jmeter。您也可以将jmeter用作yandex-tank的负载生成器,请参见http://yandextank.readthedocs.org/en/latest/configuration.html#jmeter

    如果您可能将同一Cookie重复使用以进行多次注册,则ammo文件将如下所示:

    649 tag1
    POST /registration HTTP/1.1
    Host: localhost:8080
    Connection: keep-alive
    Content-Length: 30
    Cache-Control: max-age=0
    Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
    Origin: http://localhost:8080
    User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/33.0.1750.146 Safari/537.36
    Content-Type: application/x-www-form-urlencoded
    Referer: http://localhost:8080/registration
    Accept-Encoding: gzip,deflate,sdch
    Accept-Language: en-US,en;q=0.8,ru;q=0.6
    Cookie: csrftoken=XJ3oheJb0SndHfNAH2lSV2AtKNxxuXdv; JSESSIONID=igq9ejgl10jirr4t73mpjblp
    
    login=abracadbra&password=brar
    
    646 tag2
    POST /registration HTTP/1.1
    Host: localhost:8080
    Connection: keep-alive
    Content-Length: 27
    Cache-Control: max-age=0
    Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
    Origin: http://localhost:8080
    User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/33.0.1750.146 Safari/537.36
    Content-Type: application/x-www-form-urlencoded
    Referer: http://localhost:8080/registration
    Accept-Encoding: gzip,deflate,sdch
    Accept-Language: en-US,en;q=0.8,ru;q=0.6
    Cookie: csrftoken=XJ3oheJb0SndHfNAH2lSV2AtKNxxuXdv; JSESSIONID=igq9ejgl10jirr4t73mpjblp
    
    login=sample2&password=brar
    
    ...
    

    2023-01-18 18:12 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有