introduction appium
이 자습서에서는 Appium이란 무엇이며, 아키텍처, 워크 플로 및 Android 및 iOS에서 모바일 자동화를위한이 오픈 소스 도구를 사용하는 방법을 설명합니다.
Appium은 Android, iOS 등과 같은 플랫폼에서 자동화를 제공하는 오픈 소스 모바일 자동화 도구입니다.
또한 Java, PHP, Perl, Python 등과 같은 여러 프로그래밍 언어를 사용하여 자동화를 지원합니다.따라서 사용자는 익숙한 프로그래밍 언어를 사용하고 자동화 된 스크립트를 작성할 수 있습니다.
=> 여기에서 간단한 Appium 교육 시리즈를 확인하십시오.
학습 내용 :
Windows 10에서 jar 파일을 여는 방법
Appium이란?
다음은 비디오 자습서입니다.
앱 개요
네이티브, 하이브리드 및 웹 앱을 포함한 모든 애플리케이션을 자동화 할 수 있습니다.다음은 다양한 유형의 응용 프로그램에 대한 간단한 개요입니다.
- 기본 앱 : 이 앱iOS, Android 또는 Windows SDK를 사용하여 작성되었습니다.장치에 설치 한 후에 만 액세스 할 수 있습니다. 예를 들어, 장치에 설치 한 후에 만 사용할 수있는 Skype. 브라우저를 통해 앱을 열 수 없습니다.
- 편물 앱 : 모바일 웹 앱모바일 브라우저를 사용하여 액세스 할 수 있습니다.웹 앱은 브라우저를 통해서만 액세스 할 수 있습니다. 예를 들어, softwaretestinghelp.com은 브라우저를 통해서만 액세스 할 수 있습니다. 웹 사이트에 사용할 수있는 별도의 앱이 없습니다.
- 잡종 앱 : 이들앱웹 콘텐츠와 상호 작용할 수있는 기본 컨트롤 인 'webview'주위에 래퍼가 있습니다.이들은 장치에 설치 될 수있을뿐만 아니라 브라우저 URL을 통해 액세스 할 수 있습니다. 예를 들어, Amazon은 장치에 별도의 앱으로 설치할 수 있으며 다음과 같이 브라우저를 통해 액세스 할 수도 있습니다. 아마존.
더 중요한 것은이 도구가 '크로스 플랫폼'이라는 것입니다.이 도구를 사용하면 동일한 API를 사용하여 여러 플랫폼 (iOS, Android, Windows)에 대한 테스트를 작성할 수 있습니다. 이를 통해 iOS, Android 및 Windows 장치간에 코드를 재사용 할 수 있습니다.
시대의 아키텍처
이것은 WebDriver 세션을 처리하는 Node.js 프로그래밍 언어로 작성된 HTTP 서버입니다. Appium 서버는 클라이언트 라이브러리에서 JSON 형식으로 HTTP 요청을받습니다. 그런 다음 요청이 실행되는 플랫폼에 따라 다른 방식으로 처리됩니다.
클라이언트-서버 아키텍처를 따릅니다. 여기에는 3 가지 구성 요소가 포함됩니다.
- appium 클라이언트
- appium 서버
- 최종 장치
# 1) 마커스 클라이언트
자동화 스크립트 코드는 Appium Client라고 부르는 것입니다.
코드는 PHP, Java, Phyton 등과 같은 모든 프로그래밍 언어로 스크립팅됩니다.이 자동화 스크립트는 모바일 장치 및 응용 프로그램의 구성 세부 정보를 보유합니다. 이와 함께 애플리케이션의 테스트 케이스를 실행하기위한 로직 / 코드가 스크립팅됩니다.
# 2) 시대 서버
Appium 서버는 Node.js 프로그래밍 언어를 사용하여 작성되었습니다.Appium 클라이언트에서 JSON 형식으로 연결 및 명령 요청을 수신하고 모바일 장치에서 해당 명령을 실행합니다. 서버는 기계에 설치해야하며 자동화 코드를 호출하기 전에 시작됩니다.
서버는 iOS 및 Android와 같은 다양한 플랫폼과 상호 작용합니다. 모바일 앱의 최종 장치와 상호 작용하는 세션을 생성합니다. 클라이언트 라이브러리에서 HTTP 요청을 읽고 이러한 요청을 적절한 플랫폼으로 보내는 Node.js 프로그래밍 언어로 작성된 HTTP 서버입니다.
서버를 시작하려면 사용자가 소스를 다운로드하거나 Npm에서 직접 설치해야합니다. 또한 서버의 GUI 버전을 제공합니다. 공식 Appium에서 다운로드 할 수 있습니다. 대지 .
다음 장에서는 GUI 버전에 대해 더 자세히 설명합니다. 이 도구의 가장 큰 장점 중 하나는 Appium이 핵심에 REST API이기 때문에 상호 작용하는 데 사용하는 코드가 Java, C #, Ruby, Python 등과 같은 여러 언어로 작성된다는 것입니다.
# 3) 최종 장치
이것은 대부분 실시간 모바일 장치 또는 에뮬레이터입니다. 자동화 스크립트는 클라이언트의 명령에 의해 Appium 서버에 의해 최종 장치에서 실행됩니다.
최고의 무료 시스템 클리너 윈도우 10
Appium 아키텍처의 워크 플로우
테스트 케이스에 대한 구성 세부 사항 및 자동화 스크립트를 보유하는 Appium 클라이언트는 명령을 JSON 형식으로 서버에 보냅니다. 자동화 스크립트는 클라이언트의 내장 jar 파일에 의해 JSON 형식으로 변환됩니다.
그러면 Appium Server가 명령을 인식하고 해당 최종 장치와의 연결을 설정합니다. 연결이 이루어지면 최종 장치에서 테스트 케이스의 실행을 트리거합니다. 최종 장치는 Appium에 대한 HTTP 형식의 요청에 응답합니다.
테스트 케이스가 모바일 장치 / 에뮬레이터에서 실행될 때 장치 / 에뮬레이터에서 수행 된 모든 작업의 로그를 채 웁니다.
iOS에서 Appium 작업
이 도구는 Apple의 UIAutomation API를 사용하여 iOS 기기에서 애플리케이션의 UI 요소와 상호 작용합니다. UIAutomation은 Apple Company에서 제공하는 JavaScript 라이브러리입니다. 이러한 라이브러리를 사용하여 iOS에서 애플리케이션을 자동화합니다.
최고의 이메일 공급자는 누구입니까
테스트 스크립트를 실행할 때 테스트 스크립트의 명령은 Appium 서버에 대한 HTTP 요청을 통해 JSON 형식으로 취해집니다. 서버는 이러한 계측기에 명령을 전송하고 계측기는 bootstrap.js 파일을 찾습니다.
그런 다음 이러한 명령은 iOS 계측기 환경 내의 bootstrap.js 파일에서 실행됩니다. 명령 실행 후 클라이언트는 실행 된 명령의 로그 세부 정보와 함께 메시지 (성공 / 실패)를 Appium 서버로 다시 보냅니다.
Android에서 Appium 작업
Appium은 UIAutomator 프레임 워크를 사용하여 Android 장치에서 애플리케이션의 UI 요소와 상호 작용합니다. UIAutomator는 Android 개발자가 사용자 인터페이스를 테스트하기 위해 개발 한 프레임 워크입니다.
여기에서 Apple에서 본 UIAutomation API 대신 bootstrap.js 파일 대신 UIAutomator / Selendroid 및 bootstrap.jar이 있습니다. 17보다 크거나 같은 모든 Android 버전을 지원합니다. 이전 버전의 Android의 경우 Appium은 Selendroid 프레임 워크를 사용합니다.
테스트 스크립트를 실행할 때 Appium은 JSON 형식의 명령을 Android 버전을 기반으로 UIAutomator 또는 Selendroid에 보냅니다. 여기서 bootstrap.jar는 TCP 서버 역할을하는데, UIAutomator / Selendroid를 사용하여 Android 기기에서 작업을 실행하기 위해 테스트 명령을 보내는 데 사용할 수 있습니다.
결론
이 장에서는 Appium에 대한 기본적인 이해, 즉 iOS / Android에서 Appium의 아키텍처, 워크 플로 및 작업에 대해 알아 보았습니다.
다음 장에서는 실제 장치에 모바일 자동화를 위해 설치할 Appium 및 기타 기본 소프트웨어를 설정하는 방법을 살펴 봅니다.
추천 도서
- Android 앱용 Appium 테스트 생성
- Appium Studio 소개 : 주요 이점 및 기능
- Eclipse 용 Appium Studio를 사용하여 Appium 테스트를 병렬로 실행
- Eclipse 용 Epoch Studio를 사용하여 Epochs 테스트 만들기
- Eclipse 용 Appium Studio : Eclipse에서 엔드-투-엔드 Appium / Selenium 자동화
- Android 및 iOS 모바일 앱 테스트를위한 Appium 자습서
- 클라우드에서 Appium Studio로 실제 iOS 및 Android 장치 연결
- iOS 앱용 Appium 테스트 생성