HTMLテキスト入力フィールドにテキストが入力されるコード化されたUIテストをセットアップしました。BrowserWindow.Launch(url) 経由でブラウザーを起動すると、完全に正常に動作します。
ApplicationUnderTest.Launch(psi) を介して別のユーザーとしてブラウザーを起動すると、そのテキストを入力する以外はすべて正常に動作します。行「this._control.Text = sText」が CUITe_HtmlEdit の SetText() でヒットすると、コード化された UI が次のメッセージで失敗する前に、テキストの各文字が入力フィールドに 3 回書き込まれることがわかります。
PlaybackFailureException: コントロールで 'SetProperty of Text with value "r"' を実行できません。
明らかに、CUITe はコントロールにテキストを書き込むことができますが、それが行われたことを認識していません。また、UI マップの記録と編集のオプションを使用してみました (つまり、CUITe を使用していません)。問題は同じで、CUITe の問題ではありません。他のすべてのコントロールは正常に機能します (ボタン、リンク、ドロップダウン)。
手がかりはありますか?
別のユーザーとしてブラウザーを起動するコードは次のとおりです。
var psi = new ProcessStartInfo
{
UserName = userName,
Password = pwSecure,
Domain = "mydomain",
FileName = @"C:\Program Files (x86)\Internet Explorer\iexplore.exe",
Arguments = url,
LoadUserProfile = true,
UseShellExecute = false
};
ApplicationUnderTest.Launch(psi);
これには IE9 を使用しており、URL (ProcessStartInfo.Arguments プロパティ) はhttp://localhost:81/
(ローカル IIS 7.5 でホストされているサイト) です。
ありがとう、ルディ