2016-10-13 8 views
1

Ich führe einen Test durch, wo ich einen Link in eine neue Registerkarte kopieren/einfügen. Sobald ich damit fertig bin, schaue ich, um es zu schließen, dann laufe andere Tests innerhalb der Spezifikation weiter. Das Problem im Moment ist, dass wenn ich window.close verwende, es schließt die gesamte Browser-Instanz, nicht nur dieses bestimmte Fenster.
Hier ist mein allgemeiner Code:Watir-Webtreiber; window.close schließt den gesamten Browser?

# Method for the window 
def this_window 
    page = @browser.window(:title, 'Foobar') 
    return page 
end 

# Helper method for copy/paste in new tab 
def copy_paste_in_new_tab 
    @browser.send_keys [:command, 't'] 
    @browser.send_keys [:command, 'v'] 
    @browser.send_keys [:return] 
end 

# How it appears in the spec 
it 'goes to new page' do 
    copy_paste_in_new_tab 
    sleep 1 
    this_window.use 
end 
it 'interacts with new window' do 
    # runs some tests on new window correctly 
end 
it 'closes the window' do 
    this_window.close 
    sleep 2 
end 
it 'continues to other tests' do 
    # by this point the entire session has closed 
end 

Dies ist der Fehler, den ich bin im Terminal bekommen:

An error occurred in an `after(:context)` hook. 
Errno::ECONNREFUSED: Connection refused - connect(2) for "127.0.0.1" port 7055 
occurred at /Users/foo/.rvm/rubies/ruby-2.2.2/lib/ruby/2.2.0/net/http.rb:879:in `initialize' 

ich Probleme nur am stoßen, wenn ich Code, die letzten nach Schließung auszuführen versuchen Fenster. Wenn ich this_window.close als meinen letzten Code verwende, dann funktioniert es richtig
Irgendwelche Ideen zu was verursacht das?

Antwort

Verwandte Themen