相关疑难解决方法(0)

如何使用Java处理Selenium WebDriver的身份验证弹出窗口

我正在尝试使用以下代码处理身份验证弹出窗口:

FirefoxProfile profile = new FirefoxProfile();
profile.setPreference("network.http.phishy-userpass-length", 255);
profile.setPreference("network.automatic-ntlm-auth.trusted-uris", "x.x.x.x");
driver = new FirefoxDriver(profile);
baseUrl="http://" + login + ":" + password + "@" + url;
driver.get(baseUrl + "/");
Run Code Online (Sandbox Code Playgroud)

当我执行测试时,页面显示身份验证弹出窗口,并且仍然加载直到我单击取消按钮.那一刻,我可以访问下一页,这意味着身份验证成功但仍然始终显示身份验证弹出窗口

java authentication selenium popup selenium-webdriver

50
推荐指数
4
解决办法
14万
查看次数

Selenium - 通过URL进行基本身份验证

在我的Selenium-Test(有chromedriver-2.24)中,我试图通过基本身份验证访问我的网页,并使用以下语句:

WebDriver driver  = ...;
driver.get("http://admin:admin@localhost:8080/project/");
Run Code Online (Sandbox Code Playgroud)

但谷歌Chrome在控制台中给出了以下警告:

[弃用]其URL包含嵌入凭据(例如https://user:pass@host/)的子资源请求被阻止.有关详细信息,请参阅https://www.chromestatus.com/feature/5669008342777856.

在标记的链接中提到支持被删除:

在子资源请求中删除对嵌入式凭据的支持.(已删除)

我现在的问题是,还有另一种从Selenium进行基本身份验证的方法吗?

注意:这没有帮助:如何使用Java处理Selenium Webdriver中的HTTP Basic Auth头?

java selenium google-chrome basic-authentication selenium-webdriver

7
推荐指数
2
解决办法
9035
查看次数

API测试的剧作家基本认证

我正在尝试使用 Playwright 进行 API 测试。简单的情况是我正在尝试获取有关用户的信息。要使用curl 执行此操作,我可以发出命令:

curl --user username:password https://example.com/api/user/id
Run Code Online (Sandbox Code Playgroud)

这将返回一些 JSON。超级简单。

我已经阅读了 Playwright 文档,观看了一些 YouTube 视频并搜索了各种来源,但不知道如何在 Playwright 中复制它!

我的请求始终得到“403 Forbidden”的响应。

在我的playwright.config.ts文件中,我添加了httpCredentials这样的内容:

curl --user username:password https://example.com/api/user/id
Run Code Online (Sandbox Code Playgroud)

与此同时,在我的apiExperiment.spec.ts文件中:

import type { PlaywrightTestConfig } from '@playwright/test';
import { devices } from '@playwright/test';

const config: PlaywrightTestConfig = {
  [...]

  use: {
    headless: false,
    /* Maximum time each action such as `click()` can take. Defaults to 0 (no limit). */
    actionTimeout: 0,
    /* Base URL to use in …
Run Code Online (Sandbox Code Playgroud)

playwright

4
推荐指数
1
解决办法
1万
查看次数

Chrome 59支持URL中的基本身份验证凭据,以便与Chromedriver一起使用?

使用Chrome 59支持将基本身份验证凭据放入网址 - 比如https://foo:bar@www.foo.com已经结束 - 这在不久之前曾在https://www.chromestatus.com/feature/5669008342777856中得到警告.

有没有人不得不与Selenium和Chromedriver一起解决这个问题呢?特别是在Python中?

python selenium pytest selenium-chromedriver selenium-webdriver

3
推荐指数
1
解决办法
2231
查看次数