0
나는 대부분의 테스트 프레임 워크에서 정리하는 기능이 있다는 것을 알고있다. 나는 IRB에서 몇 가지 테스트를 해왔으므로 자동 소거 기능 (소멸자와 같은)을 만들고 싶습니다. 나는 finalize 타입 함수 중 일부를 시도했지만 그들 중 아무도 불필요한 브라우저를 닫지 않았다. 아무도이 문제를 해결하지 못했습니까? watir-webdriver에서 브라우저를 실행하는 클래스에 대해 소멸자와 같은 함수를 만들 수 있습니까?
require 'watir-webdriver'
class Session
attr_accessor :browser
def initialize
@browser = Watir::Browser.new
@browser.goto 'http://ipchicken.com'
end
def do_something_test
puts "your test passed!" if @browser.html.match /\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}/
end
end
가 아니면 나는이 모든 잘못 접근하고
같은 예를 들어 클래스와d = Session.new
=> #<Session:0x1016c5e60 @browser=#<Watir::Browser:0x1016c5dc0 url="http://ipchicken.com/" title="IP Chicken - Whats my IP address? ip address lookup"
d.do_something_test
your test passed!
=> nil
d = nil
=> nil
처럼
IRB 보인다!? 미리 감사드립니다.
Stanislav에게 많은 감사를드립니다. 나는 테스트 프레임 워크 솔루션을 가지고있다. (나는 RSpec으로 이것을하고있다.) 그래서 나는 after : all을 사용하여 멋지게 닫을 수있다. 그러나 나는 IRB와 함께 많은 일을하고 있으며 새로운 세션 (매달린 프로세스) 전에 브라우저를 닫는 것을 잊어 버렸다. 나는 가능한 한 소멸자에서 그것을 죽이는 것을 선호 할 것이다. 그러나 정보는 (나는 적절한 프로젝트 구조에 대해 많이 알지 못하기 때문에) 매우 도움이된다. –