获取“错误的参数类型 Fixnum(预期字符串)(TypeError)”,而 运行 Cucumber 在遇到 Capybara 函数时进行测试
Getting " wrong argument type Fixnum (expected String) (TypeError)" while running the Cucumber tests whenever it encounters the Capybara function
我正在尝试在我的功能测试中使用水豚,但我一直收到上述错误。但是,当涉及非 Capybara 函数时,我的测试有效。
这是我的 env.rb 中的设置:
Capybara.server_host = 45454
#Capybara.server_host = host
Capybara.app_host = 'http://localhost:45454'
Capybara.default_driver = :poltergeist
还为 Phantomjs 设置了 PATH 变量
以下是我遇到问题的步骤定义文件。
Given(/^I navigate to home page$/) do
visit '/'
end
And /^I take screenshot$/ do
page.save_screenshot
end
以下是功能文件
Scenario: To validate the page shows up
Given I navigate to home page
And I take screenshot
这是输出:
Scenario: To validate the page shows up←[90m # features/home.feature:8←[0m
←[31mGiven I navigate to home page←[90m # features/step_definitions/
home_steps.rb:8←[0m←[0m
←[31m wrong argument type Fixnum (expected String) (TypeError)←[0m
←[31m ./features/step_definitions/home_steps.rb:9:in `/^I navigate to
home
page$/'←[0m
←[31m features/home.feature:9:in `Given I navigate to home page'←[0m
←[36mAnd I take screenshot←[90m # features/step_definitions/
home_steps.rb:12←[0m←[0m
←[31m wrong argument type Fixnum (expected String) (TypeError)←[0m
←[31mFailing Scenarios:←[0m
←[31mcucumber features/home.feature:8←[0m←[90m # Scenario: To validate the
page
shows up←[0m
1 scenario (←[31m1 failed←[0m)
2 steps (←[31m1 failed←[0m, ←[36m1 skipped←[0m)
0m0.649s
Capybara.server_host
需要是 Capybara 可以将 AUT 绑定到的接口的 hostname/ip,而不是数字。
您可能正在尝试设置端口,这将是
Capybara.server_port = 45454
然后根据您设置的 app_host
判断(这可能不是必需的)您还想设置
Capybara.server_host = 'localhost'
我正在尝试在我的功能测试中使用水豚,但我一直收到上述错误。但是,当涉及非 Capybara 函数时,我的测试有效。
这是我的 env.rb 中的设置:
Capybara.server_host = 45454
#Capybara.server_host = host
Capybara.app_host = 'http://localhost:45454'
Capybara.default_driver = :poltergeist
还为 Phantomjs 设置了 PATH 变量
以下是我遇到问题的步骤定义文件。
Given(/^I navigate to home page$/) do
visit '/'
end
And /^I take screenshot$/ do
page.save_screenshot
end
以下是功能文件
Scenario: To validate the page shows up
Given I navigate to home page
And I take screenshot
这是输出:
Scenario: To validate the page shows up←[90m # features/home.feature:8←[0m
←[31mGiven I navigate to home page←[90m # features/step_definitions/
home_steps.rb:8←[0m←[0m
←[31m wrong argument type Fixnum (expected String) (TypeError)←[0m
←[31m ./features/step_definitions/home_steps.rb:9:in `/^I navigate to
home
page$/'←[0m
←[31m features/home.feature:9:in `Given I navigate to home page'←[0m
←[36mAnd I take screenshot←[90m # features/step_definitions/
home_steps.rb:12←[0m←[0m
←[31m wrong argument type Fixnum (expected String) (TypeError)←[0m
←[31mFailing Scenarios:←[0m
←[31mcucumber features/home.feature:8←[0m←[90m # Scenario: To validate the
page
shows up←[0m
1 scenario (←[31m1 failed←[0m)
2 steps (←[31m1 failed←[0m, ←[36m1 skipped←[0m)
0m0.649s
Capybara.server_host
需要是 Capybara 可以将 AUT 绑定到的接口的 hostname/ip,而不是数字。
您可能正在尝试设置端口,这将是
Capybara.server_port = 45454
然后根据您设置的 app_host
判断(这可能不是必需的)您还想设置
Capybara.server_host = 'localhost'