开发者社区> 问答> 正文

JSON 资源文件来源方式有哪些?

已解决

JSON 资源文件来源方式有哪些?

展开
收起
游客lmkkns5ck6auu 2022-10-26 19:20:22 611 0
1 条回答
写回答
取消 提交回答
  • 推荐回答
    1. 来源于自己组装 直接利用 JSON 编辑器或者纯文本编辑器,自己一个字段一个字段地编写 JSON 资 源数据。 注意: 这种方式容易出现 JSON 格式错误及字符串转义问题。

    2. 来源于代码生成 做为程序员,能够用程序生成 JSON 资源数据,就绝不手工组装 JSON 资源数据。下 面,便是利用 Fastjson 的 JSON.toJSONString 方法生成 JSON 资源数据。 执行该程序后,生成的 JSON 资源数据如下: 注意: 这种方式能够避免 JSON 格式错误及字符串转义问题。

    3. 来源于线上日志 如果是事后补充单元测试,首先想到的就是利用线上日志。比如: 从上面的日志中,我们可以得到方法 userDAO.queryByCompanyId 的请求参数 companyId 取值为“1”,返回结果为: “[{“id”:1,”name”:”Changyi”,”title”:”Java Developer”…},{“id”:2,”name”:”Tester”,”title”:”Java Tester”…},…]” 注意: 要想得到现成的 JSON 资源数据,就必须输出完整的 JSON 数据内容。但是,由于 JSON 数据内容过大,一般不建议全部输出。所以,从线上日志中也不一定能够拿到 现成的 JSON 资源数据。

    4. 来源于集成测试 集成测试,就是把整个或部分项目环境运行起来,能够连接数据库、Redis、MetaQ、 HSF 等所依赖的第三方服务环境,然后测试某一个方法的功能是否能够达到预期。 执行上面集成测试用例,输出的日志内容如下: 上面日志中,userList 后面的就是我们需要的 JSON 资源数据。 我们也可以用集成测试得到方法内部的方法调用的参数值和返回值,具体方法如下: • 首先,在源代码中添加日志输出语句; • 然后,执行单元测试用例,得到对应的方法调用参数值和返回值; • 最后,删除源代码中日志输出语句,恢复源代码为原来的样子。

    5. 来源于测试过程 有一些数据,是由被测方法生成的,比如:方法返回值和调用参数。针对这类数据, 可以在测试过程中生成,然后逐一进行数据核对,最后整理成 JSON 资源文件。 被测方法: 测试用例: 执行单元测试后,提示以下问题: 上面的错误信息中,后面括号中的就是我们需要需要的 JSON 资源数据。 注意: 一定要进行数据核对,这有可能是错误代码生成的错误数据。用错误数据去验证生 成它的代码,当然不会测试出其中的问题。

    以上内容摘自《Java工程师必读手册》电子书,点击https://developer.aliyun.com/ebook/download/7780 可下载完整版

    2022-10-26 20:39:52
    赞同 展开评论 打赏
来源圈子
更多
收录在圈子:
阿里云开发者社区官方技术圈,用户产品功能发布、用户反馈收集等。
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载