因为上节课老师有给我们讲了单元测试的概念及其基本操作,我就对我之前的复利计算器进行了改进和测试。因为从控制台的简单输入输出对单元测试来说不够完善,便参考了其他同学的优秀编程又重新写了一个复利计算器的框架,并将其基本美化了下。在网上搜的在线复利计算器是一个挺简单而方便的界面便根据此来修改了界面。

在线复利计算器:

在编写框架时,先是自己在本子上打好草稿来缕清思路,以便后面的编程需要,也方便阅读理解。

基本框架图:

编写好框架后的基本图形:

根据在线复利计算器修改后界面:

在这次复利计算器的任务中,我先简单的对复利计算器的复利计算进行了单元测试,在测试过程中,由于对测试方法的不熟练,经过了多次的修改和改正才测试成功,测试成功图:

在测试过程中,由于编写代码中缺少两个方法导致测试不能正常运行,这点以后要铭记,虽然方法里面为空,但是也是不可缺少的代码,否则测试不成功。

方法截图:

我知道我的测试代码太过简单,只是进行了简单的数值输入计算测试,并没有考虑其他的输入错误,所以列下了以下测试bug,在以后的编程中会不断完善。

case1:输入的不是数值

case2:输入为空

case3:要根据实际情况设置输入数值的取值范围

case4:...................

在复利计算器的代码中由于有考虑输入为空和字符时,会弹出小窗口显示请输入正确数据,所以可以在编写测试代码中可以不用对这种情况进行测试。

弹窗图:

为方便阅读git上代码,已截图此次作业名字的截图:

这是第一次接触单元测试,发现单元测试对我们编程来说也是挺有益处的,可是是第一次接触,刚开始是摸不着头脑,并不知道如何新建、如何打开、如何编写,还好万能的百度和优秀同学的案例,才让我慢慢了解单元测试,并且尝试自己编写单元测试,虽然此次的单元测试算完成了,但是自己对单元测试的了解太少了,所以以后编程中会多去接触单元测试并且尝试去编写代码来避免程序中的基本bug。对自己只知道些皮毛而感到忧虑,对于这点,以后后多去看看好的代码,从中吸取他们的精华之处来学以致用,对单元测试的概念也会私下多去百度了解。

测试模块 测试输入 预期结果 运行结果 bug跟踪
计算终值 (本金,利率,年限) 终值    
1 (1000000,3,30) 242726.2471189662 242726.2471189662
2 (0,3,30) 异常显示 程序异常运行 捕获异常并作出反应,弹出弹窗显示请输入正确数据
3 (本金,3,30) 异常显示 弹出弹窗显示请输入正确数据
4 (100 0000,3,30) 异常显示 弹出弹窗显示请输入正确数据
5 (null,null,null) 异常显示 弹出弹窗显示请输入正确数据
         
         

复利test的更多相关文章

  1. 复利计算APP版-----娱乐一下

    先不说那么多,下载地址来一个:http://pan.baidu.com/s/1eSz2GBg 目前版本号为:0.3 lastest 软件上线了!三平台首发! 下载地址: http://shouji.b ...

  2. 复利计算器(软件工程)及Junit测试———郭志豪

    计算:1.本金为100万,利率或者投资回报率为3%,投资年限为30年,那么,30年后所获得的利息收入:按复利计算公式来计算就是:1,000,000×(1+3%)^30 客户提出: 2.如果按照单利计算 ...

  3. 复利计算--结对项目<04-11-2016> 1.0.0 lastest 阶段性完工~

    结对项目:Web复利计算 搭档博客地址:25江志彬  http://www.cnblogs.com/qazwsxedcrfv/ 个人摘要: (2016-04-09-12:00)补充:之前传送门没做好, ...

  4. <更新日期03-31-2016> 复利计算5.0 <已改进>

    作业要求: 1.客户说:帮我开发一个复利计算软件. 完成复利公式计算程序,并成功PUSH到github上. 客户提出: 2.如果按照单利计算,本息又是多少呢? 3.假如30年之后要筹措到300万元的养 ...

  5. 复利计算器(4)——jQuery界面美化、自动补全

    一.分工 这次终于可以跟小伙伴合作了,经过讨论,我负责界面的美化和输入框自动补全,小伙伴擅长安卓,于是将复利计算器弄成app的任务就交给了小伙伴.为了我们两人团队,我们都好奋斗哈哈哈!! 二.界面美化 ...

  6. 复利计算软件v3

    #include <windows.h> #include<stdio.h> #include<math.h> void count(){ int a,b; dou ...

  7. 复利计算器v1

    public class MainFrame extends JFrame { /** * 文本框 */ private TextField[] texts = new TextField[5]; / ...

  8. java 版的复利计算器(张俊毅 周修文)

    (带有本金的选项卡的意思就是计算你在知道利率.年限和本息的情况下计算本金) 在利率的输入中能限制小数点的输入并且输入字母会被直接去除 每一个选项卡都有复利和单利的计算,并且在你计算之后会立即更新在下面 ...

  9. 复利程序(c语言)(张俊毅 周修文)

    因为之前发烧一直没有了解这个 所以最近才补上 分数扣了就扣了 补上先 单元测试迟点更 #include<stdio.h> #include <math.h> #include ...

随机推荐

  1. 引用google的jQuery文件

    1. 很多网站都是使用这种方式引入,客户的浏览器可能已经缓存过了 jquery.可以直接调用本地的,速度更快… 2. Google code 使用了 cdn 技术在很多地方有节点服务器,加载 jque ...

  2. 使用Maven编译项目时提示程序包javax.servlet.http不存在

    将apache-tomcat-8.0.23\lib下的servlet-api.jar拷贝到C:\Program Files\Java\jdk1.8.0_31\jre\lib\ext下即可

  3. 33. Minimum Depth of Binary Tree && Balanced Binary Tree && Maximum Depth of Binary Tree

    Minimum Depth of Binary Tree OJ: https://oj.leetcode.com/problems/minimum-depth-of-binary-tree/ Give ...

  4. ubuntu下基于sqlite3后台的php环境的搭建

    最近准备把公司的服务器换成linux 数据库sqlite3 搭建过程记录如下: 1 sqlite3安装.. apt-get install sqlite 2.PHP服务器搭建. apt-get ins ...

  5. Vs打包工程 错误: Unable to update the dependencies of the project (转)

    Setup Project 错误: Unable to update the dependencies of the project 在VS2010中编译包含安装工程的解决方案提示错误:Unable ...

  6. git学习系列--六分之一

    版本控制是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统,可以对任何类型的文件进行版本控制. 细说分布式版本控制系统 在这类系统中,像 Git,Mercurial,Bazaar 以 ...

  7. ActionScript 3.0 for the Lunder Algorithm

    package com.feiruo.Calendar.LunderCalendar { /* *@ClassName: package:com.feiruo.Calendar.LunderCalen ...

  8. 国际化(i18n)

    一.国际化开发概述 软件的国际化:软件开发时,要使它能同时应对世界不同地区和国家的访问,并针对不同地区和国家的访问,提供相应的.符合来访者阅读习惯的页面或数据. 国际化(internationaliz ...

  9. strlen和sizeof

    1.sizeof操作符的结果类型是size_t,它在头文件中typedef为unsigned int类型.该类型保证能容纳实现所建立的最大对象的字节大小. 2.sizeof是算符,strlen是函数. ...

  10. An attempt was made to load a program with an incorrect format

      用.net调用一个C++ 32位的DLL, 编译的时候选择x86, 在部署到一个64位的机器上的时候报错:"An attempt was made to load a program w ...