본문 바로가기

카테고리 없음

테스트 자동화 도구 오픈소스

반응형

Junit5 먼저 공부해야하나? 고민중....

https://junit.org/junit5/

 

JUnit 5

About JUnit 5 is the next generation of JUnit. The goal is to create an up-to-date foundation for developer-side testing on the JVM. This includes focusing on Java 8 and above, as well as enabling many different styles of testing. JUnit 5 is the result of

junit.org

 

1. 셀레늄(Selenium)

셀레늄은 아마도 웹 애플리케이션을 위한 가장 인기 있는 오픈 소스 테스트 자동화 프레임워크일 것이다.

셀레늄은 방대한 양의 다른 시험 도구의 기반이다.

크로스 플랫폼 및 크로스 브라우저
C#, Java, Python, PHP, Ruby 등 다양한 언어 지원
광범위한 라이브러리 및 API를 통해 확장성이 뛰어나 모든 사용자의 요구 사항과 요구 사항 충족
유연성 및 유지 관리 가능;
다양한 수준의 복잡성을 충족하기 위해 고급 테스트 스크립트를 작성할 수 있는 가능성
현존하는 가장 큰 지원 네트워크 중 하나.
특정 스크립팅 언어를 배울 필요 없이 테스트 제작을 위한 재생 도구(Selenium IDE) 제공

https://www.selenium.dev/

 

SeleniumHQ Browser Automation

If you want to create robust, browser-based regression automation suites and tests, scale and distribute scripts across many environments, then you want to use Selenium WebDriver, a collection of language specific bindings to drive a browser - the way it i

www.selenium.dev

 

2. 카리나
카리나(Carina)는 가장 인기 있는 오픈소스 솔루션(Selenium, Appium, TestNG) 위에 구축된 자바 기반의 테스트 자동화 프레임워크로 특정 기술 스택에 대한 의존도를 줄일 수 있다.

모든 테스트 계층 통합: 모바일 애플리케이션(웹, 네이티브, 하이브리드), WEB 애플리케이션, REST 서비스, 데이터베이스
모든 인기 브라우저(IE, Safari, Chrome, Firefox) 및 모바일 기기(iOS/Android) 지원 – IOS/Android 간 테스트 자동화 코드를 최대 70-80%까지 재사용
이 프레임워크가 자바에서 구축되는 한, 크로스 플랫폼이다. 테스트는 Unix 또는 Windows OS 모두에서 쉽게 실행될 수 있다.
관계형 데이터베이스와 비관계형 데이터베이스(MySQL, SQL Server, Oracle, Postgre)를 모두 지원하는 프레임워크SQL), MyBatis ORM 프레임워크를 사용한 DAO 계층 구현의 놀라운 경험 제공
API 테스트는 프리마크러 템플릿 엔진을 기반으로 한다. 그것은 REST 요청을 생성하는데 있어 큰 유연성을 가능하게 하고 들어오는 인수에 의해 동적으로 반응이 변화된다.

https://www.carina-core.io/

 

Carina - open source test automation framework

Carina - free Java-based tool for automated tests development cost reduction. Single solution for Web, Mobile (iOS, Android), built on the top solutions (Selenium, Appium, TestNG)

www.carina-core.io

3. 구글 얼그레이(Google EarlGrey)
얼그레이는 명확하고 간결한 테스트를 작성할 수 있는 네이티브 iOS UI 자동화 테스트 프레임워크다.

UI, 네트워크 요청, 애니메이션, 다양한 대기열 등과 강력한 내장 동기화
테스트는 쓰기 쉽고 유지관리가 간단하다.
동기화는 작업이 수행되기 전에 UI가 일정하게 유지되도록 보장한다.
모든 상호작용은 가시적 요소에서만 발생한다.
시험 안정성 및 높은 반복성;
필요한 경우 사용자 지정 시간을 수동으로 구현할 수 있음.
XCTest 프레임워크와 함께 작동하며 Xcode의 Test Navigator와 통합되어 Xcode 또는 명령줄에서 직접 테스트 실행
유연한 디자인.

http://google.github.io/EarlGrey/

 

EarlGrey Reference

EarlGrey Reference EarlGrey Reference

google.github.io

4. Cucumber

스튜디오 Pro는 유료
Cucumber는 웹 어플리케이션의 합격 시험을 작성하는 데 사용되는 행동 중심 개발(BDD) 도구다.

빠르고 쉬운 실행 설정.
테스트에서 코드를 재사용할 수 있다.
규격과 시험 문서는 모두 최신 단일 문서에 업로드된다.
테스트 보고서가 비즈니스 읽기 쉬운 영어로 작성되므로 코드를 쉽게 읽을 수 없는 비즈니스 이해당사자 또는 테스트에 익숙하지 않은 다른 사람을 프로세스에 참여시키는 데 도움이 될 수 있음
읽기 쉽고 이해하기 쉬운 형식의 기능 검증 자동화.
교차 플랫폼;
Ruby에서 초기 구현, Java 프레임워크로 확장.
Code는 Selenium, Watir, Capybara 등과 함께 사용할 수 있다.
Python, PHP, Perl 등의 언어 지원NET, 스칼라, 그루비 등
최종 사용자 경험에 초점을 맞춘다

 

 

