Appium 의 사용 과 입문(이 신 구 는 당신 이 가 질 만 한 가치 가 있 습 니 다)

6588 단어 Appium쓰다
석기 시대 부터 원시인 들 은 도 구 를 만 들 고 사용 하 는 것 을 배 워 서 자신의 생활 에 필요 한 것 을 만족 시 켰 다.이것 은 인류 와 동물 의 가장 본질 적 인 차이 이기 도 한다.인 류 는 도 구 를 만 들 고 사용 할 줄 알 지만 동물 은 할 줄 모른다.
21 세기 의 현대 사 회 는 더욱 그렇다.기업 과 기업 간 은 인재 의 경쟁 이 고 사람의 경 쟁 력 은 도 구 를 얼마나 사용 할 수 있 는 지 와 숙련 정도 에 심각하게 의존한다.왜냐하면 옛사람 들 은'군 자 는 다 르 지 않 고 물건 에 잘 어울린다'고 말 했다.
소프트웨어 테스트 는 소프트웨어 발표 전의 마지막 부분 으로서 중요 한 역할 을 한다.많은 회사 에서 개발 에 비해 회 사 는 테스트 직무 에 대해 그다지 중시 하지 않 지만 이 는 그 지위 의 중요성 을 감 출 수 없고 조금 이라도 누락 되면 회사 에 큰 손실 을 가 져 올 수 있다.
국내 각 회사 의 대부분 테스트 작업 이 수 동 으로 이 루어 지 는 것 을 보면 인적자원 에 대한 커 다란 낭비 일 뿐만 아니 라 커 다란 잠재 적 위험 도 수반 된다.사람 은 때때로 실 수 를 할 수 있 지만,기 계 는 할 수 없 기 때문이다.그래서 우 리 는 가능 한 한 자동화 할 수 있 는 조작 을 기계 에 맡 겨 완성 하고 우리 의 두 손 을 해방 시 켜 더욱 의미 있 는 일 을 해 야 한다.
Appium 이란 무엇 입 니까?
Appium 은 원본 모 바 일 엔 드 자동화 프레임 워 크 로 네 이 티 브 애플 리 케 이 션,모 바 일 웹 애플 리 케 이 션 과 혼합 형 애플 리 케 이 션 을 테스트 할 수 있 으 며 크로스 플랫폼 으로 iOS 와 Android 운영 체제 에 사용 할 수 있다.이것 은 코드 의 복용 줄 과 유지 가능성 을 높이 기 위해 서로 다른 플랫폼 에 대해 같은 Api 를 사용 하여 테스트 프로그램 을 작성 할 수 있다 는 것 을 의미한다.
설계 사상
변화무쌍 한 수요 에 더욱 잘 대응 하기 위해 Appium 은 특정한 언어 와 묶 이지 않 았 고 개발 자 는 자신 이 가장 잘 아 는 모든 언어 로 이 프레임 워 크 를 사용 할 수 있 습 니 다.Appium 이 이렇게 유연 한 이 유 는 우수한 디자인 사고 덕분 입 니 다.이 프레임 워 크 는 client-server 의 디자인 모델 을 사용 합 니 다.server 측 이 client 측 에서 보 내 온 요청 을 받 을 수 있다 면 client 측 이 어떤 언어 로 실현 하 는 지 는 의미 가 크 지 않 고 중요 하지 않 습 니 다.
이러한 디자인 사상 은 큰 장점 을 가 져 왔 다.하 나 는 프레임 워 크 가 다 중 언어 를 지원 할 수 있 도록 하 는 것 이다.다른 하 나 는 server 단 을 모든 기계 에 놓 을 수 있 고 클 라 우 드 서버 에 도 전혀 문제 가 없다 는 것 이다.
입문 하 다
프로그램 계 에 있 는 당신 은 Hello World 에 대해 낯 설 지 않 을 것 입 니 다.우리 가 새로운 기술 을 배 울 때마다 Hello World 의 demo 를 써 서 이 기술 을 빨리 익 힐 것 입 니 다.마찬가지 로 오늘 은 여러분 을 데 리 고 입문 Appium 을 만 들 겠 습 니 다.
우선 우 리 는 환경 을 구축 하고 다음 소프트웨어 를 순서대로 설치한다.
  • Android Studio
  • JDK
  • Python 3.8
  • PyCharm
  • 네트워크 시 뮬 레이 터
  • Appium 데스크 톱 버 전
  • 안 드 로 이 드 스튜디오 를 설치 해 야 하 는 이 유 는 전적으로 안 드 로 이 드 시 뮬 레이 터 디 버 깅 앱 프로그램 을 연결 할 때 안 드 로 이 드 SDK 를 사용 하기 때 문 이 며,안 드 로 이 드 스튜디오 는 안 드 로 이 드 SDK 를 첨부 해 안 드 로 이 드 스튜디오 를 직접 설치 하기 때문이다.또한 우리 가 Appium 데스크 톱 버 전 을 선택 한 것 은 데스크 톱 버 전에 시각 화 된 조작 인터페이스 가 붙 어 있어 초보 자 에 게 비교적 우호 적 이기 때문이다.
    그 중 네 개 는 모두 가 비교적 잘 알 고 있 을 것 이 니 스스로 설치 하면 된다.Appium 은https://github.com/appium/appium-desktop/releases/tag/v1.18.3에서 해당 버 전 을 다운로드 해 직접 설치 하면 된다.

    설치 가 완료 되면 Appium,Host,Port 를 기본 값 으로 시작 하면 됩 니 다.이 어 아래 설정 단 추 를 누 르 면 설정 페이지 에 들 어가 Android Home 과 Java Home 을 설정 한 후 서버 를 직접 시작 하면 됩 니 다.


    다음 화면 을 보 았 을 때 축하합니다.서버 가 시작 되 었 습 니 다.

    그 다음 에 우 리 는 client 단 을 보완 하기 시 작 했 습 니 다.사실은 코드 일 뿐 입 니 다.Api 를 직접 호출 하면 됩 니 다.우 리 는 Appium 을 통 해 시 뮬 레이 터 의 App 을 조작 해 야 하기 때문에 시 뮬 레이 터 를 먼저 시작 해 야 합 니 다.명령 행 입력adb devices아래 정 보 를 보면 시 뮬 레이 터 가 정상 임 을 나타 낸다.

    다음은 클 라 이언 트 엔 드 코드 를 작성 하 는 것 입 니 다.
    
    from appium import webdriver
    
    desired_capabilities = {
      "platformName": "Android", #     
      "deviceName": "emulator-5554", #    ID
      "platformVersion": "6.0.1", #      
      "appPackage": "com.tencent.mm", # app   
      "appActivity": "com.tencent.mm.ui.LauncherUI", # app      Activity
      'noReset': True #      session            
    }
    
    driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_capabilities)
    print('        ')
    이상 의 정보 가 있 으 면 프로그램 을 통 해 시 뮬 레이 터 에 직접 연결 한 다음 에 위 챗 앱 을 자동 으로 시작 할 수 있 습 니 다.

    그러면 위 챗 앱 을 시작 한 후에 우 리 는 또 어떤 조작 을 할 수 있 습 니까?기본적으로 우리 가 수 동 으로 할 수 있 는 조작 은 프로그램 이 모두 우 리 를 대신 해서 완성 할 수 있다.
    
    driver.find_element_by_id('com.tencent.mm:id/f8y').click()
    print('      ')
    time.sleep(3)
    
    driver.find_element_by_id('com.tencent.mm:id/bhn').send_keys('Python   ')
    print('        &        ')
    time.sleep(3)
    
    driver.find_element_by_id('com.tencent.mm:id/tm').click()
    print('   icon   ')
    time.sleep(3)
    
    driver.find_element_by_id('com.tencent.mm:id/cj').click()
    print('       ')
    time.sleep(3)
    
    driver.find_element_by_id('com.tencent.mm:id/a1u').click()
    print('       ')
    위의 이 코드 는 어떤 조작 을 했 습 니까?쉽게 말 하면'Python 기술'의 공중 번 호 를 검색 한 다음 에 이 공중 번호 홈 페이지 에 가서 첫 번 째 글 을 보 았 습 니 다.동시에 프로그램 은 앱 에 반응 시간 을 조금 남기 기 위해 명령 을 보 낼 때마다 프로그램 을 3 초 동안 쉬 게 합 니 다.
    세심 한 것 을 발견 할 수 있 습 니 다.상기 코드 는 주로 세 개의 Api,find_element_by_id(),send_keys()click와 관련 되 는데 함수 명 을 보면 무엇 을 하 는 지 알 수 있 습 니 다.
    그렇다면 우 리 는 어떤 원소 의 ID 를 어떻게 알 수 있 습 니까?이 럴 때 또 우리 데스크 톱 판 Appium 을 내 놓 겠 습 니 다."시작 성공"인터페이스 오른쪽 상단 에 있 는 확대경 아이콘 을 누 르 십시오.그 다음 에 상기 프로그램의 설정 정 보 를 추가 하고 마지막 으로'Start Session'단 추 를 누 르 면 의외 의 사고 가 발생 하지 않 으 면 위 챗 시작 화면 을 볼 수 있 을 것 입 니 다.바로 그 지구 입 니 다.

    하지만 세심 한 당신 은 시 뮬 레이 터 의 인터페이스 와 Appium 의 인터페이스 가 일치 하지 않 는 다 는 것 을 알 게 될 것 입 니 다.이 때 는 Appium 의 인터페이스 정 보 를 새로 고침 하고 아래 그림 의 새로 고침 단 추 를 누 르 면 됩 니 다.

    어떤 요소 의 ID 를 가 져 오 려 면 선택 단 추 를 선택 한 다음 ID 를 가 져 오 려 는 요 소 를 선택 하면 됩 니 다.

    총결산
    오늘 우 리 는 자동화 신기 인 Appium 을 배 웠 습 니 다.사실 이 프레임 워 크 는 테스트 만 하 는 것 이 아니 라 사용 할 수 있 는 곳 이 많 습 니 다.예 를 들 어 정기 적 으로 여자 표 에 위 챗 을 보 내'뜨 거 운 물 을 많이 마셔 라'고 일 깨 워 주 었 습 니 다.하하 하,어린이 들 은 자신의 상상력 을 발휘 하여 재 미 있 는 도 구 를 만 들 수 있 습 니 다.
    예제 코드:https://github.com/JustDoPython/python-examples/tree/master/doudou/2020-10-20-appium
    Appium 의 사용 과 입문(이 신기 구 는 당신 이 가 질 만 한 가치 가 있 습 니 다)에 관 한 이 글 은 여기까지 소개 되 었 습 니 다.더 많은 관련 Appium 의 사용 내용 은 우리 의 이전 글 을 검색 하거나 아래 의 관련 글 을 계속 찾 아 보 세 요.앞으로 많은 응원 바 랍 니 다!

    좋은 웹페이지 즐겨찾기