南邮软件工程实验三

合集下载

南邮操作系统实验三

南邮操作系统实验三

南邮操作系统实验三实验报告( 2014/ 2015 学年第一学期)课程名称操作系统教程实验名称页面调度算法的模拟实现实验时间2014 年12 月 3 日指导单位计算机软件学院指导教师徐鹤学生姓名楚灵翔班级学号B12040731 学院(系) 计算机学院专业软件工程实验报告实验名称页面调度算法的模拟实现指导教师徐鹤实验类型上机实验学时 2 实验时间2014.12.3一、实验目的和要求1、模拟实现页面调度算法中的FIFO、LRU和OPT算法2、进程的页面请求序列,即一系列页面号(页面号用整数表示,用空格作为分隔符),用来模拟待换入的页面;3、输出要求:显示缺页的总次数和缺页中断率二、实验环境(实验设备)VMware Workstation,Ubuntu三、实验过程描述#define n 12#define m 3int page[n]; //保存需要访问的页面int i,j,q,mem[m]={0},List[m][n],sum;char flag,f[n];void Init();void FIFO();void LRU();void main(){cout<<"*********************实验***********************"<<endl;< bdsfid="127" p=""></endl;<> cout<<" ┏━━━━━━━━━━━━━━━━━━━━━━━┓"<<endl;< bdsfid="129" p=""></endl;<>cout<<" ┃页面调度算法的模拟实现┃"<<endl;< bdsfid="131" p=""></endl;<>cout<<" ┠───────────────────────┨"<<endl;< bdsfid="133" p=""></endl;<>cout<<" ┃先进先出算法FIFO ┃"<<endl;< bdsfid="135" p=""></endl;<>cout<<" ┃最近追少使用算法LRU ┃"<<endl;< bdsfid="137" p=""></endl;<>cout<<" ┗━━━━━━━━━━━━━━━━━━━━━━━┛"<<endl;< bdsfid="139" p=""></endl;<>cout<<" 请输入页面访问序列:\n"<<" ";for(i=0;i<n;i++)< bdsfid="142" p=""></n;i++)<>cin>>page[i];cout<<endl;< bdsfid="145" p=""></endl;<>FIFO();Init();LRU();}void Init() //初始化函数{sum=0; //初始化计算缺页次数的变量for(int i=0;i<m;i++)< bdsfid="153" p=""></m;i++)<>mem[i]=0;for(i=0;i<m;i++)< bdsfid="156" p=""></m;i++)<>for(j=0;j<n;j++)< bdsfid="158" p=""></n;j++)<>List[i][j]=0;}void FIFO(){for(i=0;i<="">{q=0;while((page[i]!=mem[q])&&(q!=m))q++;if(q==m)flag='*'; //缺页,则置标志flag为'*' elseflag=' ';if(flag=='*'){for(j=m-1;j>0;j--) //淘汰最先调入的页面调入当前访问的mem[j]=mem[j-1];mem[0]=page[i];}for(j=0;j<m;j++)< bdsfid="178" p=""></m;j++)<>List[j][i]=mem[j];f[i]=flag;}cout<<" 0代表为空,*代表有缺页:\n";cout<<endl;< bdsfid="184" p=""></endl;<>cout<<"-----------FIFO算法结果------------"<<endl;< bdsfid="186" p=""></endl;<>for(i=0;i<m;i++)< bdsfid="188" p=""></m;i++)<>{for(j=0;j<n;j++)< bdsfid="191" p=""></n;j++)<>cout<<list[i][j]<<" ";<="" bdsfid="193" p=""></list[i][j]<<"> cout<<endl;}< bdsfid="195" p=""></endl;}<>for(i=0;i<n;i++)< bdsfid="197" p=""></n;i++)<>{if(f[i]=='*')sum++;cout<<f[i]<<" ";<="" bdsfid="202" p=""></f[i]<<">}cout<<"\n-----------------------------------"<<endl;<bdsfid="205" p=""></endl;<>cout<<"缺页次数是:"<<sum<<"缺页率是:"<<<endl;<="" bdsfid="207" p=""></sum<<"缺页率是:"<}void LRU(){for(i=0;i<="">{q=0;while((page[i]!=mem[q])&&(q!=m))q++;if(q==m)flag='*'; //缺页,则置标志flag为'*'elseflag=' ';for(j=q;j>0;j--)mem[j]=mem[j-1];mem[0]=page[i];for(j=0;j<m;j++)< bdsfid="225" p=""></m;j++)<>List[j][i]=mem[j];f[i]=flag;}cout<<endl;< bdsfid="229" p=""></endl;<>cout<<"------------LRU算法结果------------"<<endl;< bdsfid="231" p=""></endl;<>for(i=0;i<m;i++)< bdsfid="233" p=""></m;i++)<>{for(j=0;j<n;j++)< bdsfid="236" p=""></n;j++)<>cout<<list[i][j]<<" ";<="" bdsfid="238" p=""></list[i][j]<<"> cout<<endl;< bdsfid="240" p=""></endl;<>}for(i=0;i<n;i++)< bdsfid="243" p=""></n;i++)<>{if(f[i]=='*')sum++;cout<<f[i]<<" ";}<="" bdsfid="248" p=""></f[i]<<">cout<<endl;< bdsfid="250" p=""></endl;<>cout<<"-----------------------------------"<<endl;<bdsfid="252" p=""></endl;<>cout<<"缺页次数是:"<<sum<<"缺页率是:"<<<=""></sum<<"缺页率是:"<实验结果:四、实验小结(包括问题和解决方法、心得体会、意见与建议等)通过本次实验,我对于页面调度算法有了更加深刻的认识。

