一.实验内容及其步骤

1.要想对某个程序进行单元测试,我们先是在eclipse中建立了一个新的项目,项目的名字是TDDDmeo。并在这个新的项目里右键单击创建一个source floder。并将floder的名字命名为test。

2.在创建好的test处右键单击,进行junit test case。之后,在src的文件夹里创建一个新的类,类的名字叫做MyUtil,它也就是我们要测试的类。

3.同样的道理,在生成的test包里创建一个新的类,它的名字叫做MyUtilTest,我们就是要用这个类对MyUtil进行测试。接下来,我们要对MyUtil类进行测试。

4.如果测试失败,在程序的左上方就会出现一个红条,证明程序出现了问题。将上面红框哪里的分数改为60,再运行一遍那个程序,就会出现绿条,证明程序测试成功了。

在本次试验中,我们进行了单元测试的学习,我用的是eclipse+Windows的形式,

通过一些基本的单元测试完成了本次的实验。

二.本章程序练习:

本章的练习题是编写一个复数类。按照实验要求编写了测试代码:

Complex类要输出实部,输出虚部,并按照a+bi的形式输出复数。

Complex类中有两个变量,实部RealPart和虚部ImaginaryPart。

实现复数类的产品代码:

public class complex {

//实部realpart,虚部imaginPart

private double realPart;

private double imaginPart;

//复数类Complex()构造函数,将实部虚部都置为0

public complex(){

this.realPart = 0;

this.imaginPart = 0;

}

//Complex(double r,double i)创建复数对象的同时完成复数的实部,虚部的初始化

public complex(double r,double i){

this.realPart = r;

this.imaginPart = i;

}

//getRealPart()获取实部

public double getRealPart(){

return realPart;

}

//getImaginaryPart()获取虚部

public double getImaginaryPart(){

return imaginPart;

}

//setRealPart(double d)设置实部

public void setRealPart(double d){

this.realPart = d;

}

//setImaginaryPart(double d)设置虚部

public void setImaginaryPart(double d){

this.imaginPart = d;

}

//add(Complex c)复数相加

public void add(complex c1,complex c2){

complex c = new complex(c1.realPart+c2.realPart,c1.imaginPart+c2.imaginPart);

print(c);

}

//minus(Complex c)复数相减

public void minus(complex c1,complex c2){

complex c = new complex(c1.realPart-c2.realPart,c1.imaginPart-c2.imaginPart);

print(c);

}

//ComplexMulti(Complex c)复数相乘

public void ComplexMulti(complex c1,complex c2){

complex c = new complex(c1.realPartc2.realPart-c1.imaginPartc2.imaginPart,c1.realPartc2.imaginPart+c1.imaginPartc2.realPart);

print(c);

}

//toString()把当前复数对象的实部,虚部组合成a+bi的字符串形式

public void print(complex c){

double a = c.realPart;

double b = c.imaginPart;

System.out.println(a+"+"+b+"i");

}

}

测试这个类的代码是:

import org.junit.Test;

import junit.framework.TestCase;

public class complextest extends complex {

      @Test
public void printTest(){
complex c1 = new complex(3.5,9);
complex c2 = new complex(9,23);
complex c = new complex();
c.ComplexMulti(c2, c1);
c.add(c1, c2);
c.minus(c1, c2);
}

}

代码编好后,在eclipse上运用TDD模式测试一下代码,出现了绿条:

证明程序测试成功了。

三.实验感想总结:

本次的java的实验学习中,我们在不断地单元测试改进中,知道了怎样去编写出更完整的代码,并且代码的稳定性越来越高,这也是成为优秀的程序员的必经之路。

