如何使用UIAUTOMATOR

时间:2015-06-12 05:20:10

标签: android python uiautomator android-uiautomator

我正在尝试在android中自动化本机应用程序。在该应用程序中我有登录功能。我自动化了正流量。现在我试图获取弹出窗口中显示的错误消息,如果我不填写电子邮件字段这个弹出窗口不是由UIAUTOMATORVIEWER识别的。

我正在使用python和UIAUTOMATOR。有人请建议我如何获取弹出窗口中显示的错误消息。

下面我附上图片。 error message in popup.

我想打印' Field不能为空'消息显示在弹出窗口中。

print self.d(text='Email').text

发送电子邮件'文字不是'字段不能为空'信息。

2 个答案:

答案 0 :(得分:0)

我刚写了这段代码给你一条路。根据您的要求做进步:

<强> XML:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent" >

    <TextView
        android:id="@+id/tv_email"
        android:layout_width="match_parent"
        android:layout_height="40dp"
        android:background="@color/Black"
        android:text="Email"
        android:textColor="@color/White" />

    <TextView
        android:id="@+id/tv_pass"
        android:layout_width="match_parent"
        android:layout_height="40dp"
        android:background="@color/Black"
        android:layout_below="@+id/tv_email"
        android:text="Password"
        android:textColor="@color/White" />

    <FrameLayout 
        android:id="@+id/frame_for_email_error"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentRight="true"
        android:layout_below="@+id/tv_email"
        android:visibility="gone">

        <TextView
        android:id="@+id/tv_pass"
        android:layout_width="match_parent"
        android:layout_height="40dp"
        android:background="@color/Gray"
        android:text="Field cannot be empty"
        android:textColor="@color/Black" />

    </FrameLayout>

</RelativeLayout>

当您的电子邮件是!(email.length&gt; 0)时,请执行以下操作:

Java代码:

FrameLayout frame = (FrameLayout) findviewbyid(R.id.frame_for_email_error);

frame.setvisibility(View.Visible);

答案 1 :(得分:0)

很抱歉告诉你,但你不能。我遇到了同样的问题(针对那种情况和其他问题)。所有UiAutomator都可以看到uiAutomatorViewer识别的内容。

P.s。:这也是为什么UiAutomator不会读取/找到屏幕上当前不可见的对象的原因。