0

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

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

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

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

-第二块代码在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
4

2 回答 2

0

¿? 你试过改变..的值吗

Playback.PlaybackSettings.SearchTimeout = miliseconds;

msdn 播放设置.searchtimeout

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

于 2014-01-22T15:57:18.323 回答
0

Coded UI 会精确搜索搜索和过滤属性中给出的内容,运行速度非常快。但是,如果该搜索失败,则 Coded UI 会进行智能匹配,试图找到类似的东西,这可能需要很长时间。这是必要的,因为标题等可能会随着运行而发生一些变化。更改测试以避免需要智能匹配可以显着提高搜索速度。一般的方法是将搜索从相等​​修改为包含并删除更改的字符串部分。微软博客有更详细的解释,见http://blogs.msdn.com/b/dave_froslie/archive/2012/08/10/why-do-my-coded-ui-tests-pause-during-playback.aspx

于 2013-10-10T19:39:36.290 回答