南京邮电大学软件设计实验报告

南京邮电大学软件设计实验报告

软件设计报告( 2014 / 2015 学年第二学期)课程名称软件设计指导老师赵江实习时间第十八周学生姓名学号____学院______专业软件设计课程编号:B0465011C适用专业:班级:一、所涉及的课程及知识点涉及的课程:第6学期之前的专业基础课程。

知识点:专业基础课程中所学的知识点。

二、目的与任务目的:通过软件设计,培养学生的实践能力和创新精神,加强学生对专业基础课程的理解和掌握,加强学生高级语言编程能力、应用软件以及仿真能力。

任务:选择以下任一模块进行设计:Matlab软件仿真、C语言及应用。

软件设计的内容题目1:如果给出两个矩阵⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=136782078451220124A ,⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=087654321B ,执行下面的矩阵运算命令。

(1)B A *5+和I B A +-分别是多少(其中I 为单位矩阵) (2)B A *⋅和B A *将分别给出什么结果,它们是否相同为什么 逻辑功能程序:function [ ] = EXP1()A=[4,12,20;12,45,78;20,78,136]; B=[1,2,3;4,5,6;7,8,0]; I=eye(3); disp('A+5*B='); disp(A+5*B); disp('A-B+I=') disp(A-B+I); disp('A.*B='); disp(A.*B) disp('A*B='); disp(A*B); End 实验过程与结果打开matlab ,在命令窗口“Command Window ”中键入edit,启动程序编辑器。

输入完整程序后利用save as 储存为M 文件,文件名为EXP1。

返回主界面,在命令窗口“Command Window”中输入函数EXP1(),按下回车,得到程序运行结果如下:>> EXP1( )A+5*B=9 22 3532 70 10855 118 136A-B+I=4 10 178 41 7213 70 137A.*B=4 24 6048 225 468140 624 0A*B=192 228 84738 873 3061284 1518 528实验结果分析(1)利用MATLAB提供的disp函数既可以输出表达式、数值,也可以输出字符串,其调用方式为:disp(表达式或数值)、disp(‘待显示字符串’);(2)在MATLAB的矩阵运算中,+、-运算符通用,表示矩阵相加、减;*与.*不同在于*表示矩阵乘法,而.*表示矩阵对应位置元素相乘,所以*要求两个矩阵的行、列数互为转置,而.*则要求两个矩阵行、列数要相同;(3)使用eye可以获得单位矩阵函数(矩阵对角线处元素为1,其余元素为0),矩阵的阶数由括号内的值决定,格式为eye(n),n为矩阵阶数。

南邮计算机网络实验报告

