netbeans7.4_NetBeans 7.2引入了TestNG

netbeans7.4

代码生成的优点之一是能够查看如何使用特定的语言功能或框架。 正如我在《 NetBeans 7.2 beta:更快,更有用》一文中所讨论的那样, NetBeans 7.2 beta提供了TestNG集成 。 除了对该功能的单一引用之外,我在该帖子中没有进一步阐述,因为我想将这篇帖子专门用于该主题。 我使用这篇文章来演示如何使用NetBeans 7.2帮助刚接触TestNG的开发人员开始使用此替代(对JUnit )测试框架。

NetBeans 7.2的“新建文件”向导使创建空的TestNG测试用例更加容易。 以下屏幕快照展示了这一点,该屏幕快照是使用“新建文件” |“开始”按钮启动的。 单元测试(请注意,在“文件”下拉菜单下或通过在“项目”窗口中单击鼠标右键可以使用“新文件”)。

如上所示运行TestNG测试用例创建将导致以下生成的测试代码。

TestNGDemo.java(由NetBeans 7.2生成)

package dustin.examples;import org.testng.annotations.AfterMethod;
import org.testng.annotations.AfterClass;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.Test;
import org.testng.Assert;/**** @author Dustin*/
public class TestNGDemo
{   public TestNGDemo(){}@BeforeClasspublic void setUpClass(){}@AfterClasspublic void tearDownClass(){}@BeforeMethodpublic void setUp(){}@AfterMethodpublic void tearDown(){}// TODO add test methods here.// The methods must be annotated with annotation @Test. For example://// @Test// public void hello() {}
}

NetBeans 7.2生成的测试包括注释,这些注释指示如何添加和注释测试方法(类似于现代版本的JUnit)。 生成的代码还显示了一些注释,这些注释用于总体测试用例的设置和拆卸以及针对每次测试的设置和拆卸(注释与JUnit相似)。 NetBeans标识此时尚未使用的import语句( import org.testng.annotations.Test;import org.testng.Assert; ),但是可能被使用,因此已包含在生成的代码中。

我可以轻松地将测试方法添加到此生成的测试用例中。 以下代码段是使用TestNG的测试方法。

testIntegerArithmeticMultiplyIntegers()

@Testpublic void testIntegerArithmeticMultiplyIntegers(){final IntegerArithmetic instance = new IntegerArithmetic();final int[] integers = {4, 5, 6};final int expectedProduct = 2 * 3 * 4 * 5 * 6;final int product = instance.multiplyIntegers(2, 3, integers);assertEquals(product, expectedProduct);}

当然,这看起来与我在测试Invalidgerquals with JUnit and Hamcrest和JUnit的内置Hamcrest Core Matcher Support文章中的插图所使用的IntegerArithmetic类所使用的同一个IntegerArithmetic类中使用的JUnit类似。 以下屏幕快照显示了通过右键单击测试用例类并选择“运行文件”(Shift + F6),在NetBeans 7.2 beta中的输出。

接下来,将复制NetBeans 7.2 beta中提供的TestNG运行的文本输出。

[TestNG] Running:Command line suite[VerboseTestNG] RUNNING: Suite: "Command line test" containing "1" Tests (config: null)
[VerboseTestNG] INVOKING CONFIGURATION: "Command line test" - @BeforeClass dustin.examples.TestNGDemo.setUpClass()
[VerboseTestNG] PASSED CONFIGURATION: "Command line test" - @BeforeClass dustin.examples.TestNGDemo.setUpClass() finished in 33 ms
[VerboseTestNG] INVOKING CONFIGURATION: "Command line test" - @BeforeMethod dustin.examples.TestNGDemo.setUp()
[VerboseTestNG] PASSED CONFIGURATION: "Command line test" - @BeforeMethod dustin.examples.TestNGDemo.setUp() finished in 2 ms
[VerboseTestNG] INVOKING: "Command line test" - dustin.examples.TestNGDemo.testIntegerArithmeticMultiplyIntegers()
[VerboseTestNG] PASSED: "Command line test" - dustin.examples.TestNGDemo.testIntegerArithmeticMultiplyIntegers() finished in 12 ms
[VerboseTestNG] INVOKING CONFIGURATION: "Command line test" - @AfterMethod dustin.examples.TestNGDemo.tearDown()
[VerboseTestNG] PASSED CONFIGURATION: "Command line test" - @AfterMethod dustin.examples.TestNGDemo.tearDown() finished in 1 ms
[VerboseTestNG] INVOKING CONFIGURATION: "Command line test" - @AfterClass dustin.examples.TestNGDemo.tearDownClass()
[VerboseTestNG] PASSED CONFIGURATION: "Command line test" - @AfterClass dustin.examples.TestNGDemo.tearDownClass() finished in 1 ms
[VerboseTestNG] 
[VerboseTestNG] ===============================================
[VerboseTestNG]     Command line test
[VerboseTestNG]     Tests run: 1, Failures: 0, Skips: 0
[VerboseTestNG] ==============================================================================================
Command line suite
Total tests run: 1, Failures: 0, Skips: 0
===============================================Deleting directory C:\Users\Dustin\AppData\Local\Temp\dustin.examples.TestNGDemo
test:
BUILD SUCCESSFUL (total time: 2 seconds)

