一、准备工作
1.安装fiddler4;
2.vs2010以上(下方演示截图都是基于vs2015的);
3.开启fiddler debug相关功能;
在下图位置输入如下内容:
显示错误和异常信息:
prefs set fiddler.debug.extensions.showerrors True
显示log信息:
prefs set fiddler.debug.extensions.verbose True
开启log显示后,开发者输出的log信息显示在fiddler右侧的log tab的界面中。
开发者可以使用如下接口显示日志信息:
FiddlerApplication.Log.LogString()
二、创建Fiddler扩展项目
步骤1、启动Visual Studio 2015;
步骤2、创建一个Visual C#类库类型的新项目,如下截图:
步骤3、添加对Fiddler的引用;
1.在解决方案资源管理器中右键单击项目的引用文件夹,如下图:
2.点击【添加引用】,在弹出的【引用管理器】弹框中单击“ 浏览”选项卡,然后在C:\Program Files (x86)\Fiddler2文件夹中选择Fiddler.exe。
3.单击“ 确定”以添加引用。
4.在AssemblyInfo.cs文件中添加特定的属性[assembly: Fiddler.RequiredVersion(“4.6.2.0”)] (如下图 注因为我用的Fiddler4 版本是4.6.2.0)
三、添加对System.Windows.Forms的引用
如果自定义Fiddler插件修改了Fiddler的UI,则需要执行此项,否者跳过此项。
步骤1、再次右键单击解决方案资源管理器中项目的References文件夹。
步骤2、在.NET选项卡上,选择System.Windows.Forms。
步骤3、单击“ 确定”以添加引用。
四、扩展接口
1.修改项目中的默认class1.cs(或创建一个新类),必须公有;
2.添加[ProfferFormat(“JmeterExport”, “导出JMeter脚本.”)],用于添加导出下拉菜单栏
3.实现ISessionExporter接口
实现如下所示:
五、添加构建事件
步骤1、在解决方案资源管理器中,右键单击该项目,如下图:
步骤2、单击属性。
步骤3、单击“ 生成事件”选项卡。
步骤4、将以下内容添加到后期生成事件命令行:
copy “$(TargetPath)” “C:\Program Files (x86)\Fiddler2\ImportExport$(TargetFilename)”
$(TargetPath):生成的主输出文件的绝对路径名(定义形式:驱动器 + 路径 + 基本名称 + 文件扩展名)。
$(TargetFileName)
生成的主输出文件的文件名(定义为基本名称 + 文件扩展名)。
主要作用是将生成的插件dll文件直接拷贝到路径C:\Program Files (x86)\Fiddler2\ImportExport下。
六、重启Fiddler检查插件是否生效,如下图:
步骤1、重启Fiddler,进入【File】-【Export Session】-【All Sessions…】
步骤2、选择导入格式,下拉列表中可查看到【JmeterExport】,如下图:
七、总结遇到的坑
1.[assembly: Fiddler.RequiredVersion(“4.6.2.0”)] 没添加导致插件加载失败;
2.路径…\Documents\Fiddler2\Scripts和…\ Program Files \ Fiddler2 \ImportExport同时存在插件导致无法加载出来;
参考:http://docs.telerik.com/fiddler/Extend-Fiddler/BuildImporterExporter