Ich versuche, etwas in 2 Frames zu tun, aber der Fehler erhöht sich jedes Mal, wenn ich versuche, zwischen Frames zu wechseln. Zum Beispiel:Wie kann ich zwischen zwei Frames mit Capybara wechseln
# encoding: utf-8
require "capybara/dsl"
Capybara.run_server = false
Capybara.current_driver = :selenium
Capybara.app_host = 'https://hb.posted.co.rs/posted'
class Account
include Capybara::DSL
def check_balance
visit('/')
page.driver.browser.switch_to.frame 'main'
fill_in 'korisnik', :with => 'foo'
fill_in 'lozinka', :with => 'bar'
click_button 'Potvrda unosa'
page.driver.browser.switch_to.frame 'header'
click_on 'Stanje'
end
end
account = Account.new
account.check_balance
Fehler ist:
[remote server] file:///tmp/webdriver-profile20120810-9163-xy6dtm/extensions/[email protected]/components/driver_component.js:6638:in `unknown': Unable to locate frame: main (Selenium::WebDriver::Error::NoSuchFrameError)
Was ist das Problem? Vielleicht mache ich hier etwas falsch?
Wenn ich ändern, um Rahmen des Schaltens so versuchen Sie zuerst zu ‚Header‘ zu wechseln wechseln Sie dann zu ‚main‘ Frame dann denselben Fehler wirft, außer, dass er sagt, dass dieses Mal gibt es kein ‚main‘ Rahmen:
# encoding: utf-8
require "capybara/dsl"
Capybara.run_server = false
Capybara.current_driver = :selenium
Capybara.app_host = 'https://hb.posted.co.rs/posted'
class Account
include Capybara::DSL
def check_balance
visit('/')
page.driver.browser.switch_to.frame 'header'
click_on 'Stanje'
page.driver.browser.switch_to.frame 'main'
fill_in 'korisnik', :with => 'foo'
fill_in 'lozinka', :with => 'bar'
click_button 'Potvrda unosa'
end
end
account = Account.new
account.check_balance
Fehler:
[remote server] file:///tmp/webdriver-profile20120810-9247-w3o5hj/extensions/[email protected]/components/driver_component.js:6638:in `unknown': Unable to locate frame: main (Selenium::WebDriver::Error::NoSuchFrameError)
toll .. hat mir sehr geholfen! – karthikeayan