본문 바로가기

전체 글

(42)
pytest 로 웹자동화 시작하기 pytest 란 ? python 코드를 단위테스트 하기위한 프레임워크로 test_ 로 시작하는 모든 파일을 로드하고, 실행하며 테스트 결과를 추출할 수 있다.나는 셀레니움과 pytest 를 사용하여 웹자동화 코드를 구축하려고 한다. pytest 및 플러그인 설치 우선, pytest 를 실행하기에 앞서 pytest 를 설치한다.pip install pytest  나는 테스트 결과를 html 로 확인할거기 때문에 pytest-html 도 설치해줬다. pip install pytest-html pytest 실행 pytest 는 test_ 로 시작하는 모든 파일을 로드하고 실행하며 단순히 pytest 커맨드로 실행할 수 있으나 아래의 다양한 옵션을 사용할 수 있다. 1. 실행관련 옵션 * 모든 옵션은 pytes..
셀레니움으로 웹사이트 접속 후 로그인까지 셀레니움을 설치했다면, 본격적으로 웹사이트 자동화를 시작해보자먼저 가장 기초중에 기초인 웹사이트를 띄우고 로그인 하는 과정까지 진행하는 코드from time import sleepfrom selenium import webdriverfrom selenium.webdriver.chrome.service import Servicefrom webdriver_manager.chrome import ChromeDriverManagerfrom selenium.webdriver.common.by import Byservice = Service(ChromeDriverManager().install())# WebDriver 초기화driver = webdriver.Chrome(service=service)driver.i..
셀레니움 사용 시 ChromeDriverManager 오류 해결 방법 회사에서 하도 웹자동화 구축하라고 해서 셀레니움 공부 시작 .. !  셀레니움 설치하고 페이지 로딩하려고 했을 때 아래와 같은 에러  나는 이유는크롬드라이버 버전이 현재 사용중인 크롬 브라우저 버전과 호환이 되지 않아서 발생한다.selenium.common.exceptions.SessionNotCreatedException: Message: session not created: This version of ChromeDriver only supports  예전에는 크롬드라이버를 크롬 버전에 맞게 업데이트를 해줘야 했는데이제는 WebDriverManager를 사용하면 ChromeDriver 버전을 자동으로 관리할 수 있다. WebDriverManager 설치 과정은 아래와 같다. pip install we..
프로그래머스 lv1 - 성격 유형 검사하기 [문제링크]https://school.programmers.co.kr/learn/courses/30/lessons/118666 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr[문제 설명]문자열로 구성된 리스트 strings와, 정수 n이 주어졌을 때, 각 문자열의 인덱스 n번째 글자를 기준으로 오름차순 정렬하려 합니다. 예를 들어 strings가 [sun, bed, car]이고 n이 1이면 각 단어의 인덱스 1의 문자 u, e, a로 strings를 정렬합니다.제한 조건strings는 길이 1 이상, 50이하인 배열입니다.strings의 원소는 소문자 알파벳으..
프로그래머스 - 김서방 찾기 JAVA [문제 설명]String형 배열 seoul의 element중 "Kim"의 위치 x를 찾아, "김서방은 x에 있다"는 String을 반환하는 함수, solution을 완성하세요. seoul에 "Kim"은 오직 한 번만 나타나며 잘못된 값이 입력되는 경우는 없습니다.[제한 사항]seoul은 길이 1 이상, 1000 이하인 배열입니다.seoul의 원소는 길이 1 이상, 20 이하인 문자열입니다."Kim"은 반드시 seoul 안에 포함되어 있습니다.[입출력 예]["Jane", "Kim"]"김서방은 1에 있다"풀이과정import java.util.*;class Solution { public String solution(String[] seoul) {Map map = new HashMap(); ..
프로그래머스 - 스킬 체크 테스트 lv 1 :: 주어진 수가 1이 될 때까지 문제설명 1937년 Collatz란 사람에 의해 제기된 이 추측은, 주어진 수가 1이 될 때까지 다음 작업을 반복하면, 모든 수를 1로 만들 수 있다는 추측입니다. 작업은 다음과 같습니다. 1-1. 입력된 수가 짝수라면 2로 나눕니다. 1-2. 입력된 수가 홀수라면 3을 곱하고 1을 더합니다. 2. 결과로 나온 수에 같은 작업을 1이 될 때까지 반복합니다. 예를 들어, 주어진 수가 6이라면 6 → 3 → 10 → 5 → 16 → 8 → 4 → 2 → 1 이 되어 총 8번 만에 1이 됩니다. 위 작업을 몇 번이나 반복해야 하는지 반환하는 함수, solution을 완성해 주세요. 단, 주어진 수가 1인 경우에는 0을, 작업을 500번 반복할 때까지 1이 되지 않는다면 –1을 반환해 주세요. 제한 사항 입력된..
Swagger 설정 오류 :: nested exception is java.lang.NullPointerException Spring-boot에서 swagger설정을 하려고 하니 아래와 같은 오류가 지속적으로 떴다. Failed to start bean 'documentationPluginsBootstrapper'; nested exception is java.lang.NullPointerException maven repository에서 SpringFox Boot Starter 가 3.0.0버전 뿐이라 사용했는데 오류가 떠서 구글링 하며 찾아보니 버전이 안 맞아 최신 버전의 스프링 부트에서 나는 오류였다. 이와 같은 오류가 뜰 떈, 아래의 방법을 사용해보자 1. 아래의 dependency를 추가한다. gradle implementation 'io.springfox:springfox-boot-starter:3.0.0' im..
자바의 유용한 클래스들 Object 클래스 - 모든 클래스의 최상위 클래스 - java.lang 패키지 - 프로그래밍시 import하지 않아도 자동으로 import됨 - 많이 사용하는 기본 클래스들이 속한 패키지 - String , Integer, System... - 모든 클래스는 Object 클래스를 상속 받음 toString() 메서드 - 객체의 정보를 String으로 바꿔서 사용할 때 쓰임 equals() 메서드 - 두 인스턴스의 주소 값을 비교하여 true/false 반환 - 재정의 하여 두 인스턴스가 논리적으로 동일함의 여부 구현 - 인스턴스가 다르더라도 논리적으로 동일한 경우 true반환하도록 재정의 할 수 있음 (같은 학번, 같은 사번, 같은 아이디의 회원) - (==)는 주소가 같을 때 hashcode() 메서..