南邮计算机网络实验报告
发送方的IP地址(Sender IP address):
192.168.65.254(192.168.65.254)
目标的MAC地址(Target MAC address:):
vmware_c0:00:01(00:50:50:c0:00:01)
目标的IP地址(Target IP address:):
在主机B中增加对A特定网络的路由项:
route add 0.0.0.0 mask 0.0.0.0 192.168.2.1 metric 1
设置好,用ping命令测试主机AB之间连通性,如用特定网络效果是一样的,AB之间可以通信。
9、如果将主机AB的IP设在同一网络中,则不需要设置路由,并可以直接通信,这就是直接交付。本次试验中,我们试着用了一下这种方法。
Micro-St_09:8e:c2
(44:8a:5b:09:8e:c2)
第二行数据链路层:
Destination(目的地址):_Broadcast(ff:ff:ff:ff:ff:ff)_________(这是个MAC地址,这个MAC地址是一个广播地址,就是局域网中的所有计算机都会接收这个数据帧)Source(源地址):Micro-St_09:8e:c2(44:8a:5b:09:8e:c2)帧中封装的协议类型:ARP(0x0806)(这个是ARP协议的类型编号。)Trailer:是协议中填充的数据,为了保证帧最少有64字节。
实验总结
实验成绩
实验名称
实验三使用Wireshark工具抓取数据包并进行分析
实验目的
1、掌握Wireshark工具的安装和使用方法
2、理解TCP/IP协议栈中IP、TCP、UDP等协议的数据结构
3、掌握ICMP协议的类型和代码

南邮 软件工程-Unit_03-0_结构化分析和设计方法

南邮 软件工程-Unit_03-0_结构化分析和设计方法
6
结构化分析

数据流图:建立功能模型

问题提出
可行性研究


提供了功能建模机制也提供了信息流建模机制 是系统逻辑功能的图形表示,没有任何具体的物理元素 描绘了信息在软件中流动和被处理的情况 描绘“做什么”而不考虑“怎样做” 正方形(或立方体):表示数据的源点或终点 圆形(或圆角矩形):代表变换数据的处理 开口矩形(或两条平行横线):代表数据存储 箭头:表示数据流,即特定数据的流动方向
结构化编程
15
结构化分析

数据字典(Data Dictionary,DD)

问题提出
可行性研究
结构化分析
1) 数据流词条的描述 数据流名: 说明:简要介绍作用即它产生的原因和结果。 数据流来源:即该数据流来自何方。 数据流去向:去向何处。 数据流组成:数据结构。 每个数据量流通量:数据量、流通量。
结构化设计

结构化编程

详细设计:模块内部的具体设计
28
结构化设计

问题提出

基本思想:自顶向下的模块化设计方法 描述方式:软件结构图 设计方法:(面向数据流的方法)

可行性研究
结构化分析

DFD映射 变换流→变换分析法 事务流→事务分析法
结构化设计
结构化编程
29
结构化设计

软件结构图
结构化分析和设计方法
王传栋 南京邮电大学计算机学院
传统视角的软件生命周期

问题定义 可行性研究 结构化分析 结构化设计 结构化的程序设计 测试 运行和维护
2
问题定义

任务:

问题提出

南京邮电大学Java实验分析报告三

南京邮电大学Java实验分析报告三

南京邮电大学Java实验报告三————————————————————————————————作者:————————————————————————————————日期:实验报告(2015/2016学年第一学期)课程名称JA V A语言程序设计实验名称流处理程序设计实验时间2015 年12 月25 日指导单位计算机学院软件工程系指导教师邓玉龙学生姓名李健琅班级学号B14070427 学院(系) 物联网专业网络工程实验报告实验名称流处理程序设计指导教师邓玉龙实验类型设计实验学时 2 实验时间2015-12-25 一、实验目的和任务要求学生能在学习和理解课堂学习内容中JA V A流编程理论的基础上,学习并逐步掌握JA V A流程序的编写和调试,学习根据处理需求对不同流的正确选择使用和组合使用方法。

二、实验环境(实验设备)PC微型计算机系统,Microsoft Windows操作系统,,SUN Java Development Kit开发工具包,NetBeans开发工具。

三、实验原理及内容(包括操作过程、结果分析等)实验内容:设计和编写一个程序从键盘读入一行字符串,将其写入一个文本文件中,再编写另一个程序从文本文件中读入字符串并在命令行窗口显示出来。

