仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 782|回复: 18
打印 上一主题 下一主题

[学习教程] 来看JBuilder 2005单位测试之创立测试固件

[复制链接]
蒙在股里 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:33:10 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
手机用到的是用j2me所编出来的小程序。
在测试用例中经由过程setUp()、tearDown()创立测试固件,只能使这个测试固件在单个测试用例的分歧测试办法中共用,假如有多个测试用例都必要利用不异的测试固件,就必要将测试固件抽取到一个自力的类中。JBuilder供应了3个预界说的测试固件类,它们分离是:
·JDBC测试固件(JDBCFixture):用于猎取数据库毗连的测试固件,用户仅必要经由过程设置一些数据库信息,就能够用便利的办法猎取数据毗连。
·JNDI测试固件(JNDIFixture):用于摹拟从JDNI情况中猎取对象的测试固件。
·对照测试固件(ComparisionFixture):将测试输入到内部文件中,以便第二次测试时举行对照。
·自界说测试固件(CustomFixture):用户自界说的测试固件。
假如对JUnit的框架布局十分懂得,大概这些JBuilder扩大的测试固件对你来讲意义其实不年夜,它们不过是构建一些罕见的测试情况而已,你完整能够本人编写。在本节里,我们先容两个测试固件。
JDBC测试固件
假如你的工程中已有一个猎取数据毗连的大众类,你也有需要构建一个JDBC测试固件,由于JDBC测试固件不仅能够间接经由过程创立测试用例的导游间接指定,别的,JDBC测试固件还供应了很多面向测试的办法。
为了创立JDBC测试固件,我们先创立一个JDataStore的数据库,其数据文件位于<chapter25工程目次>/db/hr.jds,这个数据库的用户名和暗码是:sysdba/123456。hr.jds数据库中有一张EMPLOYEE的表,其布局以下所示:

