Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/340.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在Android Studio的Robotium中测试AlertDialog项单击_Java_Android_Robotium - Fatal编程技术网

Java 如何在Android Studio的Robotium中测试AlertDialog项单击

Java 如何在Android Studio的Robotium中测试AlertDialog项单击,java,android,robotium,Java,Android,Robotium,我有一个AlertDialog,如下所示,我不知道如何在Android Studio中使用Robotium进行测试。有人能给我一个提示吗 AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(MainActivity.this); alertDialogBuilder.setTitle("Select"); final String[] items = {"Tak

我有一个AlertDialog,如下所示,我不知道如何在Android Studio中使用Robotium进行测试。有人能给我一个提示吗

    AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(MainActivity.this);

            alertDialogBuilder.setTitle("Select");
            final String[] items = {"Take a picture using carmera", "Choose a picture from Album"};
            alertDialogBuilder.setItems(items, new DialogInterface.OnClickListener() {
                @Override
                public void onClick(DialogInterface dialogInterface, int i) {
                    if (i == 0) {
。。。 …参见:

这对我很有用:

solo.clickOnView(solo.getView(android.R.id.button1)); 
其中“肯定”按钮是android.R.id.button1,“否定”按钮 按钮是android.R.id.button2,“中立”是android.R.id.button3

这意味着对于
AlertDialog
您需要使用
solo.clickOnView(solo.getView(dialogId))
方法

请同时查看:

假设您有一些这样的代码

solo.clickOnView(view1);

solo.clickOnView(view2);
您知道对话框可能出现在测试的这两个步骤之间,您可以在代码中放置如下内容:

if(solo.waitForView(dialogView, 1000, false)){
    solo.clickOnView(dialogDismissButton);
    solo.clickOnView(view2) //retry the step above
}

你能解释一下这与问题中的代码有什么关系吗?太好了,我为你编辑了更多的内容(超链接内联,引用第二个链接)。