現在、UIテストをCodedUIテストに移行しています。今、私は次のトラブルに直面します:コード化されたUIテストとMessageBoxのトラブル - 検索条件
私のUnitTestでは、自分のUIMapにあるメソッドを2回呼び出します。このメソッドには、MessageBoxウィンドウが開いているかどうかをチェックするフラグメントが含まれており、メッセージボックスの確認またはキャンセルボタンをクリックするかどうかを切り替えるboolean paramがあります。メッセージボックスは決して変更されません(タイトル、テキスト、ボタンを意味します)。
public void MyUiMethod(bool p)
{
//...variable initialization...
ApplicationUnderTest app = ApplicationUnderTest.Launch(@"some.exe");
try
{
//... get to the point that triggers the MB to show...
Assert.AreEqual(true, uImessageBoxWindow.Exists);
if (p)
Mouse.Click(uIConfirmButton, new Point(39, 16));
else
Mouse.Click(uICancelButton, new Point(49, 8));
}
finally
{
app.Close();
}
}
最初の呼び出しは毎回問題なく動作します。 2回目の呼び出しでは、Messageboxがポップアップしますが、テストフレームワークでは見つかりません。
CodedUiTestBuilderがMessageBoxに割り当てる検索条件は、名前(Info)とクラス名(#32770)です。
ここで間違っている可能性のあることについて誰かがヒントを持っていますか? MessageBoxコントロールのアクセシビリティが不足していますか?
よろしく、
セブ
ありがとう、それは私を助けた!なぜ私は前にそれを試していないのだろう... –