<br>
图毛病!文档中没有指定款式的笔墨。EMPLOYEE表的数据
EMPLOYEE有3个字段,分离是ID、NAME和AGE,分离是String、String和int范例,并按上图所示填进3笔记录。
为了演示JDBC测试固件的详细利用,我们计划两个营业类:Employee和EmployeeDAO,此后用JDBC测试固件为测试EmployeeDAO供应数据毗连。这两个类的代码以下:
代码清单毛病!文档中没有指定款式的笔墨。Employee.java类
1.packagechapter25.db;
2.publicclassEmployee
3.{
4.privateStringid;
5.privateStringname;
6.privateintage;
7.publicEmployee(Stringid,Stringname,intage){
8.this.id=id;
9.this.name=name;
10.this.age=age;
11.}
12.publicStringgetId(){
13.returnid;
14.}
15.publicStringgetName(){
16.returnname;
17.}
18.publicintgetAge(){
19.returnage;
20.}
21.publicbooleanequals(Objecto){
22.if(oinstanceofEmployee){
23.Employeee1=(Employee)o;
24.returnid.equals(e1.getId())&&name.equals(e1.getName())&&age==e1.getAge();
25.}else{
26.returnfalse;
27.}
28.}
29.}
Employee类用于形貌EMPLOYEE表的一笔记录,该类会见数据库的EmployeeDAO代码以下所示:
代码清单毛病!文档中没有指定款式的笔墨。EmployeeDAO.java类
1.packagechapter25.db;
2.importjava.sql.*;
3.publicclassEmployeeDAO
4.{
5.privateConnectionconn;
6.publicEmployeeDAO(Connectionconn){
7.this.conn=conn;
8.}
9.publicEmployeefindById(Stringid)throwsSQLException
10.{
11.StringsqlStr="select*fromemployeewhereid="+id+"";
12.Statementstat=conn.createStatement();
13.ResultSetrs=stat.executeQuery(sqlStr);
14.if(rs.next()){
15.returnnewEmployee(id,rs.getString("name"),rs.getInt("age"));
16.}else{
17.returnnull;
18.}
19.}
20.}
<p>
轮性能微软曾做过一个例子,就是同一个项目用java和.net网页编程来作,结果开发周期,.net网页编程是java的一半,性能java是.net网页编程的十分之一,代码量java是.net网页编程的三倍。呵呵,这说明了什么,.net网页编程的全方位比java好。但是有的人说.net网页编程不能跨平台,这个问题我和我同学曾讨论过,都认为微软的.net网页编程很可能早都可以跨平台了,但是微软为了保护他们的操作系统,所以才没有推出跨平台的.net网页编程,只是推出了跨语言的.net网页编程,
柔情似水 该用户已被删除
沙发
发表于 2015-1-21 10:03:27 | 只看该作者
是一种为 Internet发展的计算机语言
精灵巫婆 该用户已被删除
板凳
发表于 2015-1-23 05:18:56 | 只看该作者
还好,SUN提供了Javabean可以把你的JSP中的 Java代码封装起来,便于调用也便于重用。
admin 该用户已被删除
地板
发表于 2015-1-25 09:07:27 | 只看该作者
你快去找一份Java的编程工作来做吧(如果是在校学生可以去做兼职啊),在实践中提高自己,那才是最快的。不过你得祈祷在公司里碰到一个高手,而且他 还愿意不厌其烦地教你,这样好象有点难哦!还有一个办法就是读开放源码的程序了。我们知道开放源码大都出自高手,他们设计合理,考虑周到,再加上有广大的程序员参与,代码的价值自然是字字珠叽,铿锵有力(对不起,偶最近《金装四大才子》看多了)。
莫相离 该用户已被删除
5#
发表于 2015-2-2 17:54:49 | 只看该作者
J2SE开发桌面应用软件比起 VC,VB,DEPHI这些传统开发语言来说,优势好象并不明显。J2ME对于初学者来说,好象又有点深奥,而且一般开发者很难有开发环境。
若相依 该用户已被删除
6#
发表于 2015-2-8 03:22:46 | 只看该作者
不过,每次的执行编译后的字节码需要消耗一定的时间,这同时也在一定程度上降低了 Java 程序的运行效率。
灵魂腐蚀 该用户已被删除
7#
发表于 2015-2-25 17:56:42 | 只看该作者
是一种简化的C++语言 是一种安全的语言,具有阻绝计算机病毒传输的功能
深爱那片海 该用户已被删除
8#
发表于 2015-3-7 08:33:29 | 只看该作者
Java 不同于一般的编译执行计算机语言和解释执行计算机语言。它首先将源代码编译成二进制字节码(bytecode),然后依赖各种不同平台上的虚拟机来解释执行字节码。从而实现了“一次编译、到处执行”的跨平台特性。
冷月葬花魂 该用户已被删除
9#
发表于 2015-3-11 16:26:26 | 只看该作者
Java 不同于一般的编译执行计算机语言和解释执行计算机语言。它首先将源代码编译成二进制字节码(bytecode),然后依赖各种不同平台上的虚拟机来解释执行字节码。从而实现了“一次编译、到处执行”的跨平台特性。
透明 该用户已被删除
10#
发表于 2015-3-13 01:07:08 | 只看该作者
如果要向java web方向发展也要吧看看《Java web从入门到精通》学完再到《Struts2.0入门到精通》这样你差不多就把代码给学完了。有兴趣可以看一些设计模块和框架的包等等。
11#
发表于 2015-3-15 22:25:16 | 只看该作者
如果你学过HTML,那么事情要好办的多,如果没有,那你快去补一补HTML基础吧。其实JSP中的Java语法也不多,它更象一个脚本语言,有点象ASP。
只想知道 该用户已被删除
12#
发表于 2015-3-17 19:09:38 | 只看该作者
你一定会高兴地说,哈哈,原来成为Java高手就这么简单啊!记得Tomjava也曾碰到过一个项目经理,号称Java很简单,只要三个月就可以学会。
分手快乐 该用户已被删除
13#
发表于 2015-3-24 20:51:07 | 只看该作者
不过,每次的执行编译后的字节码需要消耗一定的时间,这同时也在一定程度上降低了 Java 程序的运行效率。
第二个灵魂 该用户已被删除
14#
发表于 2015-3-27 15:11:57 | 只看该作者
你就该学一学Servlet了。Servlet就是服务器端小程序,他负责生成发送给客户端的HTML文件。JSP在执行时,也是先转换成Servlet再运行的。虽说JSP理论上可以完全取代Servlet,这也是SUN推出JSP的本意,可是Servlet用来控制流程跳转还是挺方便的,也令程序更清晰。接下来你应该学习一下Javabean了,可能你早就看不管JSP在HTML中嵌Java代码的混乱方式了,这种方式跟ASP又有什么区别呢?
小女巫 该用户已被删除
15#
发表于 2015-4-1 09:53:01 | 只看该作者
你就该学一学Servlet了。Servlet就是服务器端小程序,他负责生成发送给客户端的HTML文件。JSP在执行时,也是先转换成Servlet再运行的。虽说JSP理论上可以完全取代Servlet,这也是SUN推出JSP的本意,可是Servlet用来控制流程跳转还是挺方便的,也令程序更清晰。接下来你应该学习一下Javabean了,可能你早就看不管JSP在HTML中嵌Java代码的混乱方式了,这种方式跟ASP又有什么区别呢?
愤怒的大鸟 该用户已被删除
16#
发表于 2015-4-1 11:10:16 | 只看该作者
J2SE开发桌面应用软件比起 VC,VB,DEPHI这些传统开发语言来说,优势好象并不明显。J2ME对于初学者来说,好象又有点深奥,而且一般开发者很难有开发环境。
谁可相欹 该用户已被删除
17#
发表于 2015-4-8 03:11:54 | 只看该作者
科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。
简单生活 该用户已被删除
18#
发表于 2015-4-12 13:56:57 | 只看该作者
应用在电视机、电话、闹钟、烤面包机等家用电器的控制和通信。由于这些智能化家电的市场需求没有预期的高,Sun公司放弃了该项计划。随着1990年代互联网的发展
飘灵儿 该用户已被删除
19#
发表于 2015-4-16 16:11:39 | 只看该作者
关于设计模式的资料,还是向大家推荐banq的网站 [url]http://www.jdon.com/[/url],他把GOF的23种模式以通俗易懂的方式诠释出来,纯Java描述,真是经典中的经典。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-23 07:49

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表