これが私がこれにアプローチする方法です:
単純さと再現性と明確さのために、テストしたいさまざまな日付でデータ ソース (XML ファイルなど) を作成し、それを使用してテストのメソッド パラメータを設定する方が簡単です。
テストを実行すると、データ ソースにあるすべてのデータ行に対して再実行されます。したがって、10 個の日付エントリがある場合、10 回実行されます。
次のコードを CodedUI テストに挿入します。これにより、テストが読み取るデータ ソース (data.xml) が定義されます。
[DeploymentItem("MyTest\\data.xml"), DataSource("Microsoft.VisualStudio.TestTools.DataSource.XML", "|DataDirectory|\\data.xml", "Entry", DataAccessMethod.Sequential), TestMethod]
data.xml は次のようになります。
<?xml version="1.0" encoding="UTF-8" ?>
<Data>
<Entry>
<Date>2013/01/01</Date>
</Entry>
<Entry>
<Date>2013/03/11</Date>
</Entry>
<Entry>
<Date>2013/04/11</Date>
</Entry>
<Entry>
<Date>2013/06/17</Date>
</Entry>
</Data>
ここで、記録されたメソッドのパラメーターを変更して、data.xml データ ソースから読み取るようにします。
this.UIMap.RecordedMethodParams.UITxtDateEditText =TestContext.DataRow["Date"].ToString();
this.UIMap.RecordedMethod();
RecordedMethod に到達したときに CodedUI テストを実行すると、データ ソースにあるすべての日付エントリに対して 1 回実行されます。1 つまたは 10,000 を持つことができます。
テストのパラメーターを変更したいときにいつでも単純な XML を変更できるため、この方法が気に入っています。これにより、熟練していないテスターは、コードに手を出すことなく、要件に合わせてテストを変更することもできます。
これが役立つことを願っています!