我最近开始学习Android。现在我正在尝试使用没有源代码或 ID 的黑盒测试方法使用 Robotium 测试一些随机应用程序。我尝试测试的应用程序:https: //play.google.com/store/apps/details? id=com.zing.zalo&hl=en 。只是一些简单的功能,例如:打开应用程序,登录,注销。我在 JUnit 测试项目中实现了 External Jar “robotium”,构建路径检查了 robotsium 和其他所有内容。我为 Pkg 名称和活动名称而苦苦挣扎,然后我在下面的站点中看到了一些 adb 平台收费“adb shell dumpsys 活动”,以便从我的手机中获取名称。 ADB - Android - 获取当前活动的名称 我从许多网站阅读和搜索了很多小时,这是我想出的代码:
public class LoginZalo extends ActivityInstrumentationTestCase2 {
public static Class LauncherActivityFullClass;
public Solo solo;
String pkg = "com.zing.zalo";
private static String launcher_activity_full_class = "/.ui.ZaloLauncherActivity";//login interface
static{
try {
LauncherActivityFullClass = Class.forName(launcher_activity_full_class);
} catch (Exception e) {
throw new RuntimeException();
}
}
public LoginZalo()
{
super(LauncherActivityFullClass);
}
protected void setUp() throws Exception {
solo = new Solo(getInstrumentation(),getActivity());
}
public void ZaloLogin()
{
solo.clickOnButton("LOGIN");
//also tried solo.clickOnButton(0); or solo.clickOnButton(1); or even clickOnText("LOGIN");
}
@Override
protected void tearDown() throws Exception {
// TODO Auto-generated method stub
solo.finishOpenedActivities();
}
}
AndroidManifest 添加目标包。
<instrumentation
android:name="android.test.InstrumenttationTestRunner"
android:targetPackage="com.zing.zalo" />
但我在控制台中只收到一个红色错误“测试运行失败:没有测试结果”。我看到在Robotium GitHub上有评论说Robotium不能做黑盒测试。我在许多网站上尝试了很多东西,但无处可去。所以我想知道,Robotium Eclipse 可以进行黑盒测试吗?也许我做错了什么,因为在 Github 网站上,他们说 Robotium 可以进行黑盒测试。或者我必须用 Android Studio + Robotium Recorder 来做?或者也许我应该尝试其他类似 Appium 的东西?