gpt4 book ai didi

ruby-on-rails - cucumber 中的http基本身份验证测试

转载 作者:行者123 更新时间:2023-12-04 03:44:46 25 4
gpt4 key购买 nike

我正在尝试通过 http basic 测试登录,但不断出现错误,我已经上传了代码 here

我有 http_basic_authenticate_with name: "name", password: "password"在我的应用程序 Controller 中

我的登录步骤定义是;

Given /^I login as admin$/ do
authorize "name", "password"
end

但它不起作用,我得到了错误

    expected there to be content "Posts" in "HTTP Basic: Access denied.\n"
(RSpec::Expectations::ExpectationNotMetError)

谁能告诉我如何让 cucumber/capybara 登录?

最佳答案

我让它使用两种不同的方法中的一种;选择你:

### Following works ONLY if performed first before even going to a page!!!
if page.driver.respond_to?(:basic_auth)
puts 'Responds to basic_auth'
page.driver.basic_auth(username, password)
elsif page.driver.respond_to?(:basic_authorize)
puts 'Responds to basic_authorize'
page.driver.basic_authorize(username, password)
elsif page.driver.respond_to?(:browser) && page.driver.browser.respond_to?(:basic_authorize)
puts 'Responds to browser_basic_authorize'
page.driver.browser.basic_authorize(username, password)
else
raise "I don't know how to log in!"
end

我的测试响应了 browser_basic_authorize

encoded_login = ["#{username}:#{password}"].pack("m*")
page.driver.header 'Authorization', "Basic #{encoded_login}"

两者都是我在搜索中的几个地方找到的。

关于ruby-on-rails - cucumber 中的http基本身份验证测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7473477/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com