2011-03-10 80 views
3

我正在使用編碼的用戶界面測試工具,看看我們寫的jQuery網格。我遇到的問題是當網格頁面時,編碼的ui在我嘗試再次調用分頁時跟蹤舊控件。我想一個例子能更好地解釋:編碼的用戶界面控件需要刷新

BaseMap.MSMaintenanceMap.PageNext(); BaseMap.MSMaintenanceMap.PageNext();

這是我試圖去上班的代碼。問題是在這裏生成的設計文件:

if ((this.mUITitlePagingRowRow == null)) { this.mUITitlePagingRowRow = new UITitlePagingRowRow(this); }

當我把它改成這樣:

this.mUITitlePagingRowRow = new UITitlePagingRowRow(this);

它屢試不爽。問題在於uitest重新生成時,由於顯而易見的原因,這會恢復原狀。是否有任何其他參數可以讓任何人知道我可以放入.uitest文件中以獲取最新版本的控件?

+0

哦,我應該提到的一件事是頁面不回傳,它執行jQuery ajax調用來獲取下一頁數據。 – light 2011-03-10 16:07:33

回答

3

將AlwaysSearch添加到控件的SearchConfiguration中,這會強制測試不緩存控件,但始終使用定義的屬性查找它。希望這可以幫助。

1

您可以從您的測試方法刷新地圖。所以,當你第二次在部分類中調用方法時,只需要輸入如BaseMap BaseMap = new BaseMap();然後這將刷新地圖,並且可以調用BaseMap.MSMaintenanceMap.PageNext();而不會出現刷新問題。

另一種解決方法是不要依靠BaseMap.Designer.cs。您可以在BaseMap.cs部分類中手動編寫該方法。這不會生成。將PageNext()對象記錄到地圖中。然後寫一個這樣的方法:

public void PageNext() 
{ 
    BaseMap = new BaseMap(); 

    Mouse.Click('TheObjectYouRecorded'); 
} 

希望這有助於。