Android测试单元学习记录

1. InstrumentationTestRunner类的学习:

InstrumentationTestRunner : public TestSuite getAllTests()

该类的这个方法是创建测试项,

TestSuite suite = new InstrumentationTestSuite(this);

TestSuite:测试节点,记录要测试的项目。

源代码:

@Override
    public void addTestSuite(Class testClass) {
        addTest(new InstrumentationTestSuite(testClass, mInstrumentation));
    }

通过调用addTestSuite方法依次将要测试的方法加入到测试项中,如果直接加入的是一个测试类,将执行该类中所有的测试方法;

也可以加入一个测试类,并指定将要执行的测试方法,下面是个简单的示例:

@Override
    public TestSuite getAllTests() {
        TestSuite suite = new TestSuite();
        suite.addTest(new TestMethod(methodName, TestClass.class));

suite.addTestSuite(TestClass.class);
        return suite;
    }


ActivityInstrumentationTestCase 类的使用学习:

public ActivityInstrumentationTestCase(String pkg, Class activityClass) {
        this(pkg, activityClass, false);
    }

该方法为ActivityInstrumentationTestCase的构造方法,可以看出TestCase需要传入两个参数分别为package name和activity.class。

@Override 
    protected void setUp() throws Exception {   
        super.setUp(); 
    }
    
    @Override 
    protected void tearDown() throws Exception {   
        super.tearDown();           
    }

该类还有两个重要的方法:setUp()和tearDown(),通过查看类的源码了解该类在什么时候进行执行。

其中setUp()方法会在一开始被自动调用,因此我们可以在里面做一些测试所需的初始化操作;

tearDown()方法则会在测试程序结束的时候做一些释放等动作。


AndroidManifest.xml中配置测试项:


       
   



            android:targetPackage="package name"
        android:label="label">
   


注意:

该方法中的所有的需要被调用的测试方法都需要以test开头,才能被识别为测试方法,从而被系统调用。













你可能感兴趣的:(Android,android,测试)