(環境: IronPython と TFS SDK を使用した VSTS2010)
ワークフロー #1 次のワークフローは、期待どおりに動作します。
- 新しいテストランを作成する
- テストポイントを追加
- テストランを保存
私の予想される動作: テストランはテストポイントと共に保存されます。
観察された動作: 予想される動作と一致します - testrun.QueryTestResults() 呼び出しで検証されました。
ワークフロー #2 次のワークフローが期待どおりに動作しません。
- 新しいテストランを作成する
- テストポイントを追加
- テストランを保存
- 別のテストポイントを追加
- テストランを保存
私の予想される動作:テストランはテスト ポイントと共に保存する必要があります。
観察された動作:最初のテストポイントが保存されます。最初の保存後の他のすべてのテストポイントは保存されません。スローされるエラーや、失敗を示す SDK からのフィードバックはありません。
ワークフロー #3 同様に、次のワークフローは期待どおりに動作しません。
- ID testManagementService.QueryTestRuns("SELECT * FROM TestRun WHERE TestRunId=%s" % testrunId) で既存のテストランを取得します
- テストポイントを追加
- テストランを保存
私の予想される動作:テストランはテスト ポイントと共に保存する必要があります。
観察された動作: 追加されたテストポイントは追加されません。スローされるエラーや、失敗を示す SDK からのフィードバックはありません。
観察された動作がワークフロー #2 および #3 で予想される動作と異なる理由を誰か説明できますか?
更新 (2012-11-16 12:00 CST)
これを掘り下げるのは簡単ではなかったので、自分の質問に答える(編集する)。
msdn.microsoft.com検索(検索用語: itestrun はテストポイントの追加に失敗しました)。
このテスト計画に結果を追加できるようにするには、テスト計画で新しいテスト ランを作成します。ディクショナリに存在するテスト ポイントをマップし、このテスト ランに追加します。理想的には、実行にテスト ポイントを追加しながら結果を追加できる必要がありますが、現在、run.Save() API は単一の保存に対してのみ機能しています。したがって、すべてのテストポイントを追加し、テストの実行を保存してから、実行コレクションを反復処理して結果を個別に追加する必要があります。パフォーマンスを向上させるために、すべての結果が追加/更新されたら、結果コレクションを一度保存してください。
したがって、これは VSTS2010 の制限のようです。最初のテストランの保存後にテスト ポイントを追加することはできません。