#因为是用IDEA首次写unit test,所以也是麻烦多多,于是就只写了一个函数的测试....

##需要测试的代码如下

public  class Calculator {
// 本金为100万,利率或者投资回报率为3%,投资年限为30年,那么,30年后所获得的利息收入:
public static double calculatingAmount(double capital,double rate,int year)
{
return capital*(Math.pow((1+rate),(double)year));
}; // 如果按照单利计算,本息又是多少呢
public double calculatingAmountForSingle(double capital, double rate, int year)
{
return capital*(1+(rate*year));
}; // 假如30年之后要筹措到300万元的养老金,平均的年回报率是3%,那么,现在必须投入的本金是多少呢
public double calculatingCapital(double amount, double rate, int year)
{
return amount/(Math.pow((1+rate),(double)year));
}; // 利率这么低,复利计算收益都这么厉害了,如果拿100万元去买年报酬率10%的股票,若一切顺利,过多长时间,100万元就变成200万元呢
public int calculatingYear(double capital,double rate,double count)
{
return (int)(Math.log(1+rate)/Math.log(count/capital));
}; // 如果我希望在十年内将100万元变成200万元,应该找到报酬率在多少的投资工具来帮助我达成目标
public double calculatingRate(double capital,int year,double acount)
{
return Math.pow((acount/capital),(double)(1/year))-1;
}; // 如果想在5年后本金翻倍,报酬率就应至少为多少才行呢
public double calculatingRateInDoubleReturn()
{
return this.calculatingRate(100,5,200);
}; // .如果每年都将积蓄的3万元进行投资,每年都能获得3%的回报,然后将这些本利之和连同年金再投入新一轮的投资,那么,30年后资产总值将变为多少
public double calculatingAmountInNorm(double normCapital,double rate,int year){
double acount;
acount=normCapital;
for (int i=0;i<year;i++)
{
acount+=normCapital+acount*rate;
}
return acount;
}; // 如果向银行贷款10万元,年利率6.5%,期限为10年,那么每月等额本息还款多少
public double[][] calculatingInterest(double capital,double rate,int year)
{
double[][] interest=new double[year][12];
for (int i=0;i<year;i++)
{
for (int j=0;j<12;j++)
{
interest[i][j]=capital*Math.pow(rate+1,(double)(i))*rate;
}
}
return interest;
}; }

然后是测试代码

public class CalculatorTest {

    @org.junit.Test
public void testCalculatingAmount() throws Exception {
assertEquals(103.0301,Calculator.calculatingAmount(100.0301,0.01,3),0.1); } @org.junit.Test
public void testCalculatingAmountForSingle() throws Exception { } @org.junit.Test
public void testCalculatingCapital() throws Exception { } @org.junit.Test
public void testCalculatingYear() throws Exception { } @org.junit.Test
public void testCalculatingRate() throws Exception { } @org.junit.Test
public void testCalculatingRateInDoubleReturn() throws Exception { } @org.junit.Test
public void testCalculatingAmountInNorm() throws Exception { } @org.junit.Test
public void testCalculatingInterest() throws Exception { }
}

第一个函数而已,其他的都是自动生成的,先熟悉下IDEA环境下JUnit的使用,以后会添加真正的测试的。

下面是结果

#总结:浪费了很多时间,主要是百度中文搜索技术文很差,然后用了bing,看英文看了很...在一些小问题卡住很久,以后解决这种小问题还是需要不要没有思考的百度,很浪费时间,只是原地打转,百度不会什么都告诉你!还有就是学好英文。

附github地址https://github.com/LinJiTuan/BankCalculator

