본문 바로가기

Selenium8

[python] paypal 결제 후 환불하기 예제 사전 조건 : 파이썬+셀레늄 설치 --- * 결제하기 import unittest import time from selenium import webdriver from selenium.webdriver.common.keys import Keys from selenium.common.exceptions import TimeoutException from selenium.webdriver.support.ui import WebDriverWait # available since 2.4.0 from selenium.webdriver.common.by import By from selenium.webdriver.support import expected_conditions as EC # available sinc.. 2015. 12. 16.
[python] 명시적 대기 예시 from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.common.by import By from selenium.webdriver.support import expected_conditions as EC wait = WebDriverWait(driver, 10) element = wait.until(EC.visibility_of_element_located((By.ID,'popup_confirm_btn'))) element.click() 화면에 팝업이 표시될 때까지 대기하는 케이스 참고 링크http://selenium-python.readthedocs.org/en/latest/waits.html 2015. 10. 5.
Selenium Grid 셋팅하기 지난 포스팅에 이어서 원격으로 크롬 돌리는 예제 selenium-server-standalone-XXX.jar 파일은 허브/노드에 각각 준비되어 있어야 한다 1. 서버 PC (허브) java -jar selenium-server-standalone-[version].jar -role hub -port 4444 -nodeTimeout 600 2. 클라이언트 PC (노드) - 테스트 브라우저 실행 java -jar selenium-server-standalone-[version].jar -role webdriver -hub http:[hub ip]:4444/grid/register -Dwebdriver.chrome.driver=C:\..[path]..\chromedriver.exe -port 5555 3. .. 2015. 8. 10.
Eclipse + Selenium Webdriver + JUnit 활용하기 지난 포스팅에 이어서.. 타임아웃, 입력, 클릭, 창 사이즈, 스크린샷, 슬립, 프롬프트 출력, 판정을 추가해본다 (명시적 대기, 스크롤 스크린샷, 얼럿창 제어, 밤부 연결 등은 추후에..) 네이버에서 서태지 검색 후 출생년도가 나오는지 확인 후 화면캡쳐! XPath는 다음과 같이 얻어오면 된다크롬 > F12 > 돋보기 > 검색어 입력란 클릭 > 소스 우클릭 > XPath 복사이클립스에 붙여넣기 후 큰 따옴표를 작은 따옴표로 바꾼다 import org.apache.commons.io.FileUtils; import org.junit.*; import static org.junit.Assert.*; import java.io.File; import java.io.IOException; import java.. 2015. 8. 7.
윈도우 창 핸들링 셀레늄에서 새 탭이나 팝업창 컨트롤하는 방법 단, 핸들링 정보 얻는데 2초, 포커스 전환시 2초 딜레이가 생긴다 http://santoshsarmajv.blogspot.kr/2012/04/how-to-switch-control-to-pop-up-window.html http://seleniumparadise.blogspot.kr/2012/10/selenium-web-driver-code.html //클릭 전 핸들링 Set beforePopup = driver.getWindowHandles(); //클릭 driver.findElement(by).click(); //클릭 후 핸들링 Set afterPopup = driver.getWindowHandles(); //포커스 변경 afterPopup.removeA.. 2013. 7. 31.
JUnit @Test 메소드 실행 순서 지정 JUnit 은 원래 @Test 메소드의 실행 순서가 보장되지 않습니다 만약 실행 순서를 지정하려면 4.11 버전 이상을 설치해야 합니다 1. 이클립스 JUnit 교체 a. Junit 최신 jar 파일 다운로드 http://search.maven.org/remotecontent?filepath=junit/junit/4.11/junit-4.11.jar b. 프로젝트 우클릭 > 빌드 패스 > 콘피그 빌드 패스 c. 이클립스 기본 제공 JUnit 삭제 d. 새로 다운받은 JUnit 파일 추가 (Add External JARs) 2. 코딩 방법 http://howtodoinjava.com/2012/11/24/ordered-testcases-execution-in-junit-4/ import org.junit.Fi.. 2013. 1. 29.
페이지 전체에서 문자열 검사 특정 항목이 아니라 페이지 전체에서 문자열 존재 여부를 알고싶으면 getPageSource()를 사용합니다 Junit 의 assert 메소드와 결합하면 다음과 같습니다 //현재 페이지에 '파이 이야기' 문구가 존재하면 pass assertTrue(driver.getPageSource().contains("파이 이야기")); //현재 페이지에 '파이 이야기' 문구가 존재하지 않으면 pass assertFalse(driver.getPageSource().contains("파이 이야기")); assertTrue() 는 true 가 발생하면 Pass 를 뱉어주고 assertFalse() 는 false 가 발생하면 pass 를 뱉어줍니다 2013. 1. 29.
Eclipse + Selenium Webdriver + JUnit 셋팅하기 1. JRE (메이븐 쓰려면 JDK) http://www.oracle.com/technetwork/java/javase/downloads/index.html 환경 변수 설정은 옵션 2. 이클립스 http://www.eclipse.org/downloads/ 3. 셀레늄 다운로드 사이트 접속 http://seleniumhq.org/download/ 4.셀레늄 구동 파일 다운 a. Selenium Standalone Server b. Selenium Client & WebDriver Language Bindings > java 5. (옵션) 파이어폭스를 제외한 웹브라우저는 전용 드라이버 다운로드 a. The Internet Explorer Driver Server b. Third Party Browser Dr.. 2013. 1. 27.