亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

TestComplete中執行腳本時控件值未同步刷新問題

發布時間:2020-05-30 22:59:39 來源:網絡 閱讀:2713 作者:孤月2012 欄目:軟件技術

今天寫了一個程序安裝的自動化腳本,調試的時候發現有些控件的值獲取后一直未自動刷新,鑒于該問題,仔細分析和請教后,發現TestComplete不會自動刷新控件中變化的值,這需要我們自己去控制刷新。

1、定義一個延遲函數(參數:延遲秒數,執行延遲的條件)

Function TimeDelay(DelaySeconds,condition)
    Dim interval,startTime
    startTime=Time
    Do While CBool(condition)
        sleep(DelaySeconds*1000)
        interval=Second(Time - startTime)
        If interval =40 Then
            Log.Error("Time Out.")
            Exit Do
        End If   
    Loop
End Function

 

2、Namemapping 一個顯示進度的控件(控件的value:0%-100%):

Set InstallProgress = Aliases.SQLNav.frmSQLNavWizard.panelMain.panelFrameHolder.SelectProduct.pnlNewProducts.pnlRightInstallProgress.labelInstallProgress

 

3、在腳本中調用函數:

Call TimeDelay(2,InstallProgress.Caption<>"100%")

發現會一直延遲,直到超過指定間隔Time Out,原因就是最上面分析的,控件InstallProgress.Caption的值沒有動態刷新,獲取的是調用時的值,后面一直未改變。

 

4、修改腳本:

對于具有動態值的控件,使用上面的延遲函數顯然不合適,對于具有動態值的控件下的延遲處理,可單獨寫一段腳本處理,使用TestComplete自帶的方法RefreshMappingInfo()只刷新該控件 :

    Dim beginTime
    beginTime = time
    Do While InstallProgress.Caption<>"100%"
        sleep(2000)
        InstallProgress.RefreshMappingInfo 
        If Second(time - beginTime) =40 Then
            Log.Error("Time Out.")
            Exit Do
        End If   
    Loop

或者是在函數中加入sys.refresh()刷新整個程序,不過不建議使用這種,整個刷新很耗性能的。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

永胜县| 托克逊县| 长垣县| 乐陵市| 长岛县| 同江市| 寿阳县| 当雄县| 洪湖市| 固阳县| 于都县| 民和| 宁乡县| 嘉荫县| 洛隆县| 论坛| 溧阳市| 靖西县| 图片| 和顺县| 佛学| 调兵山市| 山阴县| 二连浩特市| 海阳市| 南宁市| 余江县| 开鲁县| 盐津县| 察隅县| 茂名市| 大同市| 靖边县| 白山市| 平舆县| 义乌市| 城固县| 德州市| 剑河县| 太湖县| 仙游县|