WaTin 无法在 IE8 中进行身份验证
我目前正在使用 WaTiN 2 在我们的 Web 应用程序上运行一些测试。其中之一需要身份验证,因此 WaTiN 需要填写服务器上有效 Windows 帐户的用户名和密码。
我已手动测试了此帐户,方法是单击 IE8 上的“以其他用户身份登录”选项,然后填写凭据。我看到了我想要的页面,所以系统正在运行。 然而,当我使用 watin 运行测试时,我看到 watin 输入了用户名和密码,但随后我收到了 401 未经授权的错误消息。
有趣的是,当我的同事从他的本地开发机器(不是我们都使用的大型开发系统)运行测试时,测试工作没有出现任何问题。如果我们从开发系统运行它,它会失败并显示 401 页面。
当我们安装IE8时,这个问题首先出现,因为我们之前的watin无法使用它。所以我们升级了watin,现在遇到了这个问题。
I'm currently using WaTiN 2 to run some tests on our webapplication. One of these requires authentication so WaTiN needs to fill in the username and password for a valid Windows Account on the server.
I've tested this account manually, by clicking the "Login as a different user" option on IE8 and then filling in the credentials. I see the page that I want, so the system is working.
When i'm running the test with watin however, I see watin type in the username and password but then i receive an 401 Unauthorized error message.
The funny thing is, when my colleauge runs the test from his local development machine ( not the big dev system we all work on) the test works without a single problem. If we run it from the dev system, it fails with the 401 page.
The problem first popped up when we installed IE8, since our previous watin could not work with it. So we upgraded watin and now we're encountering this problem.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
问题不在于以管理员身份运行测试。
问题是 WaTiN 2 无法正确识别 Windows 7 上 IE8 的登录对话框。
为了解决此问题,我为 IE8 编写了自己的 LogonDialogHandler 类,该类依赖于 WPF 的 Windows 身份验证 API 3.0。
这个类目前可以工作,并且允许我的测试在我们的应用程序上毫无问题地登录。
The problem was not running the tests as Administrator.
The problem is that WaTiN 2 is not able to properly recognize the login dialog from IE8 on Windows 7.
To get around this problem, I wrote my own LogonDialogHandler class for IE8 that relies on the Windows Authentication API 3.0 from WPF.
This class currently works and allows my tests to login without problem on our applications.