본문 바로가기
반응형

전체 글61

젠킨스(Jenkins) CD 프로세스를 위해서 자동화 서버가 꼭 필요하다. 그러기위해서 젠킨스가 필요하다. 젠킨스는 단독으로 사용할 수도 있고, 도커와 같이 사용될 수도 있다.  젠킨스 : 자바로 작성된 오픈 소스 자동화 서버이다. 젠킨스는 단순성, 유영성, 다양성 측면에서 유명하고 다른 솔루션에 비해 뛰어난 기능과 확작성 덕분에 가장 널리 사용되고 있다. 그 이유는 아래와 같은 다양한 장점 때문이다. 젠킨스는 많은 플러그인을 가지고 있으며, 대부분의 프로그래밍 언어와 프레임워크를 지원한다. 게다가 거의 모든 종류의 셸 명령어와 소프트웨어를 사용할 수 있기 때문에 특정 프로그래밍 언어에 대한 지식 없이도 자동화 프로세스를 구축할 수 있다. 젠킨스는 커뮤니티와 플러그인을 이용하기 좋다. 사용자가 직접 필요한 플러그인을 작성해 기.. 2025. 3. 21.
도커(Docker) 도커는 소프트웨어 컨테이너의 형태로 애플리케이션을 배포할 수 있는 오픈 소스 프로젝트다. 도커를 이용하면 애플리케이션과 실행환경(파일, 코드 라이브러리 등)을 통합해서 실행할 수 있다. 즉, 도커를 이용하면 가상화처럼 애플리케이션을 어디서든 실행 가능한 이미지로 패키징 할 수 있다. 컨테이너화 VS 가상화도커를 사용하지 않고도 가상머신이라 부르는 하드웨어 가상화로 프로세스를 격리하는 작업을 할 수 있다. 대표적으로 버추얼박스나 VM웨어, 패러렐즈 등이 있다. 가상 머신은 컴퓨터의 아키텍처를 모방하는 방식으로 실제 컴퓨터와 같은 기능을 제공한다. 애플리케이션을 독립된 가상머신 이미지에 배치함으로써 완벽하게 격리된 환경에서 실행할 수 있다. 이미지에는 필요한 모든 의존성 요소와 게스트OS(운영체제)가 들어있.. 2025. 2. 18.
CI/CD_지속적 인도와 지속적 통합 개념 보통 도커와 젠킨스를 이용해서 CI/CD를 적용해 개발 방식이 진행되고 있다는 사실을 알고는 있었지만, 개발을 직접적으로 하지는 않다보니 이에 대한 지식이 부족함을 느꼈다. 그리고 궁극적인 목표는  테스트 자동화를 CI/CD를 이용해 워크 플로우를 향상시키고자 한다. 따라서, 올해는 도커와 젠킨스 사용방법에 대한 포스팅을 올릴 예정이다.그 전에 먼저, CI/CD에 대한 개념 정리와 그에 관한 용어들을 먼저 정리해보았다.  CD : 새로운 기능 추가나 구성의 변경, 버그 수정이나 기능 실험을 포함한 모든 유형의 변화를 통제하면서 사용자에게 빠르고 안전하고 안정적으로 제공하는 역량 전통적인 인도 프로세스는 고객의 요청을 정의하면서 시작되고 개발이 기능을 구현하고 품질보증에서 테스트를 통해 버그가 수정되고 운.. 2025. 1. 22.
Java_e-mail 보내기 testNG를 사용하면 좋은점은 단위별로 쪼개거나 합쳐서 테스트 실행도 가능하지만, 그 결과를 볼 수 있는 간략화 된 자료도 있다는 사실이다. 그래서, Eclipse에서 test-output파일안에는 테스트 결과를 확인할수 있는 emailable-report.html 파일이 존재한다. 어떤 클래스를 사용했는지 성공했는지, 실패했는지 그리고 총 걸린 시간을 ms으로 보여준다.즉, 이 결과만을 가지고 실행한 자동화테스트가 잘 진행되었는지, 실패한 부분은 없는지 알 수 있다.  그래서 자동화 테스트 결과를 확인할때 이 파일을 관련자들에게 모두 공유한다면 편리할거 같아 자바 SMTP로 이메일을 받는 방법에 대해 공유해보고자 포스팅을 한다. 목표testng를 사용하면 결과인 emailable-report.html.. 2024. 11. 7.
포스트맨_데이터 기반 테스트 좋은 테스트 케이스를 만들려면 시스템에 대한 다양한 입력을 시도해보는 것이 좋습니다. 자동화는 여러가지를 반복해서 확인하는데에는 좋지만, 각 입력에 대한 별도의 요청을 처리하는데에는 많은 작업이 필요할 수 있습니다. 그래서  많은 작업을 하는방법 대신에 데이터 기반 테스트를 하게 되면 자동화된 테스트의 효율을 높일 수 있습니다. 동등 분할 기법을 사용하여 데이터 기반 테스트를 위한 좋은 입력을 생성하고, 테스트 비교를 위한 유용한 출력을 정의하는 방법에 대해 포스팅해보고자 합니다. 아래에 postman에서 데이터 기반 테스트를 설정하고 응답결과를 파일의 데이터 출력과 비교할 수 있는 데이터 기반 테스트를 설정 및 실행하는 방법에 대해 서술해 보았습니다. 데이터기반 테스트는 API 테스트에만 제한된 개념은.. 2024. 9. 10.
Selenium_Button 사실 자동화를 진행하면서 가장 기본적이고 꼭 필수적인 기능이 버튼을 클릭하는 것이라고 생각합니다.다음 화면으로 넘어가거나, 원하는 값을 전달하기 위해서는 버튼이 클릭되어야 하는 경우가 많습니다.근데 사실 버튼 클릭방법에는 여러가지 방법이 있습니다. 단순하게 사용했던 selenium 버튼 클릭 방법에서부터 왜인지 버튼이 클릭되지 않을때  사용할  수 있는 방법들에 대해 정리해보았습니다. 1. element.click(); 가장 첫번째 방법이자 대표적인 방법으로 element를 선택해서 click 하는 방법입니다.  driver.get("https://www.selenium.dev/selenium/web/inputs.html"); // Click on the element WebElem.. 2024. 7. 12.
Selenium_가상키보드 우회방법 최근 결제 영역을 자동화를 처리하면서 새로운 문제에 도달했습니다.바로 가상키보드때문에 카드번호나 비밀번호 값을 어떻게 입력해줘야 하는 부분이었습니다.생각보다 가상키보드 영역을 자동화로 어떻게 풀어나가는지에 대한 문서가 많이 없는 것 같아, 이렇게 포스팅을 해보려고 합니다. 먼저, 가상키보드는 키보드 자판의 숫자나 문자의 위치가 열릴때마다 랜덤적으로 변경되는 특징을 가지고 있습니다. 이렇게 되다보니 처음 자동화를 구현하려고 할때, 원하는 키보드 포지션을 선택해서 매번 같은 결과가 나오게 하기 힘들었습니다. 그래서 시도해보면서 실패했던 경험담+완벽하진 않지만 해결했던 방법에 대해 공유드리고자 포스팅을 남깁니다! 가장 먼저 해봤던 방법은 가상키보드를 노출시키지 않고, "키패드에 있는 숫자를 입력해서 넣기"였습.. 2024. 6. 22.
appium 자동화 Setting 2(Window환경) 이번에는 윈도우환경에서 갤럭시탭 기기를 연결해서 크롬브라우저를 열어 테스트를 하는 방법에 대해 포스팅해보고자 합니다.우선 저의 목표는 브라우저를 열어서 테스트하는 방법이지만, Appium inspector을이용해서 app을 선택해서 테스트하는 자동화도 가능합니다.예시는, 아래와 같습니다.먼저 테스트기기가 노트북과 연결된 상태에서 Appium 서버는 구동되어 있어야 합니다.그리고 아래와 같은 코드를 입력하고, 테스트문을 실행하면 맨 하단과 같이 기기에서 실행이 됩니다. import io.appium.java_client.AppiumDriver;import io.appium.java_client.android.AndroidDriver;import org.openqa.selenium.remote.Desired.. 2024. 4. 28.
반응형