空手道 - 身份验证 - 无法访问密码下的 url 地址

Karate - Authentication - cannot access url address under password

使用空手道,我需要使用基本身份验证(使用用户名和密码通过通用身份验证对话框 window),我试过这个:https://github.com/intuit/karate#http-basic-authentication-example)。

  1. 我已经创建了文件 basic-auth.js
    function fn(creds) {
      var temp = creds.username + ':' + creds.password;
      var Base64 = Java.type('java.util.Base64');
      var encoded = Base64.getEncoder().encodeToString(temp.bytes);
      return 'Basic ' + encoded;
    }
  1. 我已将调用添加到测试功能文件 I 运行(添加到场景部分):
    header Authorization = call read('basic-auth.js') { username: 'realusernamestring', password: 'realpasswordstring' }
  1. 然后我把我想访问的url放在:
  2. 之后
    driver urlUnderPassword

但是还是不行,我还是进不去页面。我认为缺少一些东西,需要做一些事情。你能帮我看看问题出在哪里吗?

谢谢。

您指的是 API 测试而不是 UI 测试。

如果你需要浏览器/驱动程序做基本认证应该很容易,只要把它放在URL:https://intellipaat.com/community/10343/http-basic-authentication-url-with-in-password

所以我猜这样的东西会起作用:

* driver 'http://' + username + ':' + password + '@' + urlUnderPassword