`
ryhome
  • 浏览: 44536 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论
文章列表
前言 Jmockit是一个超强大的ut mock工具, 与其他mock工具最大的特点是可以对final类, 静态方法进行mock! 这是其他mock工具不可比的. 这也成为我们选它做ut的原因. 多种mock工具特色比较: http://code.google.com/p/jmockit/wiki/MockingToolkitComparisonMatrix   一 jmockit加载注意事项 1 由于jmockit用到了jdk1.5的instrument特性, 所以必需用1.5以上的jdk运行 2 如果junit版本是4.x, 需要4.8以上的版本
在开发调测过程遇到线程非正常阻塞的情况是在所难免的, 有时是死锁, 有时是不正确的程序逻辑. 例如:  package demo; import java.util.concurrent.BlockingQueue; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import java.util.concurrent.LinkedBlockingQueue; public class Main { private static final String ...
一个项目用到ConcurrentSkipListSet.add(E e)方法,过程中总觉得元素添加数量有问题,故调试之。查看add()方法的javadoc,其注释为:如果此 set 中不包含指定元素,则添加指定元素。更确切地讲,如果此 set 不包含满足 e.equals(e2) 的元素 e2,则向 set 中添加指定的元素 e。如果此 set 已经包含该元素,则调用不更改该 set 并返回 false。根据注释,只要元素的equals()方法判断不相等就能加入到Set中,可调试发现不是这么回事:   public boolean add(E e) { return m.putIf ...
Spring DM中整合CXF-DOSGi 最近有需要用到OSGi+REST+JSON的架构组合,做了一些技术验证。这里将总结的一些经验记录下来。 OSGi框架选型: 使用了Spring-DM,主要用它的服务发布功能 一、RESTful框架选型 CXF、RestLet、RestEasy、Jersey。4个REST框架都是JAX-RS(JSR311)的实现,验证期间对它们做了一个比较   CXF RestLet
a.管理原则:     1)估算,进度安排     2)计划制定:估算项目时间进度                       确定参与人数,技能,何时加入,具体人选                       确定运作方式                       确定采用的生命期模型     3)跟踪(项目可视度)     4)度量 b.技术原则:     1)需求管理:分析方法,建模,沟通,需求与项目生命周期关系     2)设计     3)构件:主要指编码实践     4)配置管理:CI,版本控制 c.质量保障:     1)识别重点模块:我的经验是需求依 ...
1.概述:as             i want             so 2.规格详细描述:     现状     应用场景     具体要求     界面原型     对外接口 3.验收准则 4.story符合INVEST原则:     独立     可用于沟通     有价值     可估计     足够小(500行)     可测试
保存在workspace/.metadata/.plugins/org.eclipse.debug.core/.launches下。 项目配置时最好将这个run文件移动到工程目录下(也就是.classpath所在目录),这样一处配置好工程放入svn,极大的方便了开发组其他成员的环境搭建。

jMock使用注意

    博客分类:
  • Java
TDD 
1. 测试类如果继承org.jmock.MockObjectTestCase,mock出来的类只能模仿Interface,要模仿具体类需要使用org.jmock.cglib.MockObjectTestCase(需要引用cglib-nodep-2.x.jar);   2.静态方法不能模拟,有必要时需要重构代码,这也是TDD代码可测性的要求;   3.方法参数如果是数值类型(int等),with()方法不能用isA(int.class)做判断,要么用with(eq(value)),要么使用withAnyArguments()方法;   4.jMock2.x一个Mockery实例可以mo ...
<?xml version="1.0" encoding="utf-8"?> <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute"> <mx:Script> <![CDATA[ import mx.events.ModuleEvent; import mx.modu ...
import os, zipfile from os.path import join def zipfolder(foldername, filename, includeEmptyDIr=True): empty_dirs = [] zip = zipfile.ZipFile(filename, 'w', zipfile.ZIP_DEFLATED) for root, dirs, files in os.walk(foldername): empty_dirs.extend([dir for dir in dirs if os.listd ...
chr(i) 数字转ascii范围的字符 unichr(i)数字转unicode字符 ord(c) 字符转成unicode码点
I.  python默认编码 python2.3以后的默认编码是ascii python3.0开始默认编码为utf-8 改变默认编码方法: #python解释器启动时会自动删除sys模块的setdefaultencoding()方法, 使得运行时不能调用, 所以需要通过reload(sys)重新加载
记录日常遇到的python问题,随时更新 1.python可以import压缩包中的脚本,只要这个压缩包路径在sys.path中;   2.locale模块的getdefaultlocale()有可能返回None!UNIX系统LANG=C时: import locale locale.getdefaultlocale() (None, None)   3.python彻底删除import的模块。import Module后使用del Module只删除了变量引用,实际对象引用还在sys.modules中。要使用del sys.modules['Module']删除对象引用。 ...
Global site tag (gtag.js) - Google Analytics