复利计算器4.0JUnit的更多相关文章

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

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

  2. 复利计算器v1

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

  3. java版复利计算器升级

    github地址:https://github.com/iamcarson/Carson 伙伴:彭宏亮 学号:201406114148 与伙伴工作帅照: 本次升级的地方: 1.改善了界面显示,让界面整 ...

  4. 0406.复利计算器5.0版-release

    复利计算器5.0-release 目录 项目简介 Github链接推送 客户需求 新增需求分析 项目设计 效果演示 操作说明 程序结构 结对分工 合作照片 总结 1.项目简介 项目名称:复利计算器 目 ...

  5. 单利 复利计算器程序1.0 2.0 3.0 [ 合 ] 之 WEB

    对单复利计算器程序进行改进 更新为网页版的. 界面不太美观 请谅解 由于时间问题暂未完善好! 计算部分的主要源代码:

  6. 复利计算器app发布

    复利计算器app发布 抱歉:由于无法实现服务端的持续开启,发布的app仅为简单的单机版,暂时舍弃了c/s版本的一些功能,如:投资动态管理功能. 应用详情博客:请点击这里 apk下载地址1(百度手机助手 ...

  7. 复利计算器4.0之再遇JUnit

    复利计算器4.0之再遇JUnit 前言    虽然之前的复利计算器版本已经尝试过使用JUnit单元测试,但由于没有系统性地学习过JUnit的使用,用得并不好,主要问题表现在测试的场景太少,并没有达到测 ...

  8. 0329 复利计算器5.0 Juint单元测试 组员 254列志华 253韩麒麟

    一.主要功能与需求分析 1.本金为100万,利率或者投资回报率为3%,投资年限为30年,那么,30年后所获得的利息收入:按复利计算公式来计算就是:1,000,000×(1+3%)^30 2.如果按照单 ...

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

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

随机推荐

  1. python实现定时发送系列

    1.发送邮件实现 2.定时任务实现 3.定时发送邮件实现 4.微信定时发送信息 详细源代码见:https://github.com/15387062910/timing_send 参考: 廖雪峰博客 ...

  2. 如何使32位Win7支持超过4GB的内存,而不装64位

    如何使32位Win7支持超过4GB的内存 让32位系统支持更大的内存超过4G [情况参数:] PC: 联想商用台式机,M4350 RAM: 1600, DDR3 , 2GB OS: Win7 专业版 ...

  3. 数据库中查询json 样式的值的sql语句

    参考:http://www.lnmp.cn/mysql-57-new-features-json.html 方式一: 可以查到json中的Key:value SELECT * FROM EDI.edi ...

  4. redis详解(四)-- 高可用分布式集群

    一,高可用 高可用(High Availability),是当一台服务器停止服务后,对于业务及用户毫无影响. 停止服务的原因可能由于网卡.路由器.机房.CPU负载过高.内存溢出.自然灾害等不可预期的原 ...

  5. 你该知道的 TValue

    你该知道的 TValue Represents a lightweight version of the Variant type. TValue is a data structure that c ...

  6. SQL SERVER2014 安装 Error code 0x858C001B.

    原因是语言版本不一致,SQL SERVER是中文简体版,操作系统是英文版,在操作系统.控制面板,区域语言设置为中文就Ok啦. TITLE: SQL Server Setup failure.----- ...

  7. 在Textbox中按回车键后继续获取焦点

    textbox的值为空或没有更改时,按下回车键textbox会失去焦点 此时用textbox1.setfocus不能使textbox1重新获取焦点 Private Sub Textbox1_KeyDo ...

  8. Linux tomcat启动慢, Creation of SecureRandom instance for session ID generation using [SHA1PRNG]took [xx] mil

    启动慢的解决链接:  http://blog.csdn.net/u011627980/article/details/54024974

  9. python练习题:三级菜单

    需求:可依次选择进入各子菜单可从任意一层往回退到上一层可从任意一层退出程序所需新知识点:列表.字典 测试环境:win7系统,python3.7.0,工具:pycharm-community-2018. ...

  10. JVM gc介绍

    Java语言出来之前,大家都在拼命的写C或者C++的程序,而此时存在一个很大的矛盾,C++等语言创建对象要不断的去开辟空间,不用的时候有需要不断的去释放控件,既要写构造函数,又要写析构函数,很多时候都 ...