如何对依赖ZooKeeper的代码写单元测试
日常开发中,如何使用了ZooKeeper,在对这部分做单元测试的时候,往往很不方便,因为实际安装一个ZooKeeper专门用来做单元测试,实在是太浪费。这种情况下,可以使用curator-test
。curator
是Netflix公司开源的一个Zookeeper
客户端,curator-test
正是其中的一员,通过它可以Mock一个本地(127.0.0.1)ZooKeeper Server用于测试,非常方便。
Maven Dependency
<dependency><groupId>org.apache.curator</groupId><artifactId>curator-test</artifactId><version>2.6.0</version><scope>test</scope>
</dependency>
Getting Started
private static TestingServer server;
private static CuratorFramework client;@BeforeClass
public static void setUpBeforeClass() throws Exception {server = new TestingServer(2181, true);server.start();client = CuratorFrameworkFactory.newClient("127.0.0.1",new ExponentialBackoffRetry(1000, 3));client.start();
}@AfterClass
public static void tearDownAfterClass() throws IOException {server.stop();client.close();
}@Test
public void testFoobar() throws Exception {System.out.println("client: " + client);client.create().forPath("/test", "test-data".getBytes());byte[] data = client.getData().forPath("/test");System.out.println("data: " + new String(data));
}
如何对依赖ZooKeeper的代码写单元测试相关推荐
- java 单元测试_在springboot中写单元测试解决依赖注入和执行后事务回滚问题
往期文章 「Java并发编程」谈谈Java中的内存模型JMM 面试官:说说你知道多少种线程池拒绝策略 为什么不要在MySQL中使用UTF-8编码方式 前言 很多公司都有写单元测试的硬性要求,在提交代码 ...
- springboot 事务嵌套问题_在springboot中写单元测试解决依赖注入和执行后事务回滚问题...
往期文章 「Java并发编程」谈谈Java中的内存模型JMM 面试官:说说你知道多少种线程池拒绝策略 为什么不要在MySQL中使用UTF-8编码方式 前言 很多公司都有写单元测试的硬性要求,在提交代码 ...
- 夸奖对方代码写的好_我写出这样干净的代码,老板直夸我
一份整洁的代码对于一个系统是多么重要.如果代码写的乱七八糟,最后的结果就是无法对这些代码进行有效的管控.很有可能会毁掉这个系统. 什么才是整洁的代码? Biarne Stroustrup -[C++语 ...
- Spock in Java 慢慢爱上写单元测试
前言 最近小组里面引进了Spock这个测试框架,本人在实际使用了之后,体验非常不错,本篇文章一是为了巩固输入的知识,二是为了向大家推广一下. 在了解学习Spock测试框架之前,我们应该先关注单元测试本 ...
- 代码写一半感觉无从下手,写不下去了,怎么办?
背景 最近新项目开启 996 模式,五月基本陷入了稀缺状态,没有输出.这一个月投入Java 后端代码的编写过程中,有一个深切的感悟:写代码跟作家创作一样,都需要经历一个生成初稿的过程. 纵使有很多细节 ...
- 为什么从前那些.NET开发者都不写单元测试呢?
楔子 四年前我虽然也写了很多年代码,由于公司虽然规模不小,却并非一家规范化的软件公司,因此在项目中严格意义上来说并没有架构设计.也不写单元测试,后来有幸加入了一家公司,这家公司虽然也是一家小公司,但是 ...
- 未能加载文件或程序集或它的某一个依赖项_手写一个miniwebpack
前言 之前好友希望能介绍一下 webapck 相关的内容,所以最近花费了两个多月的准备,终于完成了 webapck 系列,它包括一下几部分: webapck 系列一:手写一个 JavaScript 打 ...
- Android Studio中解决jar包重复依赖导致的代码编译错误
在原本的代码中已经使用了OKHTTP和rxjava,然后今天依赖retrofit的时候一直报错 Program type already present: okhttp3.internal.ws.Re ...
- 写单元测试的好处(转)
许多开发者都有个习惯,常常不乐意去写个简单的单元测试程序来验证自己的代码.对自己的程序一直非常有自信,或存在侥幸心理每次运行通过后就直接扔给测试组测试了.然而每次测试组的BUG提交过来后就会发现自己的 ...
最新文章
- 【一个好的总经理必做的四件事】
- 重庆职高统考c语言,2021年重庆市中职毕业生参加高职分类考试招生文化素质测试 考试说明...
- English as a medium of instruction
- oracle提供的有用函数(待续)
- Spring启动时的Spring社交示例,或者我如何不再担心和喜欢自动配置
- sqlite3 查询表时,表头与列对齐显示
- 搭建开发环境之串口线的选择
- Web核心技术-服务器端技术
- 支持开源,近期将开设Laszlo专题,陆续介绍相关资讯
- mysql 写出高性能sql 防止索引失效总结
- idea快捷键汇总mac_IntelliJ IDEA for mac 快捷键大全
- 小网站静态资源CDN加速实践记录
- 视频教程.VB6.0+ACCESS开发数据管理软件
- WIFI信道频率对应
- Quartz 表达式生成器
- pycocotools安装,简单易懂
- PM如何写好产品需求文档
- 寒衣节的由来和习俗,你知道吗?
- css【详解】grid布局—— 网格布局(栅格布局)
- Linux系列之CentOS系统安装
热门文章
- arraylist 线程安全_数据结构之Array、ArrayList、List、LinkedList对比分析
- 将一个对象拆开拼接成URL
- Tomcat配置https访问SSL证书(pfx文件)
- 样条表示---Bezier样条曲线
- linux -cpu
- leetcode第一刷_Search in Rotated Sorted Array
- pb中将已经建好的Grid类型转为Tabular类型
- 在ubuntu14.04中安装搜狗输入法
- SSH配置启动后Could not instantiate bean class [org.hibernate.cfg.AnnotationConfiguration
- Bash:把粘贴板上的内容拷贝的文件中。(脚本)