セレンの画面を使用rspec
-
10-07-2019 - |
質問
うことにより踏切や横断歩道上試験に失敗をセレン-クライアントとrspec.私はこのコマンドを実行する:
$ spec my_spec.rb \
--require 'rubygems,selenium/rspec/reporting/selenium_test_report_formatter' \
--format=Selenium::RSpec::SeleniumTestReportFormatter:./report.html
この報告書を正しくすべてのパスには、画面が必要です。しかし、この試験に失敗した場合、取得しこのメッセージを空白画面表示:
WARNING: Could not capture HTML snapshot: execution expired
WARNING: Could not capture page screenshot: execution expired
WARNING: Could not capture system screenshot: execution expired
Problem while capturing system stateexecution expired
因は何だこの実行を終了しました'エラー?私を見落とさないような私のスペック?こちらのコードmy_spec.rb
require 'rubygems'
gem "rspec", "=1.2.8"
gem "selenium-client"
require "selenium/client"
require "selenium/rspec/spec_helper"
describe "Databases" do
attr_reader :selenium_driver
alias :page :selenium_driver
before(:all) do
@selenium_driver = Selenium::Client::Driver.new \
:host => "192.168.0.10",
:port => 4444,
:browser => "*firefox",
:url => "http://192.168.0.11/",
:timeout_in_seconds => 10
end
before(:each) do
@selenium_driver.start_new_browser_session
end
# The system capture need to happen BEFORE closing the Selenium session
append_after(:each) do
@selenium_driver.close_current_browser_session
end
it "backed up" do
page.open "/SQLDBDetails.aspx"
page.click "btnBackup", :wait_for => :page
page.text?("Pending Backup").should be_true
end
end
解決
を得るために画面上にエラー作ったmodもしております。
に移動し以下のコードのspec_helperを見つけたC: uby\lib uby\gems\selenium-client-1.2.18\lib\selenium spec\spec_helper.rb):
if actual_failure?
Selenium::RSpec::SeleniumTestReportFormatter.capture_system_state(selenium_driver, self)
end
でのappend_after(各)いた試験のsetup/teardown(前線@selenium_driver.close_current_browser_session).
武器agiは、dexで下がらないboxerぐ!
他のヒント
私はその問題に遭遇し、ドライバーのタイムアウトを設定することでそれを解決することができました。 これにより、ドライバーは:after_eachを実行する前にブラウザーセッションを終了する可能性があります。 あなたは10秒を使用しています、私は:timeout_in_seconds => 2000
after関数でスクリーンショットを撮らないのはなぜですか?ブラウザーを閉じる前に
これが役立つかどうかわからない、 https://github.com/mattheworiordan/capybara-screenshot、ただし、SeleniumではなくCapybara向けです
"
が欠落しているようです。
it "backed up" do
page.open "/SQLDBDetails.aspx
所属していません StackOverflow