上面的示例显示了开始使用TestNG是多么容易,特别是如果人们正从JUnit迁移到TestNG并正在使用NetBeans 7.2 beta。 当然,还有更给TestNG的不是这个,而是学习一个新的框架通常是最困难的,在开始和NetBeans 7.2得到一个开了一个快速启动。

参考: NetBeans 7.2在Inspired by Actual Events博客中从JCG合作伙伴 Dustin Marx 引入了TestNG 。


翻译自: https://www.javacodegeeks.com/2012/06/netbeans-72-introduces-testng.html

netbeans7.4

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/356336.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

java.net.noroute,java.net.NoRouteToHostException: No route to host

今天重装了服务器的系统之后,重新在两台服务器布署es集群之后,发现es启动报错:[2015-06-16 10:33:33,455][WARN ][transport.netty ] [ElasticSearch_01] exception caught on transport layer [[id: 0x10560167]], closing connect…

2016年成功的Java开发人员简介

2015年即将结束。 现在是时候总结过去一年做了什么和没有做什么的时候了。 此外,现在是预测下一个2016年的好时机。 您已经猜到这篇文章是关于2016年理想的Java开发人员的。 我想给你一个惊喜,这次我更改了预测的格​​式。 为了使预测更非个人化&#…

Laravel 清空配置缓存

清空配置缓存 php artisan cache:clear php artisan config:clear 转载于:https://www.cnblogs.com/fsong/p/6230644.html

matlab ssgs工具箱,基于PI控制方式的1A开关电源MATLAB仿真研究

基于 PI 控制方式的 1A 开关电源 MATLAB 仿真研究学院:电气与光电工程学院专业:电气工程及其自动化班级:基于 PI 控制方式的 1A 开关电源 MATLAB 仿真研究0目录0 绪论 --------------------------------------------------------------------…

禁用导航栏的右滑返回实现全屏手势返回

今天发现项目中push 的也面的右滑都无法pop 查阅相关资料发现 导航栏右滑手势失效基本有两种情况 1; self.navigationController.interactivePopGestureRecognizer.enabled NO;这个 interactivePopGestureRecognizer手势是控制系统导航右滑返回的关键,让…

猿圈php,路飞学城-学习文档

性能管理介绍CPU性能管理磁盘性能管理网络性能管理内存性能管理性能管理介绍操作系统对硬件资源统一管理,并把资源分配给各个APP使用,资源的使用情况直接影响到程序运行的速度,如果资源使用过高,甚至会造成服务器宕机,…

spring roo_使用Spring Roo进行快速云开发–第1部分:Google App Engine(GAE)

spring rooSpring Roo是在Java平台上提供快速应用程序开发的工具。 我已经解释了何时使用它: http : //www.kai-waehner.de/blog/2011/04/05/when-to-use-spring-roo 。 Spring Roo目前支持两种针对云计算的解决方案:Google App Engine(GAE&a…

requests高级用法

会话对象 当你向同一主机发送多个请求时,session会重用底层的tcp连接,从而提升性能,同时session也会为所有请求保持 cookie。 #!/usr/bin/env python # -*- coding:utf-8 -*- # __author__:kzg import requestss requests.Session() # 此地址…

怎样恢复oracle函数,Oracle闪回恢复误删除的表、存储过程、包、函数...

