编码的 UI 测试需要 2-3 分钟才能通过



所以我正在使用编码的 UI 来运行一些自动化测试,其中一个测试需要很长时间才能完成。

我使用了断点,发现在代码底部块的 End Get 之后,几分钟内什么也没发生,最后 Assert.AreEqual 完成并且测试通过。

我尝试更改一些播放设置,但没有任何变化。 有谁知道发生了什么,以及我该如何解决它?

-第一个代码块是生成的 Assert 方法,由测试调用

-第二个代码块在断言参数中调用

    '''<summary>
    '''assert_clicked_columnhead_requestor - Use 'assert_clicked_columnhead_requestorExpectedValues' to pass parameters into this method.
    '''</summary>
    Public Sub assert_clicked_columnhead_requestor()
        Dim uINameCell As HtmlCell = Me.UIAppWindow1.UIAppDocument.UIX978532666mkrdataTblTable1.UINameCell
        'Verify that 'Name' cell's property 'InnerText' equals 'Name'
        Assert.AreEqual(Me.assert_clicked_columnhead_requestorExpectedValues.UINameCellInnerText, uINameCell.InnerText)
    End Sub

    Public Overridable ReadOnly Property assert_clicked_columnhead_requestorExpectedValues() As assert_clicked_columnhead_requestorExpectedValues
        Get
            If (Me.massert_clicked_columnhead_requestorExpectedValues Is Nothing) Then
                Me.massert_clicked_columnhead_requestorExpectedValues = New assert_clicked_columnhead_requestorExpectedValues()
            End If
            Return Me.massert_clicked_columnhead_requestorExpectedValues 'PROBLEM HERE
        End Get
    End Property

根据要求

    '''<summary>
    '''click_columnhead_requestor
    '''</summary>
    Public Sub click_columnhead_requestor()
        Dim uIRequestorCell As HtmlHeaderCell = Me.UIAppWindow1.UIAppDocument.UIRequestorCell
        'Click 'Requestor' cell
        Mouse.Click(uIRequestorCell, New Point(51, 23))
    End Sub
    Public ReadOnly Property UIAppWindow1() As UIAppWindow1
        Get
            If (Me.mUIAppWindow1 Is Nothing) Then
                Me.mUIAppWindow1 = New UIAppWindow1()
            End If
            Return Me.mUIAppWindow1
        End Get
    End Property
    Public ReadOnly Property UIX978532666mkrdataTblTable1() As UIX978532666mkrdataTblTable1
        Get
            If (Me.mUIX978532666mkrdataTblTable1 Is Nothing) Then
                Me.mUIX978532666mkrdataTblTable1 = New UIX978532666mkrdataTblTable1(Me)
            End If
            Return Me.mUIX978532666mkrdataTblTable1
        End Get
    End Property

编码的 UI 会精确搜索搜索和筛选器属性中给出的内容,运行速度非常快。但是,如果该搜索失败,则编码的 UI 会执行智能匹配,尝试查找类似内容,这可能需要很长时间。这是必要的,因为标题等可能会在运行之间发生一些变化。更改测试以避免需要智能匹配可以显着提高搜索速度。一般方法是将搜索从相等修改为包含,并删除字符串中更改的部分。Microsoft博客更详细地解释了,请参阅 http://blogs.msdn.com/b/dave_froslie/archive/2012/08/10/why-do-my-coded-ui-tests-pause-during-playback.aspx

>¿? 您是否尝试过更改 ..

Playback.PlaybackSettings.SearchTimeout = miliseconds;

msdn playbacksettings.searchtimeout

祝你好运,告诉我们一些事情

最新更新