如果视图存在则执行命令

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

}