5. 와티르
와티르(Watir)는 Ruby라이브러리 계열을 기반으로 한 강력한 웹 테스트 자동화 도구이다.

시험은 읽기 쉽고 유지관리가 쉽다.
사용자가 웹 사이트와 상호 작용하는 동작을 모방한다.
교차 브라우저 테스트 지원;
데이터 중심 테스트 지원
Oi, Test/Unit 등과 같은 BBD 도구와 통합.
웹 앱이 어떤 언어로 개발되었는지에 관계없이 지원
다양한 API 집합을 통해 확장 가능
수동 검색은 Ruby의 명령어와 결합할 수 있다.
Ruby는 간결하고 유연한 스크립트 언어로서 자동화된 스크립트에 이상적인 선택이다.
Ruby로 작성되는 한, 데이터베이스에 접속하고, 데이터 파일과 스프레드시트를 읽고, XML을 내보내고, 코드를 재사용 가능한 라이브러리로 구성할 수 있는 기능을 제공한다.

http://watir.com/

 

Watir Project

Watir stands for Web Application Testing In Ruby. It facilitates the writing of automated tests by mimicking the behavior of a user interacting with a website.

watir.com

 

December 16, 2018 업데이트가 최종...

 

 

6. 아피움
아피움은 모바일 애플리케이션을 테스트하기 위해 설계되었다. 그것은 당신이 그것을 테스트하기 위해 어떤 방법으로든 당신의 앱을 다시 만들거나 수정해서는 안 된다는 생각으로 만들어졌다. 또한 시험을 실행하기 위해 특정 언어나 틀에 가두어서는 안 된다.

간편한 설치 프로세스;
크로스 플랫폼 – 동일한 API를 사용하여 여러 플랫폼(iOS, Android, Windows, Mac)에 대해 테스트 가능
iOS, Android 및 Windows 테스트 제품군 간 코드 재사용.
시뮬레이터(iOS) 및 에뮬레이터(Android) 지원;
기본, 하이브리드 및 모바일 웹 애플리케이션 및 데스크톱 애플리케이션 지원
클라이언트/서버 아키텍처 기반
공급업체에서 제공하는 자동화 프레임워크를 후드 아래에서 사용함으로써 Appium별 또는 타사 코드 또는 프레임워크를 앱에 컴파일할 필요가 없다. 즉, 배송 중인 앱과 동일한 앱을 테스트하는 겁니다.
사용자는 원하는 테스트 실행기와 테스트 프레임워크를 자유롭게 사용할 수 있으며, 클라이언트 라이브러리는 HTTP 클라이언트일 뿐 아니라 코드와 혼합되어 원하는 방식으로 테스트 환경을 관리할 수 있다.
요소 리포지토리를 생성하고 변경 후 관리할 수 있다.

http://appium.io/

 

Appium: Mobile App Automation Made Awesome.

Appium Philosophy Appium is built on the idea that testing native apps shouldn't require including an SDK or recompiling your app. And that you should be able to use your preferred test practices, frameworks, and tools. Appium is an open source project and

appium.io

 

 

 

