4

上下文: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();
    }

...........

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

请帮忙。

4

1 回答 1

0

您必须在构造函数中提供应用程序包,请看这里: http ://code.google.com/p/robotium/wiki/Getting_Started 它应该如下所示:

public InitialTest() {
     super("com.sap.esm.retail", MobileRetailingActivity.class);
}
于 2013-01-24T12:51:39.300 回答