在日常的数据库开发过程汇总难免会出现一些误删除的动作,对于一些误删的操作我们可以通过oracle提供的闪回机制恢复误删数据,从而避免出现较大的生产事故.下面是本人平时工作中积累的一些常用的操作,非常简单实用,分享给大家.恢复dml误删的数据:select *…

Atitit各种SDM 软件开发过程SDP sdm的ddd tdd bdd设计

Atitit各种SDM 软件开发过程SDP sdm的ddd tdd bdd设计 1.1. software development methodology (also known as SDM 1 1.2. 历史1 1.3. 常见方法2 1.4. DDD Domain Drive Design,也就是领域驱动开发。2 1.5. Tdd TDD(测试驱动开发(Test-Driven Developm…

jOOQ API设计缺陷的奇怪发生

jOOQ是一种内部领域特定语言(DSL) ,它以Java(宿主语言)建模SQL语言(外部DSL)。 这篇热门文章描述了jOOQ API的主要机制: Java Fluent API设计器速成课程 。 任何人都可以根据该文章…

精馏塔matlab,MATLAB图解精馏塔理论塔板数程序代码

《MATLAB图解精馏塔理论塔板数程序代码》由会员分享,可在线阅读,更多相关《MATLAB图解精馏塔理论塔板数程序代码(6页珍藏版)》请在人人文库网上搜索。1、MATLAB图解精馏塔理论塔板数程序代码function distillation %文件名“distillation”可以更改% 输入…

c# 衍生类和基类的构造顺序

public class MyDeriveClass:MyBaseClass{public MyDeriveClass():base(){}int derive_int 1;}public class MyBaseClass{public MyBaseClass(){}int base_int 1;} var cls new MyDeriveClass(); 调用顺序如下: derive_int 1;base_int 1;MyBaseClass(); MyDeriveClass();…

oracle unused用法,set unused的用法(ORACLE刪除字段)

set unused的用法(ORACLE刪除字段)一、問題現場有一張大數據量的分區表,數據量在10G以上。因某種原因需要刪除其中的某些字段。如果直接用alter table1 drop (column1,column2);或者alter table1 drop column column1;和alter table1 drop column column2;的話&…

java 计算协方差_Java的深度:通过协方差暴露的API泄漏

java 计算协方差Java有时可能非常棘手,特别是在API设计中。 让我们看一个非常有趣的展示柜。 jOOQ强烈地将API与实现分开。 所有API都在org.jooq包中,并且是公共的。 大多数实现是在org.jooq.impl包和package-private中。 只有工厂和一些专用的基础实现是…

shell启动oracle客户端,Shell实现的Oracle启动脚本分享

Usage: sh oracled [start|stop|restart] SIDs 其中SIDs是数据库名,多个名称之间用逗号分隔。缺省的操作是 restart ,也可以指定需要进行的操作( start | stop | restart )#!/bin/shcmdname"restart"# get oracle sid information from env by…

使用Java 8 Lambda,流和聚合

总览 在本文中,我们将介绍使用Java 8 lambda,流和聚合来过滤和操作Collection中的对象。 这篇文章中的所有代码都可以在BitBucket中找到 。 在此示例中,我们将创建许多对象,这些对象代表我们IT基础架构中的服务器。 我们将这些对…

易语言微凉模块oracle,跟着微凉学易语言 【简单子类化】

本帖最后由 【微凉清风】 于 2011-1-20 18:23 编辑易语言的子类化文章太少了,本人文笔也不好哈,看看VB得吧,别说英文看不懂,看不懂你的易语言水平永远不会提高!一,初识子类当你还不碰过子类的时候,你看到这个标题,定会问:"啥叫子类?".因为你知道我定会为你解答.(阴险…

node服务的监控预警系统架构

需求背景 目前node端的服务逐渐成熟,在不少公司内部也开始承担业务处理或者视图渲染工作。不同于个人开发的简单服务器,企业级的node服务要求更为苛刻: 高稳定性、高可靠性、鲁棒性以及直观的监控和报警 想象下一个存在安全隐患且没有监控预警…

oracle中or会使索引,为何查询条件中多了 OR 选项,索引就走全扫描?

ORACLE 11204, SOLARIS如下:原始写法,where 条件中,有 OR 条件,这时,索引 IDX_BD_LOTMASTER_NO 走全索引扫描,导致效率非常低,-bash-3.2$ sqlplusSQL*Plus: Release 11.2.0.4.0 Production on…