2014-01-31 2 views
0

셀렌 IDE에서 내 보낸 기능 테스트 'y1.py'가 있습니다. 내가 장고 응용 프로그램 'FTS'을 만들었으며 '의 FTS/tests.py에 스크립트를 배치 한Selenium webdriver screenshot django에서 가져 오지 않았습니다

from selenium import webdriver 
from selenium.webdriver.common.by import By 
from selenium.webdriver.common.keys import Keys 
from selenium.webdriver.support.ui import Select 
from selenium.common.exceptions import NoSuchElementException 
import unittest, time, re  

class Y1(unittest.TestCase): 
    def setUp(self): 
     self.driver = webdriver.Firefox() 
     self.driver.implicitly_wait(30) 
     self.base_url = "https://www.yahoo.com/" 
     self.verificationErrors = [] 
     self.accept_next_alert = True 

    def test_y1(self): 
     driver = self.driver 
     driver.get(self.base_url) 
     driver.find_element_by_link_text("Weather").click() 
     driver.save_screenshot('out11.png')  

    def tearDown(self): 
     self.driver.quit() 
     self.assertEqual([], self.verificationErrors)  

if __name__ == "__main__": 
    unittest.main() 

: 것 같습니다. 다음 줄을 추가했습니다 :

driver.save_screenshot('out11.png') 

끝에 캡쳐 화면이 나타납니다. 내가 사용하여 명령 행에서 스크립트를 실행하면

은 :

$ python manage.py test fts 

시험 패스를하지만 스크린 샷은 수행되지 않습니다. 이 문제를 어떻게 해결할 수 있습니까? 메모리에 유지하기 위해 이미지를 파일에 작성해야 save_screenshot

from selenium import webdriver 

if __name__ == '__main__': 

    browser = webdriver.Firefox() 

    try: 
     browser.get('http://www.google.com') 
     browser.get_screenshot_as_file('screenshot.png') 

    except Exception as e: 
    print e 

: 저는 개인적으로 대신 get_screenshot_as_file를 사용

답변

2

이 내 코드입니다.

+0

Vkt0r 감사합니다. 귀하의 방법은 작동하지만 스크린 샷이 "PyCharm 3.0.1 \ jre \ jre \ bin"에 저장된다는 것을 깨닫게되었습니다. 어떤 이유로 경로를 명시 적으로 지정해도 작동하지 않습니다 (driver.get_screenshot_as_file ('c/foo1.png')). – user61629

+0

아주 이상한데, _Pycharm 2.7_을 사용하여 테스트 해 보았고 정상적으로 작동합니다. –