如果视图存在则执行命令
Execute command if view exists
我正在使用 robotium 为我们的 android 应用程序编写测试。如果某个视图或文本存在,我正在寻找执行命令。最好检查 view/button 是否存在,但我愿意检查 logout
文本是否也存在
我的(不正确的)伪代码应该是这样的:
if solo.getView("logoutButton")) //if the logout button exists
solo.clickOnView(solo.getView("logoutButton")); //click it
end
我不熟悉 robotium 或 android,如果有任何见解,我将不胜感激。
旧的 findViewById 怎么样:
View view = solo.getCurrentActivity().findViewById(R.id.logout_button);
Assert.assertNotNull(view);
solo.clickOnView(view);
编辑:
import android.test.ActivityInstrumentationTestCase2;
import android.view.View;
import com.robotium.solo.Solo;
import junit.framework.Assert;
public class MainActivityTest extends ActivityInstrumentationTestCase2<MainActivity> {
private Solo solo;
public MainActivityTest() {
super(MainActivity.class);
}
@Override
public void setUp() throws Exception {
solo = new Solo(getInstrumentation(), getActivity());
}
public void testView() throws Exception {
View view = solo.getCurrentActivity().findViewById(R.id.tv);
Assert.assertNotNull(view);
solo.clickOnView(view);
}
@Override
public void tearDown() throws Exception {
solo.finishOpenedActivities();
}
}
我正在使用 robotium 为我们的 android 应用程序编写测试。如果某个视图或文本存在,我正在寻找执行命令。最好检查 view/button 是否存在,但我愿意检查 logout
文本是否也存在
我的(不正确的)伪代码应该是这样的:
if solo.getView("logoutButton")) //if the logout button exists
solo.clickOnView(solo.getView("logoutButton")); //click it
end
我不熟悉 robotium 或 android,如果有任何见解,我将不胜感激。
旧的 findViewById 怎么样:
View view = solo.getCurrentActivity().findViewById(R.id.logout_button);
Assert.assertNotNull(view);
solo.clickOnView(view);
编辑:
import android.test.ActivityInstrumentationTestCase2;
import android.view.View;
import com.robotium.solo.Solo;
import junit.framework.Assert;
public class MainActivityTest extends ActivityInstrumentationTestCase2<MainActivity> {
private Solo solo;
public MainActivityTest() {
super(MainActivity.class);
}
@Override
public void setUp() throws Exception {
solo = new Solo(getInstrumentation(), getActivity());
}
public void testView() throws Exception {
View view = solo.getCurrentActivity().findViewById(R.id.tv);
Assert.assertNotNull(view);
solo.clickOnView(view);
}
@Override
public void tearDown() throws Exception {
solo.finishOpenedActivities();
}
}