1. 자동화 실행하기 

selenium으로 생성한 자동화 관련 작업들을 실행할수있는 환경이 필요하다.
장고(Django)를 이용해 보려 한다.

장고는 개발 환경을 세팅하고 웹 어플리케이션을 개발하는 것이 매우 쉽다고 한다
과연 비개발자인 나는 이툴을 제대로 이용할수있을까 겁이난다... 
일단 무작정 설치부터 해보자 ㅋㅋ 

- pip 파이프 툴 업그레이드 부터 진행해보자 
명령어 : -m pip install --upgrade pip ( window 버전 )
이왕이면 최신 파이프를 연결해주는게 좋아 별도로 진행해주었다.

- 장고를 설치해보자 
명령어 : pip install Django

설치는 매우 간단했다

- 프로젝트 생성

이제 프로젝트를 만들수있는 폴더가 필요하다 
임의의 경로를 하나 생성하여 추가해도록 해보자

C:\Django\pjt << 프로젝트 폴더를 만들어 해당 경로로 진입해서 진행을 해보자

명령어 : cd C:\Django\pjt

명령어 : django-admin startproject testPjt

오 여러가지 파일과 폴더가 임의로 생성이 되었다 ( 신기 신기... )

 

- 애플리케이션 생성 
프로젝트가 생성이 완료되었으면 이제 프로젝트안에 하나하나의 기능들을 구현하기위해 애플리케이션을 설치해야한다.
자동화를 실행,중단,결과를 볼수있는 각가의 애플리케이션이 있어야 함으로 하나하나 만들어 가보도록하자
명령어 : python manage.py startapp testautomadition

- 패키지안에 애플리케이션을 연동시켜 보자 
setings.py 파일에 installe_apps 코드문에 아까 만들어두었던 testautomadition 애플리케이션을 등록시켜준다.

- 사용자 및 그룹테이블 생성하기

음... db까지 필요하게 될까?? 생각이 들긴하지만 추후 관리차원에서는 db도 필요하지않을까 생각이 들어 테이블을 생성해보도록 하자

명령어 : python manage.py migrate

- 서버 실행시키기 ( 관리자 계정 만들기 )

명령어 : python manage.py createsuperuser
유저 아이디 / 이메일 / 패스워드 를 등록해준다. 

명령어 : python manage.py runserver 0.0.0.0:8000(임의의 로컬 url 지정가능)

오오... 성공했다 로그도 정상적으로 찍힌다...

시작이 반이다 장고도 설치 완료했으니 이제 장고를 이용해서 자동화를 돌릴수있는 애플리케이션을 개발해보자

 

'테스트 자동화' 카테고리의 다른 글

테스트 자동화 시작(5)  (0) 2021.11.22
테스트 자동화 시작(4)  (0) 2021.10.02
테스트 자동화 시작(2)  (0) 2021.09.05
테스트 자동화 시작!!  (0) 2021.08.28
테스트 자동화 영역 선정하기  (0) 2021.08.28

1. selenium 을 통해 검색기능 추가

매거진 검색 

검색기능을 python 코드로 삽입했다... 실행해보자 과연!!

에러가 발생했다... 음음 뭐지? 
확인을 해보니 css_selector로 컨드롤 하려고했는데 ".sx93z2f" 라는 class 는 상위 클래스임으로 밑에있는 하위클레스도 모두 선택되는 이슈가 있었다....해결방법을 알아보자 
xpath 라는 좋은기능을 찾았다. (절대경로를 찾아 호출할수있게 하는기능? 인것같다. )
//*[@id="__next"]/div/div/div[1]/section/div/span[2] << 절대경로를 찾았는데 id로 값을 찾는것같다...

css_seletor 말고 xpath를 이용해보자

제발 요번엔 성공하자...

는... 실패 다른원인이 있는지 조금더 살펴봐야겠다.

원인을 찾았다!! 검색페이지를 호출하고나서 스크립트가 너무빠르게 동작하여 충돌하는 현상이 있는듯 하였다.

이해결방법이 정확한건아니지만 time.sleep을 주어 해결할수있었다.

https://app.usebubbles.com/jHnPJvuFg25TENpynUvj5n/comments-on-chungeuiyong-tistory-com

'테스트 자동화' 카테고리의 다른 글

테스트 자동화 시작(4)  (0) 2021.10.02
테스트 자동화 시작(3)  (0) 2021.09.21
테스트 자동화 시작!!  (0) 2021.08.28
테스트 자동화 영역 선정하기  (0) 2021.08.28
테스트 자동화 도구  (0) 2021.08.21

영역도 이제 선정했다... 본격적으로 자동화를 구현해보자 ㅋㅋ 

 

