Robolectric,如何检查FragmentDialog的可见性?

时间:2015-11-12 19:18:06

标签: android unit-testing junit android-fragmentactivity robolectric

我的活动中有一个按钮。点击后,它会检查用户注册状态。如果已注册,则显示对话框,否则开始注册活动。

我设置了用户已注册的必需标志。我执行click并期望必须创建对话框但是在调试之后我看到它为null:(

这是我的代码:

Sub Extractdatafromwebsite()
Dim ie As InternetExplorer
Dim Eventno As String
Dim doc As HTMLDocument
Eventno = Sheet1.Range("A2").Value


ie.Visible = True
ie.navigate "https://www.bankeauctions.com/#" & Eventno

Do
    DoEvents
    Loop Until ie.readyState = READYSTATE_COMPLETE

Set doc = ie.document
On Error Resume Next
output = doc.getElementById("ContentPlaceHolder1_lblReserverPrice" & Eventno).innerText
Sheet1.Range("B2").Value = output

ie.Quit

任何想法,将不胜感激,谢谢。

1 个答案:

答案 0 :(得分:0)

omg,我发现我的问题在哪里。我的activity = Robolectric.buildActivity(HitchWelcomeActivity.class).create().get();方法中有setupView这是错误的。为了获得真正的活动,我也应该有visible()方法。

所以,我将上面的代码更改为以下内容并解决了我的问题。

    @Before
    public void setUp()
    {
        activity = Robolectric.buildActivity(WelcomeActivity.class)
                .create()
                .start()
                .resume()
                .visible()
                .get();

        btnSignUp = (Button) activity.findViewById(R.id.dialog_welcome_sign_up);
        btnSkip = (TextView) activity.findViewById(R.id.dialog_welcome_next_time);
    }