保存成功
保存失败,请重试
提交成功

GoMonkey1.0 框架设计与应用实践

作者/分享人:张晓龙
多年软件架构和开发经验,DDD China 2017~2019 演讲嘉宾,ArchSummit 2019 演讲嘉宾,Go 语言 gomonkey 和 trans-dsl 作者,爱读书、爱运动、爱编程、爱分享,对于大型软件的重构具有丰富的经验。这几年指导多个团队积极实践 XP,包括开发领域和测试领域,取得了比较好的效果。个人简书主页:https://www.jianshu.com/u/1381dc29fed9 ,个人 GitHub 主页:https://github.com/agiledragon

GoMonkey 是作者为 Go 语言开发的一款打桩框架,目标是让用户在单元测试中低成本的完成打桩,从而将精力聚焦于业务功能的开发。GoMonkey 接口友好,功能强大,目前已被很多项目使用,用户遍及世界多个国家。

GoMonkey 的特性列表:

  • 支持为一个函数打一个桩
  • 支持为一个成员方法打一个桩
  • 支持为一个全局变量打一个桩
  • 支持为一个函数变量打一个桩
  • 支持为一个接口打一个桩
  • 支持为一个函数打一个特定的桩序列
  • 支持为一个成员方法打一个特定的桩序列
  • 支持为一个函数变量打一个特定的桩序列
  • 支持为一个接口打一个特定的桩序列

GoMonkey 初步计划了 2 个大版本:

  • GoMonkey1.0 提供丰富的命令式 API,可以满足用户各种场景的基本打桩诉求
  • GoMonkey2.0 提供强大的 DSL,增强打桩功能,同时提升易用性

GoMonkey1.0 在 Github 发布一年后,已获得 200 多个 star,同时即将启动 GoMonkey2.0 的开发。在这个承上启下的阶段,作者想写一篇 Chat 来系统梳理 GoMonkey1.0 框架设计与应用实践。

本 Chat 的主要内容包括:

  • GoMonkey 介绍
    • GoMonkey 是什么
    • GoMonkey 与其他打桩框架的比较
      • GoMonkey 与 GoMock 的比较
      • GoMonkey 与 GoStub 的比较
      • GoMonkey 与 Monkey 的比较
  • 框架设计
    • API 设计
    • 领域模型
    • 跨平台
    • 注意事项
  • 应用实践
    • 为一个函数打一个桩
    • 为一个成员方法打一个桩
    • 为一个全局变量打一个桩
    • 为一个函数变量打一个桩
    • 为一个接口打一个桩
    • 为一个函数打一个特定的桩序列
    • 为一个成员方法打一个特定的桩序列
    • 为一个函数变量打一个特定的桩序列
    • 为一个接口打一个特定的桩序列
已有103人预订
预订达标
文章出炉
     
19.09.26
19.10.08
本场 Chat 文章已出炉,购买后即可阅读文章并获得一张张晓龙的读者圈Pass
请务必添加GitChat服务号以查看活动进度及获取活动通知。
你可能还喜欢
Redis 知识点整理
JavaTimo
1925·青年必读书——民国名流开具的书单
李烨
Java 集合底层原理剖析(List、Set、Map、Queue)
老牛
基于 Spring Boot 的线程池最佳实践
古拉里
Vue 一步一步搭建企业级后台管理系统
一只帅帅的猿
Spring Boot 面试指南(50 题)
axiya
使用 Vue.js + ElementUI 搭建自己的后台管理系统
_zw@huang
企业级 Maven 依赖管理实践分享
古拉里
Java 编程(RabbitMQ 实战)
Peter
热门安全框架 Spring Securiy + JWT 精讲
九月长安
并发环境下 Redis 能做些什么?
新阳
被面试官问烂了的 Spring MVC 原理你了解多少?
ilomilo
我是怎么在 3 天内零成本开发 AI 微信小程序的
泰斯特
给面试官手写一个 Nacos,多少 K?
巴鲁
程序员最好掌握的两个思维模式
杨老师
微信扫描登录
关注提示×
扫码关注公众号,获得 Chat 最新进展通知!
入群与作者交流×
扫码后回复关键字 入群
Chat·作者交流群
入群码
该二维码永久有效