1. 크롬 확장 프로그램 Selenium IDE 설치 & 기록하기

- chrome 웹스토어 url : https://chrome.google.com/webstore/category/extensions?hl=ko 

- 스토어 검색에 Selenium IDE 검색을 진행한 뒤 설치 진행

- 매거진 프로젝트 생성

- Base url ( https://dano-magazine.dano.me ) 입력

- 우측상단 REC를 클릭하여 사용하고자 하는 화면을 기록하기

( 우선 매거진 메인페이지를 호출하는 기능을 구현해보자 )
https://app.usebubbles.com/hwWEKc9a9BkirHLRnkpv6s/comments-on-extensions

매거진 페이지 호출/종료

- 설정한 기능 실행시켜보기 Run current Test( Ctrl + R )

(첫 에러가 발생했다... 너비와 높이가 맞지 않은 거 같아 다음 STEP을 실행 못한다 해결방법을 찾아보자 )

해결방법은 의외로 간단했다. set window size에 Command 값을 enabled / disabled 처리를 해주면 되었다

성공!!

이제 준비는 완료되었다 해당 CASE를 Python 파일로 이동시켜보자

- 해당 Case Export 진행 


- Python pytest 선택후 Export 진행

( pytest 가 뭐지...? 관련된 라이브러리를 설치해줘 보자 pip install pytest 명령어 입력 )
pytest를 실행해보니 오!!!! 정상적으로 동작하는것을 확인할 수 있다

https://app.usebubbles.com/hcGT68r3QnrneRoNKtzfYx/comments-on-chungeuiyong-tistory-com 

스크립트 문이 너무 빨리 동작해서 화면을 담기 힘들었다 ㅋㅋ 
time.sleep(2)라는 코드를 넣어줘서 화면을 조금 오래 띄워보았다
이제... 메인까지 성공을 했다 앞으로 ( 검색 , 북마크 , 포스트 , 랜딩 ) 부분도 차근차근 작성해보자

 

'테스트 자동화' 카테고리의 다른 글

테스트 자동화 시작(3)  (0) 2021.09.21
테스트 자동화 시작(2)  (0) 2021.09.05
테스트 자동화 영역 선정하기  (0) 2021.08.28
테스트 자동화 도구  (0) 2021.08.21
테스트 자동화란?  (0) 2021.08.21

1. 자동화 영역 선정하기

이제 테스트 자동화를 적용시켜볼 영역을 선택해야 한다 

다노에 들어와서 QA를 진행했을때 수도 없는 T/C ( Test Case) 를 작성한 것을 참고하려고 했으나

대부분의 T/C는 명세 기반의 테스트 케이스였으며 해당 기능에 대해서만 한정적으로 작성을 진행했다.

하나하나 개발되고 QA를 진행할 때 자동화 테스트 케이스를 만드는게 당연 베스트일테지만 

변동성이 적은 기능 단위로 구현을 해야 유지보수를 진행할때 용이할 것이라 생각이 들었다.

배포 전 / 배포 후에 사용되고 있던 회귀 테스트 케이스를 활용해서 작성을 해보려 한다.

요 근래 가장 변동이 적었던 매거진 영역을 우선 해보기로 마음먹었다!!


2. 체크리스트

매거진 영역을 주요 기능(화면) 위주로 선정을 진행해보았다.

매거진 
메인페이지 접근
검색 페이지
북마크 페이지
포스트 페이지
포스트 페이지 내 랜딩

 

구분 체크리스트
1 Depth 2 Depth
매거진
메인 화면 메인에 세팅된 글정보 및 롤링배너 노출 확인
검색 인기검색어 클릭시 해당 검색필터 적용되어 노출 확인
검색 진행 시 해당되는 검색페이지 노출 확인
북마크 북마크 페이지 진입 확인
포스트 메인페이지 > 노출되는 글클릭 > 해당 글페이지로 이동 확인
메인페이지 > 노출되는 글 북마크 진행 > 북마크 표시 확인
글(다노샵 랜딩) 글페이지 진입 > 다노샵 랜딩버튼 클릭 > 다노샵으로 이동되는지 확인

 

 

 

 

'테스트 자동화' 카테고리의 다른 글

테스트 자동화 시작(3)  (0) 2021.09.21
테스트 자동화 시작(2)  (0) 2021.09.05
테스트 자동화 시작!!  (0) 2021.08.28
테스트 자동화 도구  (0) 2021.08.21
테스트 자동화란?  (0) 2021.08.21

테스트 자동화 툴은 무엇을 이용하는 게 좋을까?

시중에는 정말 많은 테스트 자동화 툴이 있다. 하지만 무엇을 선택해야 될지 정말 난감하다...
테스트 자동화툴을 설치하고 나서 스크립트 , 코드 작성 때 어려움 난해함을 많이 겪을 것으로 예상되어

개발자분들의 많은 도움이 필요할것이라 생각한다. 

그래서 현재 다노에서의 개발자분들이 사용하는 개발 툴과 최대한 비슷한 환경으로 준비를 하려고 한다.


Python을 설치해보자 (window 기준)

 

파이썬 공식 홈페이지 : https://www.python.org/

다운로드 방법 : Downloades 클릭 > Download Python 3.9.6 ( 현 최신 버전 ) 클릭

설치 방법 : 다운로드한 Python 프로그램 실행 > 하단 체크박스 모두 선택 > Install Now 선택

 

소스 코드 편집기를 설치해보자 ( Visual Studio Code )

 

비주얼 스튜디오 공식 홈페이지 : https://code.visualstudio.com/

다운로드 방법 : 메인 페이지 우측 상단 Download 클릭 > 운영체제에 맞는 환경 선택 후 다운로드 진행

가상 환경을 설정해보자 ( venv 사용 )

파이썬은 라이브러리마다 호환되는 버전이 다르기 때문에 각각 만들고자 하는 프로젝트 별로 다다르기 때문에 하나의 

컴퓨터 내애서 버전이나 정보를 여러 개로 분리하여 각각을 독립적으로 가상 환경을 만들어 선택해서 사용할 수 있다.

 

환경설정
1. File > Open Folder > ( 미리 만들어둔 폴더 ) 선택 

 

2.  Terminal > New Terminal > 명령어 입력 : python -m venv selenium ( 디렉터리 파일이라 아무 이름이나 상관 x )

3. 가상 환경 접속 ( selenium ) 
3-1. 명령어 : cd.\selenium\scripts 입력

3-2. 명령어 :.\activate 입력

4. selenium 설치

4-1. 명령어 : pip install selenium 입력

5. selenium을 사용할 브라우저 선택 ( Chrome web Driver )
크롬 드라이버 공식 홈페이지 : https://chromedriver.chromium.org/downloads

현재 설치되어있는 크롬 버전과 동일 한 버전 다운로드

Selenium 폴더에 다운로드한 Chromedriver 붙여 넣기

 

이렇게 자동화 툴 세팅은 완료되었다... 이걸 적극 활용해서 업무효율을 높이도록 해보자 이제 시작이다 파이팅ㅋㅋ 
( 세팅하는 것만 반나절이 걸리다니... 큰일이다 )

'테스트 자동화' 카테고리의 다른 글

테스트 자동화 시작(3)  (0) 2021.09.21
테스트 자동화 시작(2)  (0) 2021.09.05
테스트 자동화 시작!!  (0) 2021.08.28
테스트 자동화 영역 선정하기  (0) 2021.08.28
테스트 자동화란?  (0) 2021.08.21

1. 테스트 자동화의 필요성

QA직군에서 가장 중요하게 생각하는 요소중 하나로 테스트 자동화를 빼먹을 수 없다.

수동 테스트(블랙박스) 단순 반복적인 테스팅을 할 경우 살충제 패러독스(Pesticide Paradox)에 빠지기 쉬워진다.

테스트 자동화는 단순 반복적인 테스팅을 자동으로 실행하며 검증해줌으로써 신속/정확하게 효율적으로 업무를 

진행할 수 있다. 주기가 짧은 스프린트를 진행할 경우 기하급수적으로 변화되는 시스템에 테스트 자동화를 도입함

으로써 리소스 대비 비용절감 효과를 얻을 수 있는 큰 장점이 있다. 

 

2. 자동화 테스트의 장단점

자동화 테스트의 장점

- 반복적인 업무 감소

- 오류-부재의 궤변 감소

- 시간 / 비용 절감 효과

- 빠르고 정확한 검증을 통해 생산성을 높일 수 있음

- 테스트 커버리지 높일수 있음

 

자동화 테스트의 단점

- 초기의 많은 시간/비용이 소요됨

- 유지보수가 어려움

- 신뢰도가 하락할 수 있음

- 발견되지 않은 주요 결함이 존재할 수 있음

 

 

'테스트 자동화' 카테고리의 다른 글

테스트 자동화 시작(3)  (0) 2021.09.21
테스트 자동화 시작(2)  (0) 2021.09.05
테스트 자동화 시작!!  (0) 2021.08.28
테스트 자동화 영역 선정하기  (0) 2021.08.28
테스트 자동화 도구  (0) 2021.08.21

+ Recent posts