单元测试就是一个简单的测试,我觉得程序员是必须要知道的,单元测试就是对业务逻辑代码进行测试。当在一个团队写代码的时候,别人调用你的代码就出现bug,那别人肯定会说你写的代码烂,对吧,你只要说:我写了单元测试的,我的代码没有问题,不信你去测试,对吧。这样是不是肯定就是别人的代码写得烂,是吧。
单元测试目标:方法
那单元测试主要去测试什么呢? 1) 测试方法能否执行。 2) 测试方法的返回值是否正确,也就是所谓的断言测试。
先说下第一点------测试方法能否成功执行
1、创建业务类
package cn.huse.junit.service; /**业务类 * @return */ public class HumanService { String name = "qingliang"; public String getName(){ return name.substring(0,4); } }
2、配置清单文件
3、编写测试类
package cn.huse.junit.test; import android.test.AndroidTestCase; import cn.huse.junit.service.HumanService; import junit.framework.Assert; /**测试类 * 1.必须继承AndroidTextCase * 2.最好以业务类Test命名 * 3 测试类放在.test包下 * @author * */ public class HumanServiceTest extends AndroidTestCase { /** * @throws Exception * 测试方法 */ public void textGetName()throws Exception{ HumanService humanService = new HumanService(); humanService.getName(); } } 4、进入Outline,进入Outline是一定要进入的是测试类 选择测试方法右击--->run as----->android junit test
这就是测试一个方法能不能成功执行的步骤,然后说下断言测试,其实步骤差不多,就是在测试的时候会有一点点的改变。
在上面的业务类中添加一个方法
public int add(int a, int b){ return a*b; } 在上面的测试类中添加一个测试方法
public void textAdd()throws Exception{ HumanService humanService = new HumanService(); int actual = humanService.add(2, 5); //断言 第一个参数是希望结果,第二个参数是调用方法的的返回值 Assert.assertEquals(7, actual); } 在进行测试就好了,只是这里肯定会出错的。
测试代码可以写在同一应用程序里面,也可以写一个单独的测试工程。
步骤:
1 new
2 选择要测试的工程
3 测试的配置文件会自动生成,只需要编写测试代码
