A-A+

现有人编写了帐号类Account 用于管理个人的存款余额 public Account{

2022-08-05 21:27:22 问答库 阅读 172 次

问题详情

现有人编写了帐号类Account,用于管理个人的存款余额, public Account{ private double balance; //帐号余额,余额最低为0 public double getBalance(){ return balance; } Public void setBalance(double b){ balance=b; } public double withdrawl(double money) throws Exception { //取款,money如果为负数或余额不足,抛出异常 } } 请用错误推测法为withdrawl()函数至少设计3个测试用例,并写出基于Junit的测试代码 。请帮忙给出正确答案和分析,谢谢!

参考答案

正确答案:
publicclassTestSampleextendsTestCase{publicvoidtestWithDrawlEqual(doublemoney){Accounta=newAccount();a.setAccount(5);doubleresult=a.withdrawl(5);Assert.assertEquals(0,result);}publicvoidtestWithDrawlNegative(){try{Accounta=newAccount();a.setAccount(5);doubleresult=a.withdrawl(-1);fail();}catch(Exceptionerr){Assert.assertTrue(true);}}publicvoidtestWithDrawlTooMuch(){try{Accounta=newAccount();a.setAccount(5);doubleresult=a.withdrawl(8);fail();}catch(Exceptionerr){Assert.assertTrue(true);}}}

考点:余额,存款