编码UI测试-通过windows认证凭证从代码-[在Web应用程序]
本文关键字:Web 应用程序 代码 测试 UI -通过 windows 凭证 认证 编码 | 更新日期: 2023-09-27 18:01:54
我有一个情况,我想通过寡妇身份验证到web应用程序。
我在ie 11/10中遇到了一个问题,当我运行功能测试和打开web应用程序时,它没有要求我提供windows身份验证凭据。我在网上发现我们可以改变IE的安全设置,但在我的情况下,我工作的公司禁用了这个功能。
所以,请让我知道是否有任何方法我可以通过windows认证凭证从代码?
我不相信有一种方法可以通过代码传递windows凭据。您最好的选择是将您的测试代理帐户添加到测试目的所需的任何AD组中。
我们可以使用WinControls在CodedUI中处理web应用程序的Windows身份验证。下面是我的代码,工作得很好:
public void launch88()
{
BrowserWindow Browser = new BrowserWindow();
string url = "http://abcd:8080/xyz/";
BrowserWindow.Launch();
Browser.NavigateToUrl(new Uri(url));
WinWindow securityWindow = new WinWindow();
securityWindow.SearchProperties.Add(WinWindow.PropertyNames.Name, "Windows Security",PropertyExpressionOperator.EqualTo);
securityWindow.SearchProperties.Add(WinWindow.PropertyNames.ClassName, "Credential Dialog Xaml Host", PropertyExpressionOperator.EqualTo);
securityWindow.WindowTitles.Add("Windows Security");
WinEdit userName = new WinEdit(securityWindow);
userName.SearchProperties.Add(WinEdit.PropertyNames.Name, "User name", PropertyExpressionOperator.EqualTo);
userName.WindowTitles.Add("Windows Security");
Mouse.Click(userName);
Keyboard.SendKeys("my username");
WinEdit password = new WinEdit(securityWindow);
password.SearchProperties.Add(WinEdit.PropertyNames.Name, "Password", PropertyExpressionOperator.EqualTo);
password.WindowTitles.Add("Windows Security");
Mouse.Click(password);
Keyboard.SendKeys("my password");
WinButton ok = new WinButton(securityWindow);
ok.SearchProperties.Add(WinButton.PropertyNames.Name, "OK", PropertyExpressionOperator.EqualTo);
ok.WindowTitles.Add("Windows Security");
Mouse.Click(ok);
}