framework junit
AppPerfect Corp. develops, markets and supports a comprehensive set of testing and monitoring software products. AppPerfect products are used to analyze, test, tune and monitor Web and Windows applications. AppPerfect offers the following products:
Java Testing:
Automated Java and JSP code analysis, audit and review tool.
Automatically generates and executes JUnit-based unit tests.
For performance, memory and thread profiling of your Java/J2EE apps.
Web Testing
Web Load Performance test software designed to simulates thousands of virtual users to load / stress test your Web applications.
Web test software for functional and regression testing of Web applications. Easy-to-use browser events record and replay.
App test software for functional and regression testing of native Windows / .Net / GUI / Java applications. Easy-to-use native application events record and replay.
Server Monitoring / Test Management
For system / server / application / database monitoring. Web-based server with dashboard. No agents needed.
Test automation and management system. Web-based server provides test scheduling, results notifications, reports / analytics, requirements / bugs management.
winxp安装 LoadRunner 完成后MI_Viewer的密码是什么?
http://bbs.51testing.com/viewthread.php?tid=56266
密码:MIOrchid#1
/home/lindows/workspace/java/src/com/javaeye/lindows/test/Test.java
package com.javaeye.lindows.test;
public class Test {
/**
* @param args
*/
private Test() {
}
public static void main(final String[] args) {
System.out.println(Messages.getString("Test.0")); //$NON-NLS-1$
}
}
/home/lindows/workspace/java/src/com/javaeye/lindows/test/ Messages.java
package com.javaeye.lindows.test;
import java.util.MissingResourceException;
import java.util.ResourceBundle;
public class Messages {
private static final String BUNDLE_NAME = "com.javaeye.lindows.test.messages"; //$NON-NLS-1$
private static final ResourceBundle RESOURCE_BUNDLE = ResourceBundle
.getBundle(BUNDLE_NAME);
private Messages() {
}
public static String getString(String key) {
try {
return RESOURCE_BUNDLE.getString(key);
} catch (MissingResourceException e) {
return '!' + key + '!';
}
}
}
/home/lindows/workspace/java/src/com/javaeye/lindows/test/messages.properties
Test.0=\u6D4B\u8BD5 ok
测试用例管理工具整理:
|
工具名 |
综述 |
优点 |
缺点 |
备注 |
|
TestManager |
Rational 测试解决方案中推荐的测试用例管理工具。 |
1. 功能强大。 2. 文件夹形式的管理,可以对测试用例无限分级。 3. 可以和 Rational 的测试工具 robot 、 functional 相结合。 4. 有测试用例执行的功能,但必须先生成对应的手工或自动化脚本。 |
1. 本地化支持不好。汉字显示太小。 2. 测试用例很多时不太稳定。有时会造成测试用例的丢失。 3. 必须安装客户端才可使用。和开发人员交流不方便。 4. 测试用例的展示形式单一。 |
|
|
Wiki
|
使用 wiki 做测试用例的管理工具。 |
1. Web 界面形式,交流方便。 2. 测试用例的展示形式多样,可以贴图。可以进行格式化的编辑。 3. Wiki 提供测试用例的版本控制、版本比较功能。 4. Wiki 提供测试用例的添加注释(评论)功能,方便测试用例评审。 5. Wiki 本身强大的全文索引功能。 6. 可以任意为测试用例添加标签。 |
1. Wiki 并不是专业的测试用例管理工具。 2. 无法和其他测试工具集成。 3. 测试用例的统计不方便。需要编写专门的程序。 4. 没有测试用例的执行跟踪功能。 5. 有一些 wiki 本身的限制,如不同产品的测试用例名也不能重复。 6. 目前还没有定制统一的模板 |
Wiki 本身有多种实现,这儿列出的是 Confluence wiki 。其他的 wiki 可能没有优点中列出来的某些功能。 |
|
Bugzilla+Test Runner
|
开源的测试管理解决方案,有很多开源软件使用此方式管理。 |
1. 开源免费。 2. Web 方式的管理界面。 3. 自动邮件提醒。 4. 和缺陷管理系统 Bugzilla 结合紧密。有测试用例执行管理。 5. 测试用例可以分优先级。 6. 测试用例可以有评审的功能。(测试用例有不同的状态) |
1. 安装设置较繁琐。 2. 没有配置过的经验。 3. 测试用例的编写上必须按照一个步骤对应一个验证点的形式来编写。 |
听说后来 Test Runner 升级后名字改为了 Testopia ,没有常试过。 |
|
TestDirector |
|
1. 和 Rational 测试系列其名的测试管理工具,功能强大。 2. Web 方式的界面。 3. 有测试用例执行跟踪的功能。 4. 有灵活的缺陷定制。 5. 和自身的缺陷管理工具紧密集成。 6. 界面较友好。 |
1 、每个项目库同时在线人数有限制(具体个数忘记了) 2 、可能存在部分不稳定性,但是基本功能没有问题 |
没有配置过的经验。不了解其具体的一些特征。
|
|
新版 CQ ( 7.0 ) |
新版本的 CQ 中增加了测试用例管理的功能。 |
1. 和 cq 的缺陷管理紧密结合。 2. 可以使用 cq 强大的查询和图表功能。 |
1. Eclipse 的界面,较为笨重,需要安装。不知道有没有 web 形式的界面。 |
看过演示,没有实际用过。 |
|
TestLink |
|
1. Web 方式的界面。 2. 和 bugzilla 缺陷管理工具的整合 3. 可以自定义和其他缺陷管理工具的整合。 4. 同时具有需求管理的功能。 |
1. 没有配置过的经验。不了解其具体的一些特征。 |
没有实际用过,只看过网上的一些介绍。 |
单元测试实战 - Junit测试
https://www.cnblogs.com/Carolinee/p/5382350.html
一、对加法函数进行测试

