셀레늄 + 자바 - autolt으로는 업로드 파일 작업을 완료

사설 :

각 자동화 된 테스트 학생들이 의무적으로 인터뷰의 문제는, 우리가 일반적으로 사용하는 것이라고 할 수도 발생 하겠지만 파일을 업로드 표준 컨트롤에서 SendKeys () 업로드를 완료 할 수 있지만, 우리의 테스트 사이트 업로드 컨트롤 일반적으로 자신의 패키지와 것 기존의 업로드가 아니라 그 API의 셀레늄이 업로드 작업을 완료 할 수 없었다 말할 것입니다, 그리고 우리가 파일을 업로드 할 수있는 작업을 완료하는 데 Autolt 타사 도구를 빌려, 지출되었습니다.

준비

1, 다운로드 autolt

공식 웹 사이트 : https://www.autoitscript.com/site/autoit/downloads/는 , 자신을 다운로드

바이두는 또한 녹색 버전, 무료 설치를 다운로드 할 수 있습니다, 저자는 녹색 버전이며, 다음과 같은 경우는 녹색 버전을 설명해야

바이 네트워크 디스크 첨부 : 링크 : https://pan.baidu.com/s/1szmGK7wudsXKkH5xkEOnOQ 추출 코드 : dysb를 

2, 지정된 디렉토리에 압축 해제를 다운로드 한 후

3, 다음 테스트 페이지 HTML 코드

< HTML > 
< 선두 > 
< 메타 HTTP-당량 = "컨텐츠 타입" 콘텐츠 = "text / html과; 문자셋 = UTF-8"  /> 
< 타이틀 >上传文件演示案例</ 타이틀 > 
</ 헤드 > 
< 본문 > 
  < DIV 클래스 = "행 유체" > 
    < DIV 클래스 = "잘 span6" > 
    < H3 > 파일 업로드 </ H3 > 
      < 입력 ID = ""업로드 유형 ="파일을 "이름 = "파일을"  /> 
    </ DIV > 
  </ DIV > 
</ > 
</ html로 >

업로드 스크립트 작성

  • 압축 해제 디렉토리를 찾아 AU3TOOL.exe을 두 번 클릭 개방형 인터페이스는 스크립트를 작성하는 데 사용됩니다

  • , Au3Info.exe을 두 번 클릭하여 위치 도구 인터페이스를 엽니 다

  • 파일에 다음 코드를 입력 : 괄호 안의 매개 변수를 참고 다음 단계는 매개 변수를 구하는 방법에 대한 것입니다

ControlFocus ( "TITLE1", "", "EDIT1");  
WinWait ( "[CLASS # 32770]", "", 10); 
ControlSetText ( "TITLE1", "", "EDIT1", "文件地址"); 
수면 (2000) 
ControlClick ( "제목 2", "", "Button1을");

파라미터 취득 단계 (처음 세 개의 라인)의

  • 제목과 단추 1에있는 코드의 다음, 마지막 행

는 실행 프로그램을 생성하려면

 [도구] -> 스크립트 컴파일러

실행 파일은 다음과 같습니다 :

자동화 된 테스트 스크립트는 업로드를 완료 upload.exe 호출

특정 코드는 다음과 같이 :

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
import org.testng.annotations.AfterClass;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.Test;

import java.io.IOException;

/**
 * @author rongrong
 * 上传文件演示案例
 */
public class TestUpload {
    WebDriver driver;

    @BeforeClass
    public void beforeClass() {
        System.setProperty("webdriver.chrome.driver", "driver/chromedriver.exe");
        driver = new ChromeDriver();
    }

    @Test
    public void testUpload() {
        driver.get("file:///C:/Users/Administrator/Desktop/index.html");
        driver.manage().window().maximize();
        //选择文件
        driver.findElement(By.id("upload")).click();
        try {
            Runtime.getRuntime().exec("upload.exe");
        } catch (IOException e) {
            e.printStackTrace();
        }

    }

    @AfterClass
    public void afterClass() {
        driver.quit();
    }

}

效果如下:

 

到此使用自动化调用autolt上传文件的案例演示结束,可能很多同学会纠结autolt语法不会写啥的,大可不必纠结,基本写完是一劳永逸的,不会在维护了,更多autolt的用法,有兴趣的同学可以自行去官网查看了解。

 

추천

출처www.cnblogs.com/longronglang/p/11312140.html