{"id":13651058,"url":"https://github.com/dperfly/fiddler2jmeter","last_synced_at":"2026-01-16T15:58:10.370Z","repository":{"id":47101316,"uuid":"260868164","full_name":"dperfly/fiddler2jmeter","owner":"dperfly","description":"JMeter脚本录制工具：将Fiddler/Charles转换为JMeter 4.0以上的脚本，并支持过滤功能     JMeter script recording tool: converts Fiddler / Charles into scripts above JMeter 4.0, and supports filtering function","archived":false,"fork":false,"pushed_at":"2022-09-13T03:29:07.000Z","size":76729,"stargazers_count":38,"open_issues_count":0,"forks_count":19,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-01-25T05:40:54.733Z","etag":null,"topics":["charles","fiddler","fiddlerscript","jmeter","jmeter-plugin"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dperfly.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2020-05-03T09:25:23.000Z","updated_at":"2023-12-06T17:13:59.000Z","dependencies_parsed_at":"2022-08-25T12:51:56.509Z","dependency_job_id":null,"html_url":"https://github.com/dperfly/fiddler2jmeter","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dperfly%2Ffiddler2jmeter","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dperfly%2Ffiddler2jmeter/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dperfly%2Ffiddler2jmeter/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dperfly%2Ffiddler2jmeter/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dperfly","download_url":"https://codeload.github.com/dperfly/fiddler2jmeter/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250333852,"owners_count":21413468,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["charles","fiddler","fiddlerscript","jmeter","jmeter-plugin"],"created_at":"2024-08-02T02:00:44.486Z","updated_at":"2026-01-16T15:58:10.359Z","avatar_url":"https://github.com/dperfly.png","language":"Python","readme":"# Fiddler 或 Charles 文件转换为 Jmeter4.0以上脚本\n[English](README_en.md)  \n\n![GitHub License](https://img.shields.io/github/license/dperfly/fiddler2jmeter)\n[![Release](https://img.shields.io/github/v/release/dperfly/fiddler2jmeter.svg?style=flat-square)](https://github.com/dperfly/fiddler2jmeter/releases)\n![GitHub top language](https://img.shields.io/github/languages/top/dperfly/fiddler2jmeter)\n[![GitHub issues](https://img.shields.io/github/issues/dperfly/fiddler2jmeter)](https://github.com/dperfly/xmind2testcase/issues)\n![Gem Total Downloads](https://img.shields.io/github/downloads/dperfly/fiddler2jmeter/total)\n\n![Image text](.resources/img/logo.png)\u003cbr\u003e\n解决脚本录制问题,可以将Fiddler或Charles转换成对应的Jmeter脚本,实现部分内容的参数化配置，通过修改部分参数或参数化可以对http协议的接口进行自动化测试或简单的压力测试\u003cbr\u003e\n\n\n### 下载地址\n【FiddlerorCharles2jmeter.exe】1.1.0 可执行文件[下载地址](https://github.com/dperfly/fiddler2jmeter/releases/tag/1.1.0)\n\n### GUI页面操作方式\n1.1 打开Fiddler/Charles录制请求\u003cbr\u003e\n1.1.1 Fiddler录制\u003cbr\u003e\n![Image text](.resources/img/img_01.jpg)\u003cbr\u003e\n1.1.2 Charles录制\u003cbr\u003e\n![Image text](.resources/img/img_08.jpg)\u003cbr\u003e\n1.2 将需要的HTTP请求导出\u003cbr\u003e\n1.2.1 Fiddler导出为saz格式\u003cbr\u003e\n![Image text](.resources/img/img_02.jpg)\u003cbr\u003e\n1.2.1 Charles导出为chlsj格式（JSON Session File）\u003cbr\u003e\n![Image text](.resources/img/img_07.png)\u003cbr\u003e\n1.3 执行脚本\u003cbr\u003e\n1.3.1 参数说明\u003cbr\u003e\n1.3.1.1 需要导入的文件：saz文件（Fiddler文件）,chlsj(Charles文件)\u003cbr\u003e\n1.3.1.2 需要到处的文件：jmx文件（生成的jmeter脚本文件）\u003cbr\u003e\n1.3.1.3 过滤Http请求：不满足host则过滤，为正则匹配方式\u003cbr\u003e\n1.3.1.4 过滤Http请求，通过/path部分，满足则过滤，为正则匹配方式\u003cbr\u003e\n1.3.2 页面效果\u003cbr\u003e\n![Image text](.resources/img/img_03.jpg)\u003cbr\u003e\n1.3.3 结果展示\u003cbr\u003e\n![Image text](.resources/img/img_04.jpg)\u003cbr\u003e\n1.4 jmeter运行结果\u003cbr\u003e\n![Image text](.resources/img/img_05.jpg)\u003cbr\u003e\n## No-GUI 运行方式\n```text\nF:\\\u003epython FiddlerCharles2Jmeter.py -h  \n或 \nF:\\\u003e FiddlerCharles2Jmeter.exe -h\n\n\nUsage: Generate JMeter script command example:\n\n        FiddlerCharles2Jmeter.py -n -i fiddler/charles_file_path -o jmeter_script_file_path --filter-host-name='' --filter_url='' --distinct\n\nOptions:\n  -h, --help            show this help message and exit\n  -n, --no_gui          no gui model\n  -i INPUT_FILE_PATH, --input_file_path=INPUT_FILE_PATH\n                        fiddler/charles_file_path\n  -o OUTPUT_JMXSCRIPT, --output_file_path=OUTPUT_JMXSCRIPT\n                        jmeter_script_file_path\n  -u FILTER_URL, --filter_url=FILTER_URL\n                        filter_url regex default=\n                        /(.*)\\.(css|ico|jpg|png|gif|bmp|wav|js|jpe)(\\?.*)?$%\n  -f HOST_NAME, --filter-host-name=HOST_NAME\n                        filter-host-name regex default=^.*$\n  -d, --distinct        distinct: Filter duplicate requests , default=False\n  -s, --is-fiddler-script-model\n                        fiddler script model :default=False\n\n```\n```text\n示例:\n    python FiddlerCharles2Jmeter.py -n -i F:\\github-home\\fiddler2jmeter\\charles\\test_http2.0.chlsj -o F:\\github-home\\fiddler2jmeter\\charles\\test_http_demo.jmx\n运行成功：\n    run success,jmx file saved in : F:\\github-home\\fiddler2jmeter\\charles\\test_http_demo.jmx\n```\n\n## Fiddler-Script 运行方式\n1.1 打开Fiddler,替换FiddlerScript脚本（将FiddlerScript.js内容复制到FiddlerScript中）\u003cbr\u003e\n![Image text](.resources/img/fiddlerScript.png)\u003cbr\u003e\n1.2 修改脚本中的脚本路径以及jmx文件生成路径及名称\u003cbr\u003e\n```text\n// FiddlerCharles2Jmeter.py / FiddlerCharles2Jmeter.exe   PATH\nvar py_script_path = \"C:/Users/Administrator/Desktop/FiddlerCharles2Jmeter.exe\"\n\n// output jmx fileName\nvar jmx_output_file = \"C:/Users/Administrator/Desktop/demo.jmx\"\n```\n1.3 选择需要转换的请求,右键选择fiddler2jmeter按钮,进行转换\u003cbr\u003e\n![Image text](.resources/img/fiddlerbutton.png)\u003cbr\u003e\n\n## ENV\n```buildoutcfg\npython \u003e=  3.6  \nPyQt5  ==  5.15.2\n```\n\n## 注意\n1.注意HTTPS 抓包工具需要安装证书否则导出的请求的method 为 CONNECT，执行脚本时会忽略CONNECT\u003cbr\u003e\n2.根据导入文件的后缀进行判断切记不要改后缀名\u003cbr\u003e\n3.jmeter4.0 以上\u003cbr\u003e\n4.目前只考虑windows系统\u003cbr\u003e\n\n\n## 问题反馈\n1.Issues.\u003cbr\u003e\n2.微信:dongpengfei826153155\u003cbr\u003e\n3.E-mail: dongpengfei826153155@gmail.com\u003cbr\u003e\n4.有问题记得带上有问题的文件哦~~\u003cbr\u003e\n","funding_links":[],"categories":["Automation"],"sub_categories":["Conversion"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdperfly%2Ffiddler2jmeter","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdperfly%2Ffiddler2jmeter","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdperfly%2Ffiddler2jmeter/lists"}