如果视图存在,则执行命令

时间:2015-06-22 19:20:06

标签: android robotium

我正在使用robotium为我们的Android应用程序编写测试。如果存在某个视图或文本,我正在寻找执行命令。检查视图/按钮是否存在是理想的,但我也可以检查logout文本是否存在

我的(不正确的)伪代码将是这样的:

if solo.getView("logoutButton")) //if the logout button exists
    solo.clickOnView(solo.getView("logoutButton")); //click it
end

我不熟悉机器人或机器人,并且会欣赏任何洞察力。

1 个答案:

答案 0 :(得分:3)

好旧的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();
    }

}