3

作成したjQueryグリッドを調べるコード化されたUIテストハーネスを使用しています。私が遭遇している問題は、グリッドページの場合、ページングを再度呼び出そうとすると、コード化されたUIが古いコントロールを追跡することです。私は例がそれをよりよく説明すると思います:

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

これは私が仕事に取り掛かろうとしているコードです。問題は、生成されたデザイナーファイルにあります。

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

これに変更すると:

this.mUITitlePagingRowRow = new UITitlePagingRowRow(this);

それは毎回動作します。問題は、uitestが再生成されると、明らかな理由で元に戻ることです。常に最新バージョンのコントロールを取得するために.uitestファイルに入れることができることを誰かが知っている追加のパラメーターはありますか?

4

2 に答える 2

3

コントロールのSearchConfigurationsにAlwaysSearchを追加します。これにより、テストはコントロールをキャッシュせず、定義されたプロパティを使用して常に検索します。お役に立てれば。

于 2011-05-27T08:43:04.787 に答える
1

テストメソッドからマップを更新できます。したがって、部分クラスのメソッドを2回呼び出す場合は、次のように入力します。BaseMap BaseMap = new BaseMap();これにより、マップが更新されBaseMap.MSMaintenanceMap.PageNext();、更新の問題なしで呼び出すことができます。

これを回避する別の方法は、に依存しないことBaseMap.Designer.csです。BaseMap.cs部分クラスに手動でメソッドを書くことができます。これは生成されません。PageNext()オブジェクトをマップに記録します。次に、次のようなメソッドを記述します。

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

    Mouse.Click('TheObjectYouRecorded');
}

お役に立てれば。

于 2011-05-26T11:38:22.987 に答える