7. 로봇프레임워크
로봇프레임워크(RobotFramework)는 ATDD(Acceptance Test-Driven Development)를 위한 일반적인 테스트 자동화 프레임워크다. 핵심 프레임워크는 파이썬으로 작성되어 있지만, 아이언피톤(.NET, Jython(JVM), PyPy도 마찬가지다.

테스트를 단순화하고 읽기 쉽게 만드는 키워드 중심 접근 방식
재사용 가능한 상위 수준의 키워드는 기존 키워드에서 만들 수 있다.
사용하기 쉬운 표 형식 테스트 데이터 구문
교차 플랫폼;
별도의 프로젝트로 개발할 수 있는 일반 테스트 라이브러리 및 툴로 구성된 다양한 API를 포함하는 풍부한 생태계
기본적으로 Python 및 Java 라이브러리를 사용하고 다양한 API를 통해 확장 가능
Python 또는 Java를 사용하여 기본적으로 확장 가능;
원격 인터페이스를 통해 지원되는 기타 언어

https://robotframework.org/

 

Robot Framework

 

robotframework.org

8. 아파치 JMeter
Apache JMeter는 부하 테스트를 위해 특별히 설계되었으며 정적 및 동적 리소스인 웹 동적 애플리케이션 모두에서 성능을 테스트하는 데 사용할 수 있다. 서버(서버 그룹), 네트워크 또는 오브젝트에 대한 무거운 부하를 시뮬레이션하여 강도를 시험하거나 다른 부하 유형에서 전반적인 성능을 분석 및 측정한다.

다양한 애플리케이션/서버/프로토콜 유형의 로드 및 성능 테스트: 웹, SOAP, FTP, LDAP, TCP, 메일 프로토콜, 셸 스크립트, Java 객체
교차 플랫폼;
제공할 준비가 된 동적 HTML 테스트 보고서
완벽한 휴대성과 100% Java 순도
테스트 결과의 캐싱 및 오프라인 분석/재생
확장성이 높은 코어(플러그 가능, 스크립트 가능 샘플러, 여러 로드 통계 설정 타이머)
개인화는 데이터 분석 및 시각화 플러그인을 통해 달성된다.
기능에 따라 시험에 동적 입력을 제공하거나 데이터를 조작할 수 있다.
Maven, Gradle, Jenkins를 위한 라이브러리를 통한 통합.

https://jmeter.apache.org/

 

Apache JMeter - Apache JMeter™

Apache JMeter™ The Apache JMeter™ application is open source software, a 100% pure Java application designed to load test functional behavior and measure performance. It was originally designed for testing Web Applications but has since expanded to oth

jmeter.apache.org

9. Gauge
Gauge는 진보된 경량 크로스 플랫폼 테스트 자동화 툴이다. Gauge는 플러그인 아키텍처로 구축되어 원하는 언어, IDE 및 에코시스템과 함께 사용할 수 있다.

간편한 시작 – 단일 명령으로 설치 및 초기화
간단하고 유연하며 풍부한 구문
테스트 사양은 마크다운(특정 구조가 필요하지 않음)으로 작성할 수 있으며, 문서는 사용자가 원하는 형식으로 작성된다.
데이터 기반 실행(외부 데이터 소스 지원)
비즈니스 언어로 테스트 사례를 작성할 수 있는 능력을 제공하기 때문에 프로젝트에 관련된 모든 사람이 이해할 수 있는 방식으로 요구사항을 작성할 수 있도록 허용
일관된 언어 지원(C#, Java, Ruby, Intellij);
확장성이 뛰어난 플러그인을 갖춘 모듈형 아키텍처
유지보수가 용이하고 이해할 수 있는 테스트 사례.

https://gauge.org/

 

Open Source Test Automation Framework | Gauge

Work with languages and tools of your choice Gauge works with multiple languages, CI/CD tools and automation drivers. You don't have to learn a new language or tool to get your test automation tool to work for you.

gauge.org

 

10. 로보튬
로보티움은 안드로이드용 강력하고 견고한 자동 블랙박스 UI 테스트 작성 업무를 간소화하기 위해 만들어진 테스트 자동화 프레임워크다. 이 프레임워크의 도움으로 개발자들은 수많은 안드로이드 활동을 다루는 기능, 시스템, 사용자 수용 테스트 시나리오를 작성할 수 있다.

기본 및 하이브리드 Android 앱 모두 테스트
소스 코드를 사용할 수 있는 테스트 애플리케이션과 구현 세부 정보를 알 수 없는 애플리케이션 모두에 사용할 수 있다.
테스트 사례 실행 시간 단축
테스트 대상 응용 프로그램에 대한 최소한의 지식 필요
여러 Android 활동을 자동으로 처리
견고한 테스트 사례 작성에 필요한 최소 시간
시험사례의 가독성이 표준 계측시험에 비해 크게 향상되었다.
테스트 케이스는 UI 구성 요소에 대한 런타임 바인딩으로 인해 더욱 강력함
Maven, Gradle 또는 Ant와 원활하게 통합되어 지속적인 통합의 일환으로 테스트 실행
이들은 2018년 초 테스트 자동화 프레임워크 상위 10위였다. 그들 중 몇몇은 완전히 새것이고, 몇몇은 잘 알려져 있고, 시간을 통해 좋은 평판을 얻었다. 시간과 노력을 절약하고 테스트 오류 수를 줄이기 위해 테스트 프로세스를 일정 규모로 자동화하는 것이 항상 좋다.

https://github.com/RobotiumTech/robotium

 

RobotiumTech/robotium

Android UI Testing. Contribute to RobotiumTech/robotium development by creating an account on GitHub.

github.com

 

 

 

  • Katalon Studio

   년도별 $2,728 :

    Katalon Studio Enterprise : $1,529 /license/year
    Katalon Runtime Engine : $1,199 /license/year

 

 

 

  • Appium
  • Robotium
  • Cucumber
  • Watir
  • Sikuli
  • JMeter
  • WatiN
  • SoapUI
  • Capybara
  • Tarantula
  • Testlink
  • Windmill
  • TestNG
  • Marathon
  • httest
  • Xmind
  • Wiremock
  • Maven
  • Espresso
  • FitNesse
  • JUnit
  • Grinder
  • Tsung
  • Gatling
  • Multi-mechanize
  • Selendroid
  • KIF
  • iMacros
  • Linux Desktop Testing Tool
  • k6

 

 

 

 

 

 

 

반응형