,이 스크린 샷을 저장할 위치를 우리가 해결하는 방법이다 (당신의 구조에 따라) : 우리의 ENV 설정에서
screenshotfolder = "./screenshots/#{Time.new.strftime("%Y%m%d%H%M%S")}"
unless File.directory?(screenshotfolder)
FileUtils.mkdir_p(screenshotfolder)
end
Before do
@screenshotfolder = screenshotfolder
...
end
그리고 우리의 후크에서 (env.rb을). 다른 사람의 답변에
screenshotName = "#{@screenshotfolder}/failed-#{scenario_object.title.gsub(/\s+/,"_")}-#{Time.new.strftime("%Y%m%d%H%M%S")}_screenshot.png";
@browser.take_screenshot(screenshotName) if scenario.failed?
embed(screenshotName, "image/png", "SCREENSHOT") if scenario.failed?
Fileutils의 다음 stdlib에서 : http://www.ruby-doc.org/stdlib-1.9.3/libdoc/fileutils/rdoc/FileUtils.html – Eureka
확인 아. 나는 stdlib가 아니라 핵심을 의미했습니다. 어느 쪽이든 괜찮습니다. 이 작동합니다. 감사! – marcamillion
필자는 내 대답에 핵심적인 해결책을 추가했습니다. 그러나 본질적으로'FileUtils.mkdir_p' (이는 유스 케이스 전용 메서드입니다)를 다시 작성 함을 알아 두십시오. – Eureka