我正在测试一个简单的应用程序。当我开始JUnit测试时,虽然我完成了测试运行,但我没有得到任何结果。弹出菜单显示"未找到测试类"。任何人都可以解决这个问题吗?
堆栈跟踪:
junit.framework.AssertionFailedError:类com.example.testbuild.test.second没有公共构造函数TestCase(String name)或TestCase() 在android.test.AndroidTestRunner.runTest(AndroidTestRunner.java:169) 在android.test.AndroidTestRunner.runTest(AndroidTestRunner.java:154) 在android.test.InstrumentationTestRunner.onStart(InstrumentationTestRunner.java:529) 在android.app.Instrumentation $ InstrumentationThread.run(Instrumentation.java:1448)
package com.example.testbuild.test;
import junit.framework.Assert;
import android.app.Activity;
import android.test.ActivityInstrumentationTestCase2;
import android.widget.Button;
import android.widget.TextView;
import com.example.testbuild.MainActivity;
public class second extends ActivityInstrumentationTestCase2<MainActivity> {
MainActivity a;
Button b;
TextView v;
public second(Class<MainActivity> activityClass) {
super(activityClass);
// TODO Auto-generated constructor stub
}
@Override
protected void setUp() throws Exception {
super.setUp();
a=getActivity();
b=(Button)a.findViewById(com.example.testbuild.R.id.button1);
v=(TextView)a.findViewById(com.example.testbuild.R.id.textView1);
}
public void clicking()
{
a.runOnUiThread(
new Runnable() {
public void run() {
b.performClick();
}
});
String s=v.getText().toString();
Assert.assertEquals("test passed", "Hello",s);
}
}
答案 0 :(得分:2)
我相信构造函数不会传递任何参数。尝试:
public second(){
super(MainActivity.class);
}