1.实例化被测单元(方法):类名 实例名=new 类名([参数])
2.调用被测单元,对比预期值和输出值(实际值);
在没有junit测试工具的情况下,我们要进行如下的测试代码编写过程:

二、利用Junit进行单元测试
Junit是一款专门用于java语言的代码的单元测试工具;是一套基于java的测试框架,目前有两个版本:Junit3,Junit4.Junit中最常用的两个测试方法是:
assertEquals(expect,actual);用于非数组型的数据的比较;
assertArrayEquals(expect,actual);用于数组型的数据的比较;
PS:这两个函数的选择是由被测单元的输出数据类型决定的。
1.Junit 3特征
a.测试类都是要继承TestCase类:
import junit.framework.TestCase
public class TestCalc extends TestCase
b.测试类中的方法的作用是由方法名决定的且测试用例的方法必须以小写的test开头;
如:
2.Junit 4
Junit 3有很大优化,没有Junit3那样的约束条件,使用起来很方便,对于Calc测试如下:

3.对于Java中单元测试来说,被测的方法的类型一般是或者可以转化为以下四种类型:
a.被测方法有返回值,且返回值是可预期的。(按照功能,特定的输入一定对应特定的输出);assertEquals(预期值,输入值);
//上述对于加法函数的测试即属于该类;
b.被测方法有返回值,但是返回值不是固定的,是随机的,但是返回值从数学角度来看,返回值必然是有其特征的;
例:

c.被测方法没有返回值,此时都可以将之转化为输出类型(System.out.println());
例:Dog这样的类是没有返回类型的,通常我们可以将之转化为有输出语句的类型;


d.被测方法本身会抛出异常,此时的测试重点已经是对异常信息的检测。
例:


4.Parameter参数化
一般来说,在自动化测试领域,针对同一单元的测试,往往存在多个测试用例,在代码层面来看,多个测试用例的实现,其特征是:逻辑相同,数据不同。此时就需要用到参数化的操作,一定程度上实现代码和数据的分离,junit自身提供了参数化的方式。
例:

通过参数化进行测试:

5.feeder工具
添加feeder插件,新建data文件夹,右击新建文件,命名为isnumber.csv.(以上面isNumber为例)

end

浙公网安备 33010602011771号