jtest使用详细介绍.pdf
文本预览下载声明
一步一步学写测试
吴大瑞 2009.12.25
Jtester的项目配置
1、 martini下项目配置
2、 使用 ant的项目配置
3、 Maven项目的配置
5、perties文件配置
TestNG测试
一个简单到不能再简单的测试
您只要用标注 @Test 通知框架这个类的方法是测试。
@Test这个标注可以写在测试类 class前,也可以写在测试方法 method前。
写在测试类前,表明这个类中签名为 public void 的方法都是一个测试方法。
清单 1 演示了实用类 StringUtils 的一个最简单的测试。它测试 StringUtils
的两个方法: isEmpty() 方法检测 String 是否为空; trim() 方法从 String 两端
删除控制字符。请注意,其中使用了 Java 指令 assert 来检测错误情况。
import com.beust.testng.annotations.*;
import mons.lang.StringUtils;
public class StringUtilsTest{
@Test
public void isEmpty() {
assert StringUtils.isBlank(null);
assert StringUtils.isBlank();
}
@Test
public void trim() {
assert foo.equals(StringUtils.trim( foo ));
}
}
@Test表明这 2个方法是测试方法
在 eclipse中运行 testng测试
安装eclipse插件:/eclipse/ ,安装好TestNG后,在Eclipse
中单击Window-Show View-Other-Java-TestNG, TestNG的视图就打开了。
在测试类的 java editor中右键菜单中会出现如下选项
运行 testNG Test就可以跑这个类中的所有测试方法了。
如果你要跑指定的测试方法,可以打开 outline视图
右键选定你要跑的测试,运行 testng test选项,就可以跑你指定的测试方
法,而不用跑这个类了。
定义测试组
TestNG可以将一个测试方法定义为属于一个或多个测试组,但可以选择只
运行某个测试组。要把测试加入测试组,只要把组指定为 @Test 标注的参数,
使用的语法如下:
@Test(groups = {tests.string})
如果这个 annotation是加在 class前面,表明这个类的所有测试方法都属于这
个测试组,如果这个 annotation是加在 method前,只表明这个方法属于这个测
试组。同时,测试组是可以继承和叠加的。
在上面的例子中,方法 test1属于测试组 mytest1,方法 test2属于测试组
mytest1和 mytest2,方法 test3属于测试组 mytest1、mytest2和 mytest3。
运行指定的测试组,在 eclipse的 run菜单下单击”Run Configuration”选项,如下图:
则会打开如下界面
@Test(groups={mytest1})
public class BaseTest{
public void test1(){…}
}
@Test(groups={mytest2})
public class ConcreteTest extends BaseTest{
public void test2(){…}
@Test(groups={mytest3}
public void test3(){…}
}
Name这个选项是你给当前的测试一个命名,你可以随便取,project选项是你要跑的测
试位于那个项目下。Class、method、groups、package和 suite这 5个选项表明你可以按这 5
种方式来运行的测试。现在,我们选中 groups选项,然后点击这个选项后对应的 Browse按
钮,会弹出一个窗口,列出所有可见的测试组,你可以选择你希望跑的测试组,然后点击
OK和 RUN按钮,eclipse就会自动运行所有属于选中的测试组的测试方法。
运行结果会显示在 TestNG view视图中,红色表示这些测试没有通过,相应的异常会显
示在
显示全部