selenium+python 자동화 테스트 마우스 와 키보드 이벤트

앞의 예 에서 클릭 이 벤트 는 모두 클릭()방법 을 통 해 마우스 클릭 이 벤트 를 실현 한다.사실 WebDriver 에 서 는 마우스 조작 방법 을 많이 제공 합 니 다.이 조작 방법 들 은 모두 Action Chains 류 에 포함 되 어 있 습 니 다.마우스 우 클릭,더 블 클릭,서 스 펜 션 과 마우스 드래그 등 기능 을 포함 합 니 다.
Action Chains 클래스 에서 제공 하 는 마우스 조작 이벤트
  • context_click():마우스 우 클릭
  • double_click():마우스 더 블 클릭
  • drag_and_drop():마우스 드래그
  • move_to_element():마우스 서 스 펜 션
    마우스 서 스 펜 션
    페이지 에 드 롭 다운 메뉴 가 있 습 니 다.마우스 로 요소 위 에 올 려 야 아래 메뉴 가 표 시 됩 니 다.아래 의 그림 은 하나의 예 이다.

    바 이 두 홈 페이지 의 설정 항목 입 니 다.아래 메뉴 는 기본적으로 표시 되 지 않 습 니 다.마 우 스 를 위 에 멈 춘 후에 야 표 시 됩 니 다.이것 이 바로 마우스 의 서 스 펜 션 동작 입 니 다.메뉴 가 표 시 된 후에 아래 항목 을 클릭 할 수 있 습 니 다.
    검색 설정 에 들 어 가 는 코드
    
    # -*- coding: utf-8 -*-
    
    from selenium import webdriver
    import time
    
    driver = webdriver.Chrome()
    driver.get("http://www.baidu.com")
    time.sleep(3)
    
    settings = driver.find_element_by_link_text('  ')
    webdriver.ActionChains(driver).move_to_element(settings).perform()
    
    time.sleep(1)
    
    settings_search = driver.find_element_by_class_name('setpref')
    settings_search.click()
    
    time.sleep(3)
    driver.close()
    페이지 를 열 면 링크 의 텍스트 정보 에 따라 설정 항목 을 찾 고 ActionChains 의 move 를 사용 합 니 다.to_element()방법 은 마 우 스 를 설정 에 걸 고 검색 설정 항목 을 찾 습 니 다.
    마우스 의 우 클릭,더 블 클릭,드래그 이 벤트 는 모두 상술 한 방법 으로 호출 되 며,방법 을 바 꾸 기만 하면 된다.드래그 이 벤트 는 두 개의 매개 변 수 를 입력 해 야 합 니 다.첫 번 째 매개 변 수 는 드래그 의 출발점 요소 이 고 두 번 째 매개 변 수 는 종점 요소 입 니 다.
    
    webdriver.ActionChains(driver).context_click("       ").perform() #    
    webdriver.ActionChains(driver).double_click("       ").perform() #    
    webdriver.ActionChains(driver).drag_and_drop("       ", "       ").perform() #    
    키보드 이벤트
    Keys 클래스 에 서 는 거의 모든 키보드 이 벤트 를 제공 합 니 다.마우스 이벤트 에 서 는 두 개의 키보드 이 벤트 를 사 용 했 습 니 다.키보드 의 아래 버튼(sendkeys(Keys.DOWN)와 키보드 의 리 턴 이벤트(sendkeys(Keys.ENTER))。키보드 이벤트 키 모듈 가 져 오기
    
    from selenium.webdriver.common.keys import Keys
    모든 키보드 이벤트 가 이 모듈 에 포함 되 어 있 습 니 다.sendkeys 는 키보드 입력 을 모 의 하 는 데 사 용 됩 니 다.이 외 에 도 키보드 의 버튼 을 예 로 들 어 모 의 할 수 있 습 니 다.하나의 키보드 버튼 뿐만 아니 라 조합 버튼 입력 도 지원 합 니 다.
    
    # -*- coding: utf-8 -*-
    
    from selenium import webdriver
    import time
    
    driver = webdriver.Chrome()
    driver.get("http://www.baidu.com")
    time.sleep(3)
    
    driver.find_element_by_id('kw').send_keys('selenium') #       "selenium"
    driver.find_element_by_id('kw').send_keys(Keys.SPACE) #     
    driver.find_element_by_id('kw').send_keys('python') #       "python"
    driver.find_element_by_id('kw').send_keys(Keys.CONTROL, 'a') #  Control+a    
    driver.find_element_by_id('kw').send_keys(Keys.CONTROL, 'c') #  Control+c    
    driver.find_element_by_id('kw').send_keys(Keys.CONTROL, 'v') #  Control+v    
    driver.find_element_by_id('kw').send_keys(Keys.ENTER) #            
    
    time.sleep(3)
    driver.close()
    다음은 자주 사용 하 는 키보드 이벤트 입 니 다.
    C Keys.BACK_SPACE:백 스페이스(BackSpace)
    C Keys.TAB:탭 키(Tab)
    C Keys.ENTER:Enter 키(Enter)
    C Keys.SHIFT:대소 문자 변환 키(Shift)
    C Keys.CONTROL:Control 키(Ctrl)
    C Keys.ALT:ALT 키(Alt)
    C Keys.ESCAPE:리 턴 키(Esc)
    C Keys.SPACE:스페이스 바
    C Keys.PAGE_UP:페이지 넘 기기(Page Up)
    C Keys.PAGE_DOWN:페이지 넘 기기(Page Down)
    C Keys.END:줄 끝 키(끝)
    C Keys.HOME:홈 버튼(홈)
    C Keys.LEFT:방향 키 왼쪽(왼쪽)
    C Keys.UP:방향 키 에(Up)
    C Keys.Right:방향 키 오른쪽(오른쪽)
    C Keys.DOWN:방향 키 아래(아래쪽)
    C Keys.INSERT:삽입 키(삽입)
    C DELETE:삭제 키(삭제)
    C NUMPAD 0~NUMPAD 9:숫자 키 1-9
    C F1~F12:F1-F12 키
    C(Keys.CONTROL,'a'):조합 키 Control+a,전체 선택
    C(Keys.CONTROL,'c'):조합 키 Control+c,복사
    C(Keys.CONTROL,'x'):조합 키 Control+x,잘라 내기
    C(Keys.CONTROL,'v'):조합 키 Control+v,붙 여 넣 기
    이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.
  • 좋은 웹페이지 즐겨찾기