从charles抓包导出json文件,可以自动转成Yaml文件作为测试用例来使用
网上没有找到现成的包,所以自己来实现,如果网友们有什么更好的方法,可以留言区给与提示,感谢大家。
json文件->File对象->用例对象->yaml文件
1.先将charles文件(Json格式的)转换成对象JsonFileDto
2.再将转换对象JsonFileDto中需要提取的属性,保存成一个新对象CaseYamlFileDto
3.将JsonFileDto 转换成yaml文件
1.导入charles文件,放入data/目录下
[
{
"status":"COMPLETE",
"method":"GET",
"protocolVersion":"HTTP/1.1",
"scheme":"http",
"host":"",
"port":null,
"actualPort":80,
"path":"/",
"query":"userExtendId=2079&userId=1879",
"tunnel":false,
"keptAlive":false,
"webSocket":false,
"remoteAddress":",
"clientAddress":"/127.0.0.1",
"clientPort":61786,
"times":{
"start":"2021-01-20T14:59:18.169+08:00",
"requestBegin":"2021-01-20T14:59:18.183+08:00",
"requestComplete":"2021-01-20T14:59:18.184+08:00",
"responseBegin":"2021-01-20T14:59:18.328+08:00",
"end":"2021-01-20T14:59:18.329+08:00"
},
"durations":{
"total":157,
"dns":2,
"connect":9,
"ssl":null,
"request":1,
"response":1,
"latency":144
},
"speeds":{
"overall":"7337",
"request":"535000",
"response":"617000"
},
"totalSize":"1152",
"request":{
"sizes":{
"headers":535,
"body":0
},
"mimeType":null,
"charset":null,
"contentEncoding":null,
"header":{
"firstLine":"GET /studyApi/study/V3/index?userExtendId=2079&userId=1879 HTTP/1.1",
"headers":[
{
"name":"deviceType",
"value":"0"
},
{
"name":"appVersion",
"value":"2.8.0"
},
{
"name":"Accept",
"value":"*/*"
},
{
"name":"appName",
"value":"da-cloudclass-app"
},
{
"name":"sign",
"value":"cd0680b4364dc4fc1d221fec49362719"
},
{
"name":"versionCode",
"value":"27"
},
{
"name":"token",
"value":"3e81038f5647da4928276112923c40b5"
},
{
"name":"timeStamp",
"value":"1611125957213"
},
{
"name":"osVersion",
"value":"14.0"
},
{
"name":"osType",
"value":"ios"
},
{
"name":"model",
"value":"iPhone11"
},
{
"name":"debugMode",
"value":"0"
},
{
"name":"uniqueId",
"value":"da7a5e4ea36357d6eb7f187e92bae6a593355179"
},
{
"name":"Content-Length",
"value":"0"