22_模型数据测试小技巧
背景:UI写完了,想模拟一些测试数据肿么办?
一,可以采纳的方法
1,修改测试json数据
2,修改模型数据
3, APP端修改服务器数据:推荐使用强大的开源库OHHTTPStubs, 他可以伪造的网络数据和模拟的缓慢网络来进行调试
4,代理拦截网络请求:利用代理软件的 Map Local 功能,将请求转换为请求电脑本地的静态json文件
5,自己搭建服务器,模拟数据
6,测试服务器,自己操作数据库,修改测试数据
二,动态修改模型的值,在实际开发中非常管用
1,在控制台中,在模型赋值处打上断点
2,找不到的,可用在属性处打上断点,再用\n,分步调试至赋值语句后
3,利用 e vc.bankCardModel.cardType = @“3”,直接修改模型中的属性
4,拿到结果后,界面就可以更新
三,利用代理软件的 Map Local 功能,将请求转换为请求电脑本地的静态json文件具体实现:
1,根据接口文档,模拟写一份plist模拟数据
2,plist文件转字典
NSDictionary *dic = [NSDictionary dictionaryWithContentsOfFile:@"/Users/gjfax/Desktop/TestList.plist"];
3,获取字典的result字段内容:也是一个字典
NSDictionary *resultDic = [dic valueForKey:@"result"];
4,将获取的字典进行加密
NSData *jsonData = [NSJSONSerialization dataWithJSONObject:resultDic options:NSJSONWritingPrettyPrinted error:0];
NSString *jsonString = [[NSString alloc] initWithData:jsonData encoding:NSUTF8StringEncoding];
NSString *encrcyString = CryptUtil->encryptDES128WithMD5(jsonString, kCryptKey, kIvValue);
5,再将加密的数据赋值给result字典
[dic setValue:encrcyString forKey:@"result"];
6,加密字典转成xml格式
[dic writeToFile:@"/Users/gjfax/Desktop/TestList1.json" atomically:YES];
7,xml格式序列化为json
NSData *data =[NSJSONSerialization dataWithJSONObject:dic options:NSJSONWritingPrettyPrinted error:0];
8,写到新文件
[data writeToFile:@"/Users/gjfax/Desktop/TestList2.json" atomically:YES];
9,打开charles(青花瓷)软件,设置完代理
10,在tool -》map local中打开
11,创建映射地址