TestCase类junit.extensions.ExceptionTestCase缺少没有参数或单个String参数的公共构造函数

时间:2013-01-24 12:33:40

标签: android

上下文:Windows 7操作系统,最新Android ADT IDE,robotium jar文件,Android

查询:我创建了一个testrobotium类,它在执行时作为android junit,应该触发AUT即android应用程序。在执行testrobotium类作为android junit时,我在logcat中得到以下错误:

01-24 12:17:44.708: I/TestGrouping(2235): TestCase class junit.extensions.ExceptionTestCase is missing a public constructor with no parameters or a single String parameter - skipping
01-24 12:17:44.790: I/TestRunner(2235): started: null(com.sap.esm.retail.test.InitialTest)

包含构造函数的InitialTest类的代码如下:

package com.sap.esm.retail.test;

import android.test.ActivityInstrumentationTestCase2;
import android.util.Log;
import android.widget.EditText;
import android.widget.ImageView;
import android.widget.TextView;

import com.jayway.android.robotium.solo.Solo;
import com.sap.esm.retail.MobileRetailingActivity;
import com.sap.esm.retail.OrderSumaryActivity;
import com.sap.esm.retail.ProductDetailsActivity;
import com.sap.esm.retail.ShippingDetailsActivity;

import com.sap.esm.retail.R;

public class InitialTest extends
        ActivityInstrumentationTestCase2<MobileRetailingActivity> {

    public Solo solo;
    private TextView cartNo;
    private ImageView Img;
    private String actualTot;


    public InitialTest(String name) throws ClassNotFoundException {
        super(MobileRetailingActivity.class);
    }

    protected void setUp() throws Exception {
        super.setUp();
        solo = new Solo(getInstrumentation(),getActivity());
    }

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

...........

因此,我认为构造函数存在一些问题。

请帮忙。

1 个答案:

答案 0 :(得分:0)

你必须在构造函数中提供app包,看看这里: http://code.google.com/p/robotium/wiki/Getting_Started 它应该是这样的:

public InitialTest() {
     super("com.sap.esm.retail", MobileRetailingActivity.class);
}