Parasoft Jtest 7.5.59 使用手册
[编 写 中,不断更新``````````````]
一、 Jtest简介
Jtest是一个卓越的自动化Java编码标准分析与单元测试工具。Jtest自动测试任何Java类或部件,而不需要您写一个测试用例、驱动程序或桩函数。只要点击一个按钮,Jtest自动测试代码构造(白盒测试)、测试代码功能性(黑盒测试)、维护代码完整性(回归测试)和静态分析(编程标准执行和指标度量)。不需要复杂的设置,Jtest能够立即使用并指出问题。如果您使用“Design by Contract”(契约设计)技术在代码中加入描述信息,Jtest能够自动建立和执行测试用例验证一个类的功能是否符合其功能描述。
Jtest能够帮助您防止错误,其可定制的静态分析特性让您能够自动执行超过240个软件业权威认可的500多条编程标准,建立和执行任何数量的定制编程标准,并对它们进行剪裁以适应特定的项目和团队。
本文解释了单元测试和编程标准执行等开发技术如何帮助您防止错误并提高软件可靠性,以及Jtest如何自动化这些技术使得它们能够实际应用到快速开发过程中去。
二、 基本术语
单元测试 —— 单元测试测的是独立的一个工作单元。在Java应用程序中,“独立的一个工作单元”常常指的是一个方法(但并不总是如此)。作为对比,集成测试和验收测试则检查多个组件如何交互。一个工作单元是一项任务,它不依赖于其他任何任务的完成。
框架 —— 框架是一个应用程序的半成品。框架提供了可在应用程序之间共享的可复用的公共结构。开发者把框架融入他们自己的应用程序,并加以扩展,以满足他们特定的需要。框架和工具包的不同之处在于,框架提供了一致的结构,而不仅仅是一组工具类。
API契约 —— 对应用编程接口(API)的一种看法,把它看作是调用者和被调用者之间的正式协定。单元测试常常可以通过证实期待的结果来帮助定义API契约。API契约的说法来自伴随Eiffel编程语言而流行的Design by Contract(契约设计)实践
三、 单元测试
1)Junit简介
单元测试这个术语描述的是检查一个工作单元的行为的测试。
Junit只是实现单元测试的代码框架。在1997年,Erich Gamma和Kent Beck为Java语言创建了一个简单但有效的单元测试框架,称作JUnit。Erich Gamma是编写经典《设计模式》一书的“Gang of Four”之一。Kent Beck则因他的开创性的软件开发方法“极限编程”而同样广为人知。junit属于Xuint中的一员。当然,单元测试的框架不只有junit而已,并且以junit为核心或以junit原理而衍生出的其他框架或工具有很多,如Cactus。Junit是一套框架,继承TestCase类,就可以用Junit进行自动测试了。
2)Jtest与Junit之间的关系
JTest执行单元测试的核心框架则是Junit,他只是一个继承于Junit并自主扩展的工具。
为什么这样说呢?
我们使用JTest为一个[ABC]项目中的所有类生成单元测试类。我们可以发JTest为我们自动生成了一个[ABC.jtest]的项目,这个项目下包含了所有生成的测试类。我们可以观察这个[ABC.jtest]测试项目,发现[ABC]项目中的每个[ClassXXX]都相应的生成了一个[ClassXXXTest]的测试类。而每个[ClassXXXTest]的测试类都会继承于本包中的一个[PackageTestCase]的抽象类。观察该抽象类,又发现每个[PackageTestCase]的抽象类都继承于一个[jtest]包中的名为[ProjectTestCase]的抽象类。该[ProjectTestCase]的抽象类则继承于[junit.framework.TestCase]。
因此出现了一个继承的依赖联系链:
[ClassXXXTest] è [PackageTestCase] è [ProjectTestCase]è [junit.framework.TestCase]

四、 JTest
[1] [2] [3] [4] [5] [6] 下一页