20145127《java程序设计》第二次实验的更多相关文章

  1. java程序设计第二次实验报告

    北京电子科技学院(BESTI) 实验报告 课程:数据结构    班级:1352    姓名:何伟钦     学号:20135223 成绩:            指导教师:娄嘉鹏      实验日期: ...

  2. java的第二个实验——JAVA面向对象程序设计

    java的第二个实验——JAVA面向对象程序设计 北京电子科技学院 实     验    报     告 课程:Java程序设计 班级:1352 姓名:林涵锦 学号:20135213 成绩:      ...

  3. 20145127《java程序设计》第一次实验

    <java程序设计>第一次实验 实验内容及其步骤 1.使用JDK编写简单的Java小程序: Java编译的方法有很多,最基础最简单的就是使用命令行,记事本,Java虚拟机直接进行编译,下面 ...

  4. 《JAVA程序设计》 20155208 实验四 Android程序设计

    <JAVA程序设计> 20155208 实验四 Android程序设计 实验一: 实验要求: Android Stuidio的安装测试: 参考<Java和Android开发学习指南( ...

  5. 20155339《java程序设计》第一次实验报告

    20155339<java程序设计>第一次实验报告 实验一 java开发环境的熟悉 实验内容 1.使用JDK编译.运行简单的java程序: 2.使用IDEA编辑.编译.运行.调试java程 ...

  6. 20145330《Java程序设计》第一次实验报告

    20145330<Java程序设计>第一次实验报告 实验一Java开发环境的熟悉 实验内容 1.使用JDK编译.运行简单的Java程序: 2.使用Eclipse 编辑.编译.运行.调试Ja ...

  7. 20145320《Java程序设计》第一次实验报告

    20145320<Java程序设计>第一次实验报告 北京电子科技学院(BESTI)实验报告 课程:Java程序设计 班级:1453 指导教师:娄嘉鹏 实验日期:2016.04.08 18: ...

  8. 20145317彭垚 《Java程序设计》第一次实验实验报告

    20145317彭垚 <Java程序设计>第一次实验实验报告 北京电子科技学院(BESTI)实验报告 课程:Java程序设计 班级:1453 指导教师:娄嘉鹏 实验名称:Java开发环境的 ...

  9. 《Java程序设计》课程实验要求

    目录 <Java程序设计>课程实验要求 注册实验楼账号 实验一 Java开发环境的熟悉 实验二<Java面向对象程序设计> 实验三 <敏捷开发与XP实践> 实验四 ...

  10. #《JAVA程序设计》 20155214 实验五 网络编程与安全

    <JAVA程序设计> 20155214 实验五 网络编程与安全 实验内容 掌握Socket程序的编写: 掌握密码技术的使用: 设计安全传输系统. 实验要求 要求一 结对实现中缀表达式转后缀 ...

随机推荐

  1. HDU 6318 - Swaps and Inversions - [离散化+树状数组求逆序数][杭电2018多校赛2]

    题目连接:http://acm.hdu.edu.cn/showproblem.php?pid=6318 Problem Description Long long ago, there was an ...

  2. 三种邻接表存图模板:vector邻接表、数组邻接表、链式前向星

    vector邻接表: ; struct Edge{ int u,v,w; Edge(int _u=0,int _v=0,int _w=0){u=_u,v=_v,w=_w;} }; vector< ...

  3. 【紫书】Play on Words UVA - 10129 欧拉回路

    题意:给你1e5个字符串,若前一个的末尾字母等于当前的首字母,则可以连在一起(成语接龙一个意思)判断是否可以将他们连在一起 题解:将首位看作点,单词看作边.变成欧拉回路问题. 判断出入度是否相等,再用 ...

  4. JZ2440裸板烧写(打补丁)

    制作uImage,需要上网下载内核+patch补丁 1.将内核用ftp发送到 打补丁patch -p1 < ../补丁文件名 打补丁文件(目录) 2.配置 :复制cp  configuratio ...

  5. OC导航栏自定义返回按钮

    [iOS]让我们一次性解决导航栏的所有问题 在默认情况下,导航栏返回按钮长这个样子   导航栏默认返回按钮 导航栏左上角的返回按钮,其文本默认为上一个ViewController的标题,如果上一个Vi ...

  6. Spark Sort Based Shuffle内存分析

    分布式系统里的Shuffle 阶段往往是非常复杂的,而且分支条件也多,我只能按着我关注的线去描述.肯定会有不少谬误之处,我会根据自己理解的深入,不断更新这篇文章. 前言 借用和董神的一段对话说下背景: ...

  7. [py]一些搜集到的问题

    过滤爬虫爬取下来的关键字 v1,来不及了,先上车 content = ['哈士奇', '二哈', '哈士奇图片','哈士奇图片', '哈士奇美丽价格', '哈士奇是个大傻逼', '猫咪图片', '猫咪 ...

  8. Linux中Readlink命令

    原文地址:http://blog.csdn.net/liangxiaozhang/article/details/7356829 readlink是Linux系统中一个常用工具,主要用来找出符号链接所 ...

  9. ios一些问题

    多线程,加锁,如何互斥. http里面的get put post的差别 sockect tcp udp

  10. 几乎考虑到了每个细节的php图片上传

    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> < ...