0

我们即将使用 selenium-rc 和 java 客户端构建几个 UI 测试

the app itself is a classic asp web application that uses integrated security to retrieve the user's permissions from a database, and then, according to those permissions, displays a menu with the appropiate options.

我们想自动化那个测试,比如

如果登录的用户是 domain/user_test 那么应该启用 optionx ...

有没有办法以编程方式模拟域帐户,以便服务器上的 selenimum-rc 可以使用指定用户“运行”浏览器?

或者我应该破解一个方法以便通过(例如)查询字符串将用户传递给应用程序?

你如何处理这些测试?

多谢...

4

2 回答 2

1

您正在根据一些查找的记录验证用户的权限并为该用户生成菜单。

以下似乎适合....

  1. IIS 的作用是根据身份验证向应用程序识别用户。
  2. IIS 会将用户识别为 KNOWN 用户或 UNKNOWN 用户。
  3. 如果 IIS 机器在域中,则 KNOWN 用户将包括 DOMAIN 和 LOCAL 用户帐户。

从技术上讲,对于您的 Web 应用程序,本地用户和 DOMAIN 用户之间没有区别。(除非有其他未提及的细节)。您可以通过为每个测试用例定义本地用户(或域用户)并测试每个用户来验证操作是否正确。针对本地用户进行测试可能更容易。

要识别用户,请在 url 中转发您的凭据:

http://用户名:密码@主机名/网站

请注意,从 832894 开始,安全更新已在 IE 中取消了此功能。根据 MS:默认情况下,从安全更新 832894 开始发布的 Windows Internet Explorer 版本不支持在 HTTP 和 HTTP 中处理用户名和密码使用安全套接字层 (SSL) 或 HTTPS URL。Internet Explorer 或 Windows Explorer 不支持以下 URL 语法:http(s)://username:password@server/resource.ext

如果您与 IE 结婚,您可能必须使用 RUNAS(如上所述)启动并设置自动身份验证。

如果您使用的是 FF 或 OPERA,只要您将 IIS 网站目录安全配置为允许“基本身份验证”,就可以了。

于 2009-07-13T16:40:42.283 回答
0

您始终可以使用“RunAs”选项在不同的用户帐户下运行浏览器。如果在 ASP 上启用了模拟,那么这就是 ASP 进程将在其下运行的帐户。由于您已启用集成安全性,因此该模拟帐户也应与您的数据库一起使用。但是,请注意 Windows 上的经典双跳问题。

于 2009-06-10T14:40:12.960 回答