본문 바로가기

728x90

분류 전체보기

(49)
pytest 결과 요약을 차트 형태로 확인하기 (pytest-html-reporter) pytest-html 플러그인 사용시 텍스트 위주 형태로 문서가 나오는 걸 확인할 수 있습니다. 해당 결과만으로도 깔끔하지만 좀 더 개선된 UI 형태로 확인할 수 있는 방법이 있는데 pytest-html-reporter 플러그인을 사용하는 방법입니다. pytest-html 처럼 동일하게 pytest-html-reporter 플러그인을 설치합니다. 실행 방법은 pytest-html과 비슷하게 추가 옵션 내용을 추가하면 됩니다. pytest "실행파일명" --html-report=./report 리포트 결과 파일명도 옵션에서 추가하여 변경이 가능합니다. 파일명을 수정하지 않는 경우 기본 파일명은 "pytest_html_report.html"로 생성됩니다. pytest "실행파일명" --html-report=..
중고 할인 기프티콘 인기 목록 자동화로 확인하기 (기프티스타) 자주 이용하는 브랜드 메뉴가 있는 경우 정가보다 싸게 구매할 수 있는 중고 판매 기프티콘 앱을 사용합니다. (기프티스타) 최대 10% 이상 할인된 금액으로 구매할 수 있어 종종 항목들을 체크하는 경우가 있는데 이부분을 자동화로 구현해보면 재밌을 거 같아서 구현해보았습니다. 자주 사용하는 카테고리인 커피, 치킨/피자, 패스트푸드 항목을 선택하여 베스트상품 10개 목록을 추출하는 코드를 작성하였습니다. 우선 웹으로 계속 이용하기 위해 배너를 닫는 코드를 구현한 후 해당 카테고리로 이동할 수 있게 find_elements > class_name 코드를 이용하였습니다. 카테고리 항목 이동 제외하고는 모든 코드가 동일하기 때문에 함수를 사용하여 구현하였습니다. (카테고리 번호만 입력값으로 구분) def giftL..
Katalon Studio XPath Locator 다른 Locator으로 변경하기 Katalon Studio로 Object값을 통해 TC를 구현을 하다보면 Object RePository에 필요한 Object값을 확인할 수 있는데 안을 보다보면 XPath를 통해 Locator가 설정되어 있는 경우가 있습니다. Appium 및 Katalon Studio 문서를 봐도 XPath값은 추천하지 않아서 가능하면 변경이 필요합니다. (퍼포먼스 이슈로 인해 권장하지 않음) XPath값으로만 동작한다면 변경할 수 없겠지만 Object 상세를 진입하면 XPath인데도 다른 Property 데이터 항목들이 있어서 변경이 가능한 경우를 확인할 수 있습니다. 동작에는 이상이 없지만 권장하는 다른 항목으로 변경한 후 동작에 이상이 없는지 확인합니다. (변경한 이후 동작이 되지 않는 경우 다른 항목으로 변경하..
밴드웹에서 밴드 글을 자동으로 써보기 밴드웹에서 로그인을 성공한 후 만들어진 밴드에 원하는 글을 자동으로 써보는 코드입니다. 정확한 밴드를 설정하는 방법을 찾기가 어려워 find_elements로 여러개를 찾은 후 그중 첫번째 항목으로 첫번째 밴드를 선택하는 코드로 작성하였습니다. driver.find_elements(By.CLASS_NAME, 'bandCover._link')[0].click() #첫번째 밴드 선택 time.sleep(2) Class_name을 보다보면 띄어쓰기로 되어 있을 때가 있는데 그 경우 띄어쓰기를 점(.)으로 변경한 후 코드를 동작하면 해당 element를 찾아서 코드를 실행합니다. 띄어쓰기를 점으로 변경하지 않으면 class_name을 찾을 수 없다는 에러가 뜨기 때문에 테스트 코드 작성시 항상 생각해두어야 하는..
Katalon Studio 조건문 내 verify 사용시 Fail 처리되지 않게 하기 Katalon Studio에서 스크립트 작성할 때 경우에 따라 해당 element가 있는 경우와 없는 경우를 모두 처리하기 위해 조건문을 사용하게 됩니다. - 페이지 진입시마다 영역이 다르게 나올 때 - 유저별로 다르게 검색 결과가 다르게 나올 때 - 노출 유무에 따라 다르게 자동화가 수행되어야 할 때 true, false 결과값에 따라 동작을 다르게 하는데 이때 false값인 경우 element를 찾지 못했기 때문에 해당 스크립트가 Fail 처리가 되어버립니다. 스크립트 내 조건문에서 사용한 verify 결과가 true, false 상관없이 Fail 처리 되지 않게 넘기고 싶을 때 사용하는 방법이 있습니다. 바로 FailureHanding.OPTIONAL 파라미터를 추가하시면 됩니다. verify 함수..
Pytest HTML 문서로 결과 확인하기 With PyCharm (pytest-html) Pytest로 테스트 코드를 작성한 후 실행하면 결과값을 콘솔창에서 확인이 가능한데요. pytest-html 플러그인을 사용하면 HTML 문서로 테스트 결과를 확인할 수 있습니다. PyCharm을 개발 툴로 사용하기 때문에 PyCharm 기준으로 설명드리려고 합니다. 1) PyCharm Packages 추가 화면에서 pytest-html 검색 후 Install Package 버튼 클릭하여 설치합니다. 2) PyCharm Run > Edit Configurations... 메뉴를 클릭하여 HTML 문서로 결과를 얻고 싶은 클래스나 함수를 선택합니다. 3) "Additional Arguments" 항목에 "--html=Reports/Report.html --self-contained-html"값을 입력합니다..
지역 맛집 리스트 자동화로 추출해서 확인하기 (with 카카오맵) 홍대, 강남, 성수, 이태원 등 주요 핫플레이스를 돌아다닐 때 네이버, 카카오, 인스타그램에서 주요 가볼만한 곳을 찾게 되는데요. 그걸 착안해서 이부분을 자동화해보면 재밌을 거 같아서 한번 구현해보았습니다. 주요 시나리오는 아래와 같습니다. 1. 카카오맵에서 특정 검색어로 검색한다. (예: 성수 맛집) 2. 검색결과 리스트를 추출하여 콘솔에 출력한다. 카카오맵의 특정 검색어을 검색한 결과의 URL로 바로 접근하는 방식을 사용하였습니다. 저는 "성수 맛집"을 검색하였는데 상황에 맞게 "홍대역 카페", "강남역 고기" 등 원하는 데이터에 맞게 검색어를 변경하여 사용할 수 있습니다. driver.get('https://map.kakao.com/?from=total&nil_suggest=btn&q=%EC%84%..
Pycharm에서 Pytest 기본 실행 옵션으로 설정하기 Pycharm 설치 후 테스트 코드 실행시 Pytest가 기본 옵션으로 잡혀있지 않는 경우가 많습니다. 이 경우 함수, 클래스별로 Run 버튼도 나오지 않아서 불편한데 간단한 설정으로 기본 옵션을 Pytest로 설정할 수 있습니다. Settings > Tools > Python Integrated Tools > Testing Default test runner 옵션에서 pytest를 설정하면 됩니다. 보통 Pytest를 많이 사용하지만 가끔 Unittests도 사용할 수 있기 때문에 상황에 따라 원하는 테스트 실행 옵션을 설정하시면 됩니다.

728x90