- 6
- 0
- 约7.19千字
- 约 11页
- 2017-04-12 发布于四川
- 举报
JUnit使用方法以和测试代码覆盖率
Junit什么是junit采用测试驱动开发的方式,在开发前先写好测试代码,主要说明被测试的代码会被如何使用,错误处理等,然后开始写代码。并在测试代码中逐步测试这些代码。直到最后在测试代码中完全通过。二、Junit功能管理测试用例。修改了哪些代码。这些代码的修改会对哪些部分由影响,通过junit将这次的修改做完成测试。定义了测试代码,textcase根据源代码的测试需要定义每个textcase,并将Textcase添加到相应的Textsuit以方便管理。定义测试环境,在Textcase测试前会先调用“环境”配置。在测试中使用,当然也可以在测试用例中直接定义测试环境。检测测试结果。对于每种正常、异常情况下的测试,运行结果是什么。结果是够是我们预料的等。都需要有明确的定义。Junit在这方面提供了强大的功能。三、Junit核心类 Textsuit:测试用例的集合 Textcase:定义运行多个测试用例 TextListener:测试中若产生事件,会通知TextListenerBaseTextRunner:TextRunner用来启动测试界面 TextResult:收集一个测试案例的结果。测试结果分为失败和错误。Assert:当条件成立时,assert方法保持沉默,但若条件不成立就抛出异常四、使用举例4.1方法一:第一步、新建一个Android项目JUnit_Test,file-new-android project,然后编写一个Calculator类,new java class,实现简单的加、减、乘、除的计算器,然后对这些功能进行单元测试。类的代码如下:package com.neusoft;public class Calculator {private int result; public void add(int n) {result = result + n;}public void substract(int n) {result = result - 1; //Bug: 正确的应该是 result =result-n}public void multiply(int n) {}public void divide(int n) { result = result / n;}public void square(int n) { result = n * n;}public void squareRoot(int n) { for (; ;) ; //Bug : }public void clear() { result = 0;}public int getResult() { return result;}}第二步、将JUnit4单元测试包引入这个项目:在该项目上点右键,点“属性”,在弹出的属性窗口中,首先在左边选择“Java Build Path”,然后到右上选择“Libraries”标签,之后在最右边点击“Add Library…”按钮, 然后在新弹出的对话框中选择JUnit4并点击确定, JUnit4软件包就被包含进我们这个项目了。第三步、在Eclipse的Package Explorer中用右键点击该类弹出菜单,选择new—选择“JunitText Case”。在弹出窗口,选择 new JUnit 4 text,在which method stubs would you like to creat?处选择setUp。点击“next”后,系统会自动列出你这个类中包含的方法,选择你要进行测试的方法。此处,我仅对“加、减、乘、除”四个方法进行测试。点击Finish后,系统会自动生成一个新类CalculatorTest,里面包含一些空的测试用例。只需要将这些测试用例稍作修改即可使用。完整的CalculatorTest代码如下:package com.neusoft;importstatic org.junit.Assert.*;import org.junit.Before;import org.junit.Test;import org.junit.Ignore;publicclass CalculatorTest {privatestatic Calculator calculator = new Calculator();@Beforepublicvoid setUp() throws Exception {calculator.clear();}@Testpublicvoid testAdd() {calculator.add(2);calculator.add(3);assertEquals(5, calculator.getResult());}@T
您可能关注的文档
- Discuz源代码分析系列—common.inc.php.doc
- DIVCSS在IE各版本兼容问题.doc
- 河北省唐山一中10-11届高二下学期期末考试(数学文).doc
- 河北省唐山一中10-11届高二下学期第一次月考(地理).doc
- Dkawban浅谈初中数学语言教学议案.doc
- dkojpty小学教育语文新课标的3个回归.doc
- divcss扩展框问题浮动下降IE和Firefox兼容性.doc
- dkpyowg小学教育语文综合性学习的研究和开发.doc
- dkuhfwc小学_6年级语文复习毕业冲刺.doc
- DJ需求和学习课程.doc
- 人教版九年级英语Unit 4曾害怕课件3a-4c.pdf
- 雅思口语考题回顾:朗阁海外考试研究中心2019年10月10日Part 1考题总结.pdf
- 2026届高三地理一轮复习课件小专题河流袭夺.pptx
- 【名师原创】复习专题5 三角函数 作者:合肥市第八中学 蒲荣飞名师工作室.docx
- 高中数学一轮复习 微专题2 抽象函数.docx
- 高中数学——复习专题4 空间向量与立体几何.docx
- 高中数学一轮复习 微专题3 空间几何体中的截面、轨迹问题.docx
- 高中数学一轮复习 微专题4 空间几何体的最值、范围问题.docx
- 导流洞施工质量通病防治手册.docx
- 江苏省徐州市第一中学、徐市第三中学等五校2026届高三上学期12月月考历史试题含答案.docx
原创力文档

文档评论(0)