实验源程序:(1)写入文本程序:import java.io.*;import java.util.Scanner;public class Write {public static void main(String args[]) {File f=new File("test.txt"); //创建文本文件对象FileWriter fw; //字符输出流对象Scanner in = new Scanner(System.in); //准备从键盘输入字符串System.out.print("请输入文本字符:"); //键盘输入提示String s = in.nextLine(); //从键盘输入文本字符串try{fw=new FileWriter(f); //创建字符输出流对象fw.write(s + "\n"); //写字符串到文件fw.close(); //关闭字符输出流System.out.println("写文本文件完毕");}catch (IOException e) {System.out.println("写文件错误!");}}}(2)读取文本程序:import java.io.*;import java.util.Scanner;public class Read {public static void main(String args[]){File f;FileReader fr; //字符/输入流对象BufferedReader br; //字符输入缓冲流Scanner in =new Scanner(System.in); //准备从键盘输入字符串System.out.print("请输入要读入的文件名:"); //键盘输入提示String s=in.nextLine(); //从键盘输入文件名try{f =new File(s); //创建文件对象fr =new FileReader(f); //创建字符输入流对象br =new BufferedReader(fr); //字符输入流接入到输入缓冲流String str; //变量s存放读入的文本行System.out.println("读出的文本文件为:");while(true){str=br.readLine(); //从文本文件读入一行if(str == null) break; //读入结束System.out.println(str); //输出显示读入的文本}fr.close();br.close();}catch (IOException e) {System.out.println("您所要读写的文件不存在!");//显示错误信息}}}实验结果:四、实验小结(包括问题和解决方法、心得体会等)通过本次实验,让我学会了用Java语言进行文本文件的读写,并且加强了自己对Java语言的运用编程能力,真正理解了关于流处理的一些知识内容。

南邮信息综合实验报告-实验三

南邮信息综合实验报告-实验三

通信与信息工程学院2016/2017学年第一学期信息技术综合实验报告专业广播电视工程学生班级B130114学生学号B13011413学生姓名陈超实验一电视节目制作一、实验目的学习非线性编辑系统的操作使用,掌握非线性系统节目编辑流程,熟悉编辑软件的功能及应用。

了解大洋资源管理器主要功能,掌握故事板文件和项目文件的创建,掌握素材的选中,素材的排序、复制、粘贴、删除、移动、导入、导出,以及素材创建的基本方法。

二、实验内容1、素材的导入和管理及采集(1)练习在项目窗口中导入素材文件;(2)熟悉素材的管理;(3)熟悉素材的采集方法。

2、编辑影片(1)练习在“时间线”窗口中添加、删除素材的方法;(2)练习在“时间线”窗口中处理素材的方法。

三、实验步骤打开premiere软件,新建项目“1316”。

1、制作倒计时片头新建一个序列,在视频轨道内添加五个数字的字幕,将每个数字时间设置为1秒,从5到1倒序排放。

新建字幕,设计背景。

新添时钟式擦除的效果,设置时间为5秒。

2、插入图片或视频作为内容点击“文件”、“导入”,将节目素材导入Premiere软件,从项目面板中拉出节目素材,使用对齐功能紧贴在倒计时之后。

3、制作字幕新建一个字幕。

设置为滚动播放,选择开始于屏幕外,结束于屏幕外。

新添文本框,输入标题“28-304”与正文部分“B130111413”、“B13011416”的文字。

效果如下图。

四、实验小结通过此次实验,我们学会了如何使用Premeire软件制作视频,重点掌握了包括开头倒计时、视频图像等素材插入以及结尾字幕等基本操作;在动手制作简短视频的同时,也极大地激发起对于对非线性系统节目编辑的兴趣与实践能力。

实验二 TS码流离线分析一、实验目的在了解MPEG-2 TS码流复用原理之后,利用码流分析软件观察实际MPEG-2码流结构。

二、实验内容利用码流分析软件观察实际MPEG-2码流结构,查看码流的SI信息、PID分配使用情况、带宽使用情况及特定PID包数据。

软件工程形考三实验

软件工程形考三实验

软件工程形考三实验实验目的本实验旨在通过设计和实现一个软件项目,加深对软件工程理论和实践的应用,提高软件项目设计与开发的能力。

实验内容1. 确定软件项目的需求和目标,并进行需求分析和概要设计。

2. 根据需求和设计编写代码,完成软件项目的详细设计与实现。

3. 进行软件项目的测试,修复bug并进行性能优化。

4. 完成软件项目的文档撰写,包括实验报告和用户手册等。

实验步骤需求分析与概要设计,根据软件项目的需求,进行需求分析与概要设计。

对于此次实验,我们假设软件项目是一个在线购物系统,具备以下功能:用户注册与登录商品浏览与搜索购物车管理订单管理支付与配送在需求分析阶段,分析每个功能的详细需求和用户交互流程,并进行概要设计,确定系统的整体架构和各个模块的关系与功能。

详细设计与实现根据概要设计的结果,进行详细设计与编码实现。

在这个阶段,需要确定每个功能的具体实现方式,设计数据库、界面和业务逻辑等。

在编码实现过程中,要注意编码规范、模块化设计和代码可重用性。

测试与优化完成软件项目的实现后,进行测试。

测试需要分别对每个功能进行单元测试和整体集成测试,发现bug并进行修复。

对软件的性能进行评估,进行性能优化,保证系统能够稳定可靠地运行。

文档撰写,完成软件项目的文档撰写工作。

包括实验报告、用户手册和技术文档等。

实验报告应包括需求分析、详细设计、实现过程和测试结果等内容,用户手册应该详细说明软件的功能和使用方法,技术文档则对系统的架构和实现进行详细说明。

实验通过本次实验,我们深入理解了软件工程的理论和实践,掌握了软件项目的设计与开发流程。

在实践中,我们遇到了各种问题和挑战,但通过团队合作和不断学习,最终成功完成了软件项目的开发。

尽管还有很多不足和改进的地方,但这次实验对我们的软件工程能力提升有着极大的帮助。

参考资料1. 软件工程导论,张海藩,高教出版社2. 软件项目管理实践,曹健,电子工业出版社。

软件工程形考三实验

软件工程形考三实验

软件工程形考三实验软件工程形考三实验实验背景软件工程是现代软件开发过程中的一门重要学科,其涉及到软件的设计、开发、测试、维护等方面。

为了全面了解和掌握软件工程的基本知识和技能,培养学生的软件开发能力,软件工程面向对象课程通常会设置一系列实验。

实验目的本次实验旨在帮助学生理解软件工程的基本理论和实践技能,在实际项目中应用所学的知识,通过团队合作完成一个小型软件项目。

实验要求实验要求学生以小组为单位,完成一个小型软件项目,项目的主题和功能要求由教师提供。

每个小组需要按照软件工程的规范进行需求分析、设计、编码、测试等工作,并提交相应的文档和代码。

实验步骤1. 需求分析根据教师提供的项目主题和功能要求,小组成员需要分析用户需求,明确软件的功能需求和非功能需求,并将其记录在需求分析文档中。

在需求分析过程中,需要与教师和用户充分沟通,确保对需求的理解准确。

2. 系统设计在系统设计阶段,小组成员需要根据需求分析结果,设计软件的体系结构、模块划分和接口设计。

可以使用UML图等工具进行系统设计,将设计结果记录在系统设计文档中。

3. 编码实现根据系统设计文档,小组成员需要编写代码实现软件的各个功能模块。

在编码过程中,需要遵循编码规范,保持代码的可读性和可维护性。

4. 单元测试在完成代码编写后,小组成员需要进行单元测试,验证代码的正确性。

可以使用单元测试框架进行测试,并记录测试结果和测试覆盖率等指标。

5. 系统测试在整个软件开发过程完成后,小组成员需要对整个系统进行测试。

可以进行功能测试、性能测试、压力测试等,确保软件能够满足用户的需求。

测试结果需要记录在系统测试文档中。

6. 文档编写在以上各阶段完成后,小组成员需要根据实际开发情况撰写相应的文档,包括需求分析文档、系统设计文档、单元测试文档、系统测试文档等。

文档需要按照Markdown格式编写,以方便阅读和分享。

实验评估本次实验将根据小组提交的文档和代码进行评估。

评估的主要内容包括需求分析的完整性、系统设计的合理性、代码的规范性、测试结果的准确性等。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
){
strType="不等边三角形";
}
//三角形既非三边全部相等,又非全部不等,只能是部分相等即等腰三角形
else{
strType="等腰三角形";
}
}
return strType;
}
}
package .njupt;
import junit.framework.TestCase;
public class aaaa extends TestCase {
String strType="不是三角形";
//判断是否是三角形
iHale Waihona Puke (isTriangle(triangle)){
//判断是否是等边三角形
if(triangle.lborderA==triangle.lborderB
&&triangle.lborderA==triangle.lborderC
&&triangle.lborderB==triangle.lborderC
private Book book1;
private Book book2;
public BookTest(String name) {
super(name);
}
protected void setUp() throws Exception {
super.setUp();
book1=new Book("ES",12.99);
){
strType="等边三角形";
}
//判断是否是不等边三角形
else if(triangle.lborderA!=triangle.lborderB
&&triangle.lborderA!=triangle.lborderC
&&triangle.lborderB!=triangle.lborderC
isTriangle=true;
}
}
return isTriangle;
}
/**
*判断三角形类型
*只有两条边相等的三角形返回字符串“等腰三角形”;
*三边均相等的三角形返回字符串“等边三角形”
*三边均不等的三角形返回字符串“不等边三角形”
*
*/
public static String getType(tttt triangle){
}
protected void tearDown() throws Exception {
super.tearDown();
t1=null;
t2=null;
}
public void testGetType() {
assertFalse(t1.isTriangle(t1));
assertTrue(t2.isTriangle(t2));
book2=new Book("The Gate",11.99);
}
protected void tearDown() throws Exception {
super.tearDown();
book1=null;
book2=null;
}
public void testEqualsObject(){
assertFalse(book2.equals(book1));
实验报告
(2015/2016学年第一学期)
课程名称
软件工程(双语)
实验名称
Software Unit Test
实验时间
2015

12

10

指导单位
计算机学院软件工程系
指导教师
陈云芳
学生姓名
钱颖
班级学号
B13040906
学院(系)
计算机学院
专业
软件工程
实验报告
实验名称
Software Unit Test
) {
//判断两边之和大于第三边
if((triangle.lborderA<(triangle.lborderB+triangle.lborderC))
&&(triangle.lborderB<(triangle.lborderA+triangle.lborderC))
&&(triangle.lborderC<(triangle.lborderA+triangle.lborderB))){
private tttt t1,t2;
public aaaa(String name) {
super(name);
}
protected void setUp() throws Exception {
super.setUp();
t1=new tttt(1,2,4);
t2=new tttt(3,4,5);
五、指导教师评语
成绩
批阅人
日期
this.lborderC = lborderC;
}
/**
*判断是否是三角形
*是返回true,不是返回false
*/
public static boolean isTriangle(tttt triangle){
boolean isTriangle=false;
//判断边界,大于0小于0或等于Long.MAX_VALUE,出界返回false
this.title=title;
}
}
补充任务:为Triangle类编写测试用例。
实验代码:
package .njupt;
/**
* This is Triangle class
*
*/
public class tttt {
//定义三角形的三边
protected long lborderA=0;
指导教师
陈云芳
实验类型
验证
实验学时
2
实验时间
2015.12.10
一、实验目的和要求
实验目的:对JAVA单元测试有初步了解,学会使用Junit编写自己的测试用例,并对被测试类进行测试。
二、实验环境(实验设备)
Eclipse
三、实验原理及内容
实验内容:
1.阅读理解Junit的工作机制。
2.eclipse环境下的单元测试。
}
return false;
}
public double getPrice(){
return price;
}
public void setPrice(double price){
this.price=price;
}
public String getTitle(){
return title;
}
public void setTitle(String title){
protected long lborderB=0;
protected long lborderC=0;
//构造函数
public tttt(long lborderA, long lborderB, long lborderC) {
this.lborderA = lborderA;
this.lborderB = lborderB;
}
}
实验截图:
实验报告
四、实验小结(包括问题和解决方法、心得体会、意见与建议等)
通过这次实验,我对JUnit有了更深的了解。它是一种测试代码的框架,测试的目的是:保证代码没错,而不是保证代码正确。Junit测试类一般不要和目标类放在一起,但编译成的class文件是放在一起的。Junit单元测试主要是来测试程序的结果和自己期望的值是否相等,测试类要继承TestCast类,而TestCast类又继承于Assert类。这次实验让我对代码的又有了更深的理解,收益匪浅。
assertTrue(book1.equals(book1));
}
}
package .njupt;
public class Book {
private String title;
private double price;
publicBook(String title,double price){
3.利用Junit编写测试用例,并对被测试类进行相关功能测试。
A)验证Book类的equals方法。
B)设计Triangle类的测试用例,并进行测试。
实验截图:
实验报告
实验代码:
package .njupt;
import junit.framework.TestCase;
public class BookTest extends TestCase {
this.title=title;
this.price=price;
}
public boolean equals(Object object){
if(object instanceof Book){
Book book=(Book)object;
return getTitle().equals(book.getTitle())&&getPrice()==book.getPrice();
if ((triangle.lborderA>0&&triangle.lborderA<=Long.MAX_VALUE/2)
&&(triangle.lborderB>0&&triangle.lborderB<=Long.MAX_VALUE/2)
相关文档
最新文档