1、完整版软件测试技术试验报告JUnit的基本应用软件测试技术实验报告实验序号:3实验项目名称:单元测试工具JUnit的基本应用学号实验地址姓名指导教师专业、班实验时间一、实验目的及要求掌握在 Eclipse 环境下 JUnit 单元测试工具的安装和使用方法;针对一个实质问题,在 JUnit 环境下设计并履行测试用例。二、实验要求开发环境: Eclipse v3.7 及以上版本; JUnit v4.10 及以上版本;文本编写软件。硬件要求: CPU PIV 以上, 256M 内存, 1G 硬盘空间。系统要求: Windows98/Me/XP/NT/2000 , IE 5 以上。三、实验内容与步骤1
2、.下载并安装 JDK2.下载并安装 Eclipse3.下载并安装 JUnit4.通读自动售货机程序,并在 Eclipse 环境下运转该程序5.在 JUnit 环境下履行以下表格中的测试用例,并填写完成该表格。编输入值输入值状态预期输出实质情号Typemoney况001Beer5C各 资Input Information源 剩Type: Beer; Money: 5 Cents; Change: 0余Current StateBeer: 5Orange Juice: 65 Cents: 71 Dollar: 6002OrangeJuice5C各 资Input Information源 剩Type
3、: OrangeJuice; Money: 5 Cents; Change: 0余Current StateBeer: 6Orange Juice: 55 Cents: 71 Dollar: 6003 Beer1D没 有Failure Information啤酒Beer Shortage5.提交测试用例程序和该程序运转结果最后画面。6.总结本次试验,并撰写实验报告。四、实验结果与数据办理编输入值输入值状态号Typemoney001Beer5C各 资源 剩余002 OrangeJuice 5C 各 资源 剩余003 Beer1D没 有啤酒预期输出Input InformationType: Be
4、er; Money: 5 Cents; Change: 0Current StateBeer: 5Orange Juice: 65 Cents: 71 Dollar: 6Input InformationType: OrangeJuice; Money: 5 Cents; Change: 0Current StateBeer: 6Orange Juice: 55 Cents: 71 Dollar: 6Failure InformationBeer Shortage实质情况与预期值一致与预期值一致与预期值有偏差实验环境变量配置。配置达成后检查能否正确,再 cmd 输入 java version
5、,java 后要有空格,结果以下列图,即配置环境变量正确。1测试用例程序import static org.junit.Assert.*;import org.junit.Before;import org.junit.Test;public class SaleMachineTest SaleMachine saleMachine = new SaleMachine();Beforepublic void setUp() throws Exception Testpublic void testOperation1() String expectedResult = Failure Info
6、rmation n +Type: Beer; Money: 5 Cents; Change: 0nn +Current Staten +Beer: 5n +Orange Juice: 6n +5 Cents: 7n +1 Dollar: 6;assertEquals(expectedResult, saleMachine.operation(Beer,5C);1结果2测试用例程序import static org.junit.Assert.*;import org.junit.Before;import org.junit.Test;public class SaleMachineTest S
7、aleMachine saleMachine = new SaleMachine();Beforepublic void setUp() throws Exception Testpublic void testOperation1() String expectedResult = Input Information n +Type: Beer; Money: 5 Cents; Change: 0nn +Current Staten +Beer: 5n +Orange Juice: 6n +5 Cents: 7n +1 Dollar: 6;assertEquals(expectedResul
8、t, saleMachine.operation(OrangeJuice,5C);2结果3测试用例程序import static org.junit.Assert.*;import org.junit.Before;import org.junit.Test;public class SaleMachineTest SaleMachine saleMachine = new SaleMachine();Beforepublic void setUp() throws Exception Testpublic void testOperation1() String expectedResult
9、 = Failure Information n +BeerShortage ;assertEquals(expectedResult, saleMachine.operation(Beer,1D);3结果五、剖析与议论六、教师考语 成绩署名:日期:附 录问题描绘自动售货机程序:若投入 5 角钱或 1 元钱的硬币,按下“橙汁”或“啤酒”按钮,则相应的饮料就送出来;若售货机没有零钱找,则显示“零钱找完”的红灯亮,这是再投入一元硬币并按下按钮后,饮料不送出来并且 1 元硬币也退出来;如有零钱找,则显示“零钱找完”的红灯灭,在送出饮料的同时退还 5角硬币。程序流程图实验源代码(出缺点的源代码)pub
10、lic classSale Machin e priv ate int count OfBeer, c ountOfOr angeJuice, co unt OfFi veCents, c ountOfOneDoll ar;priv ateString typ eOfGoods = B eer , Ora ngeJui ce ;priv ateString re sul tOf Deal ;publ icSal eMachin e()init ial();publ ic voi d i niti al( )countOfBee r = 6;countOfOra ngeJuic e = 6;co
11、untOfFiv eCents = 6 ;countOfOneDollar = 6 ;publ ic Sal eMachin e( i nt fiv eCents, int on eDol lar , i nt n umOfBeer, int numOfOran ge)/便于测试的初始化函数countOfFiv eCents = f ive Cent s;countOfOneDollar = o neDoll ar;countOfBee r = numOfBeer;countOfOra ngeJuic e = nu mOfOrang e;publ ic Str ing cur ren tSt
12、ate ( )Stri ng sta te = Curr ent St aten +Beer: + countOf Beer + n +Or ange J uic e: + count OfOrangeJuic e + n +5 Cents: + countOf Fiv eCents + n +1 Dollar : + countOfOneDolla r;retu rn sta te;publ ic Str ing ope rat ion (St r ing typ e, Str ing money)/ty pe是用户选择的产品,money是用户投币种类if (money.e qualsIg
13、nor eCase( 5C) ) / / 假如用户投入5角钱if (t ype.eq ual s( ty peOfGoods 0)/ 假如用户选择啤酒if ( countOf Beer 0) / 假如还有啤酒countOf Beer - ;countOf Fiv eCents +;resu ltO fDe al = I nput I nfo r mati on n +Ty pe: Be er; Money: 5 Cent s; C hange:nn +currentSta te();retu rn res ult OfDeal ;elseresu ltO fDe al = Fail ure I
14、n f ormatioretu rn res ult OfDeal ;n + B eer Sh ort age ;else if (t ype.equ als ( ty peOf Goods1 ) / 用户选择橙汁if ( countOfOra ngeJuic e 0)countOf OrangeJuic e- ;countOf Fiv eCents +;resu ltO fDe al = I nput I nfo r mati on n +Ty pe: Or angeJuice ; M oney: 5 C ent s; Change: 0nn +currentSta te();retu rn
15、 res ult OfDeal ;elseresu ltO fDe al = Fail ure In f ormatioretu rn res ult OfDeal ;n + T ype Er ror ;elseresu ltO fDeal = Fail ure In f ormatioretu rn res ult OfDeal ;n + Type Er ror ;else if (money.equ als Ign ore Case( 1D ) / 假如用户投入一元钱if ( countOf Fiv eCents 0) / 假如用户投入一元钱if ( countOf Fiv eCents
16、0)/ / 假如用户有零钱if (t ype.eq ual s( ty peOfGoods 0)& &count OfBeer 0) / / 假如用户选择啤酒并且还有啤酒countOf Beer - ;countOf Fiv eCents - -;countOf OneDollar+ +;resu ltO fDe al = I nput I nfo r mati on n +yp e: Beer; Money: 1 Dolla r;Change: 5 Cen +currentSta te();retu rn res ult OfDeal ;else if (t ype.equ als ( ty
17、 peOf Goods1 ) / 假如用户选择橙汁并且还有橙汁countOf OrangeJuic e - -;countOf Fiv eCents -;countOf OneDollar +;resu ltO fDe al = I nput I nfo r mati on: n +Ty pe: Or angeJuice ; M oney: 1 D oll ar; Ch ange: 5Centsn n + curr ent State( ) ;retu rn res ult OfDeal ;elseif (t ype.eq ual s( ty peOfGoods 0)& &count OfOr
18、ang eJuice =0)resu ltO fDeal = Fail ue Inf ormat ion n + Beer Shorta ge ;retu rn res ult OfDeal ;else if (ty pe. equals( typ eOfGoods1 )&countOf OrangeJui ce=0)resu ltO fDeal = Fai lur e Info r mati on n + Oran geJuice Shor tage ; retu rn res ult OfDeal ;elseresu ltO fDeal = Fail ure In f ormation+
19、T ype Er ror ;retu rn res ult OfDeal ;elseresu ltO fDe al = Fail ure In f ormatio n + Change Shor tage ;retu rn res ult OfDeal ;elseresu ltO fDeal = Fail ure In f ormatioretu rn res ult OfDeal ;n + Money E rro r ;resu ltOfDe al = Fail ure In f ormatio n + Money E rro r ;retu rn res ult OfDeal ;测试用例示
20、例代码:import static org.junit.Assert.*;import org.junit.Before;import org.junit.Test;publicclassSaleMachineTest SaleMachineBeforepublic voidsaleMachine = new SaleMachine();setUp() throws Exception TestpublicvoidtestOperation1() String expectedResult = Input Information nType: OrangeJuice; Money: 5 Cents; Change: 0nnCurrent Staten +Beer: 6n +Orange Juice: 5n +5 Cents: 7n +1 Dollar: 6 ;+assertEquals (expectedResult,saleMachine .operation( OrangeJuice , 5C );
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1