2013-10-09 65 views
0

因此,我正在使用編碼UI來運行一些自動化測試,其中一項測試需要很長時間才能完成。編碼的UI測試需要2-3分鐘才能通過

我使用了斷點,發現在最後得到底部的代碼塊之後,幾分鐘內沒有任何反應,最後Assert.AreEqual完成並且測試通過。

我試着改變一些播放設置,但沒有改變。有誰知道發生了什麼,以及我如何解決它?

的代碼-The第一塊所生成的斷言方法,其獲取由測試

的代碼-The第二塊被稱爲在斷言稱爲參數

'''<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 
+0

我們可以看到'Me.UIAppWindow1.UIAppDocument.UIX978532666mkrdataTblTable1.UINameCell'的定義控制? –

回答

0

編碼UI確實搜索搜索和過濾器屬性中給出的內容,它的運行速度非常快。但是,如果該搜索失敗,則編碼的UI會進行智能匹配,試圖找到類似的東西並且可能需要很長時間。這是必要的,因爲標題等可以從運行到運行稍微改變。更改測試以避免需要智能匹配可以顯着提高搜索速度。一般的做法是將搜索範圍從修改爲包含,並刪除部分更改的字符串。微軟博客更詳細地解釋,請參閱http://blogs.msdn.com/b/dave_froslie/archive/2012/08/10/why-do-my-coded-ui-tests-pause-during-playback.aspx

相關問題