> Java > java지도 시간 > Java Selenium이 sendkey를 사용하여 파일을 업로드하는 방법

Java Selenium이 sendkey를 사용하여 파일을 업로드하는 방법

PHPz
풀어 주다: 2023-04-20 22:46:13
앞으로
1601명이 탐색했습니다.

AutoIt 다운로드 및 설치

파일 업로드는 자동화에서 까다로운 부분입니다. 현재 Selenium은 업로드를 위한 API를 제공하지 않으므로 AutoIt 및 sikuli와 같은 외부 힘을 사용하여 완료해야 합니다.

AutoIt은 BASIC과 유사한 스크립팅 언어를 사용하는 무료 소프트웨어로, 시뮬레이션된 키보드 키, 마우스 움직임 및 창/컨트롤의 조합을 사용하여 Windows GUI(그래픽 사용자 인터페이스) 작업을 자동화하도록 설계되었습니다.

1 다운로드하려면 AutoIt 공식 웹사이트를 엽니다.

Java Selenium이 sendkey를 사용하여 파일을 업로드하는 방법

여기서 다운로드하려는 방법은 다음과 같이 압축을 푸는 것입니다.

Java Selenium이 sendkey를 사용하여 파일을 업로드하는 방법

폴더를 선택하고 스크립트 편집기를 엽니다.

Java Selenium이 sendkey를 사용하여 파일을 업로드하는 방법

Baidu 이미지 업로드 창을 열고 AutoIt Windows 정보 도구를 열고 마우스를 Finder 도구로 이동한 다음 마우스 왼쪽 버튼을 누른 채 식별해야 하는 Windows 컨트롤로 드래그합니다. 일부 요소 정보를 캡처하려면 요소 로케이터의 대상 모양 버튼을 파일 업로드 팝업 창으로 드래그하세요. 도구의 Finder Tool 아이콘(그림에서 파란색 원으로 표시된 부분)을 마우스를 이용하여 식별하려는 컨트롤로 드래그하면 해당 컨트롤의 고유 식별 정보가 도구의 왼쪽 부분(표시된 부분)에 표시됩니다. 그림의 빨간색 상자)). 표시된 결과에서 이 컨트롤의 제목은 "Open"이고 클래스는 편집이며 인스턴스는 1이라는 것을 알 수 있습니다. 우리는 컨트롤의 이 정보를 사용하여 컨트롤을 찾고 스크립트를 작성합니다.

Java Selenium이 sendkey를 사용하여 파일을 업로드하는 방법

에디터를 열고 함수를 호출하여 Finder Tool 컨트롤에서 인식한 정보를 기반으로 스크립트를 작성합니다. AutoIt 스크립트 편집기에 아래에 작성한 설명 없이 다음 스크립트를 입력합니다.

여기서 다음 정보를 알아야 합니다.

1. 작업 페이지를 수정하는 데 사용되는 작업 페이지의 제목입니다.
2. 입력해야 하는 정보는 입력란에 "업로드된 파일의 경로와 파일명"을 입력하세요(Windows 작업).
3. "열기" 버튼을 클릭하여 파일을 업로드하세요.

위에서 식별한 제어 정보를 기반으로 SciTE Script Editor 편집기를 사용하여 AutoIT의 구문에 따라 스크립트를 작성하세요.

파일 업로드를 구현하는 데 필요한 몇 가지 방법:

ControlFocus ( "窗口标题", "窗口文本", 控件ID)
---->设置输入焦点到指定窗口的某个控件上(即:控件ID“文件名”输入框的id)
WinWait ( "窗口标题" [, "窗口文本" [, 超时时间]] )
---->暂停脚本的执行直至指定窗口存在(出现)为止
ControlSetText ( "窗口标题", "窗口文本", 控件ID, "新文本" )
---->修改指定控件的文本(即:控件ID“文件名”输入框的id)
Sleep ( 延迟 )
---->使脚本暂停指定时间段
ControlClick ( "窗口标题", "窗口文本", 控件ID [, 按钮] [, 点击次数]] )
---->向指定控件发送鼠标点击命令(即:控件ID“打开”按钮的id)
로그인 후 복사

그 중 title은 AutoIt Window Info에서 인식하는 Title 필드이고, controlID는 AutoIt Window Info에서 인식하는 Class와 Instance를 접합한 것입니다. 위와 같이 접합한 후의 결과는 다음과 같습니다. be: Button1(예: classnameNN)

Java Selenium이 sendkey를 사용하여 파일을 업로드하는 방법

ControlFocus(("title","text",controllD)用于识别windows文件上传窗口
ControlFocus("打开","","")向文件名输入框输入本地要上传文件的路径
ControlSetText("打开","","Edit1","C:\Users\DELL\Desktop\test\upload\北京宏哥.jpeg")
Sleep(2000)点击上传窗口中的“打开“按钮
ControlClick("打开","","Button1")
로그인 후 복사

ChromFileUpload.au3 형식으로 스크립트 파일을 저장한 다음 AutoIt 스크립트 편집기에서 도구 메뉴를 클릭하고 tools=>go를 클릭하여 스크립트 확인을 수행합니다(Windows 창에서
Java 프로그램에서 이 스크립트를 호출하려면 .exe(x64) 도구로 컴파일 스크립트를 통해 exe 파일을 생성해야 합니다. AutoIt은 .exe 설치 패키지를 통해 설치됩니다)

AutoIt 스크립트 편집 브라우저의 도구 메뉴를 클릭하고 컴파일을 선택하면 동일한 경로에 .exe 파일이 생성됩니다(압축해제 패키지를 통해 설치된 AutoIt입니다)

Java Selenium이 sendkey를 사용하여 파일을 업로드하는 방법

변환 완료 메시지가 표시됩니다. ChromeFileUpload.exe를 프로젝트에 복사하고 나중에 Selenium 스크립트에서 사용됩니다.
자바 코드

//实现文件上传。通过Runtime的静态方法获取Runtime对象
Runtime runtime = Runtime.getRuntime();
//通过Runtime对象调用exe方法
runtime.exec("C:\Users\DELL\Desktop\test\upload\ChromeFileUpload.exe");
로그인 후 복사

위 내용은 Java Selenium이 sendkey를 사용하여 파일을 업로드하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:yisu.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