1. 程式人生 > >Springboot整合selenide 自動化測試

Springboot整合selenide 自動化測試

一、匯入相應依賴  pom.xml如下  因為selenide包含了selenium的api  為了能自主配置selenium 所以selenide模組移除了selenium 然後自定義配置了selenium

<dependency>
    <groupId>com.codeborne</groupId>
    <artifactId>selenide</artifactId>
    <version>4.7</version>
    <scope>test</scope>
    <exclusions>
        <exclusion>
            <groupId>org.seleniumhq.selenium</groupId>
            <artifactId>selenium</artifactId>
        </exclusion>

        <exclusion>
            <groupId>org.seleniumhq.selenium</groupId>
            <artifactId>selenium-support</artifactId>
        </exclusion>

    </exclusions>
</dependency>

<dependency>
    <groupId>org.seleniumhq.selenium</groupId>
    <artifactId>selenium-java</artifactId>
    <version>2.53.1</version>
</dependency>

<dependency>
    <groupId>org.seleniumhq.selenium</groupId>
    <artifactId>selenium-chrome-driver</artifactId>
    <version>2.53.1</version>
</dependency>

<dependency>
    <groupId>org.seleniumhq.selenium</groupId>
    <artifactId>selenium-api</artifactId>
    <version>2.53.1</version>
</dependency>

<dependency>
    <groupId>org.seleniumhq.selenium</groupId>
    <artifactId>selenium-edge-driver</artifactId>
    <version>2.53.1</version>
</dependency>

<dependency>
    <groupId>org.seleniumhq.selenium</groupId>
    <artifactId>selenium-firefox-driver</artifactId>
    <version>2.53.1</version>
</dependency>

<dependency>
    <groupId>org.seleniumhq.selenium</groupId>
    <artifactId>selenium-ie-driver</artifactId>
    <version>2.53.1</version>
</dependency>

<dependency>
    <groupId>org.seleniumhq.selenium</groupId>
    <artifactId>selenium-remote-driver</artifactId>
    <version>2.53.1</version>
</dependency>

<dependency>
    <groupId>org.seleniumhq.selenium</groupId>
    <artifactId>selenium-safari-driver</artifactId>
    <version>2.53.1</version>
</dependency>

<dependency>
    <groupId>org.seleniumhq.selenium</groupId>
    <artifactId>selenium-support</artifactId>
    <version>2.53.1</version>
</dependency>

二、在指定位置生成測試類檔案

在springboot的測試目錄下建立Test類



三、測試類編寫

import com.codeborne.selenide.Configuration;
import org.junit.BeforeClass;
import org.junit.FixMethodOrder;
import org.junit.Test;
import org.junit.runners.MethodSorters;

import static com.codeborne.selenide.Condition.text;
import static com.codeborne.selenide.Selenide.*;

@FixMethodOrder(MethodSorters.NAME_ASCENDING) //name_ascending 是如果跑整個class 會根據方法名順序跑
public class UserTest {
    @BeforeClass
    public static void setUp() {
        Configuration.timeout = 6000;
        Configuration.browser = "chrome"; //設定瀏覽器驅動,預設路徑看下圖 也可以不用預設路徑

        //Configuration.reportsFolder = "test-result/reports"; selenide失敗回自動儲存快照  這是配置快照儲存目錄 預設也是這個

    }

//自動化 訪問百度
    @Test
    public void step00_test() {
        open("https://www.baidu.com");
        $("body").shouldHave(text("百度"));
        sleep(5000);
    }

    @Test
    public void step01_addUserSuccess() {
        loginSuperForestry();
        open("/admin");
        $(".wrapper-content").shouldHave(text("新增賬號"));

        String user = "qq" + Double.valueOf(Math.random() * 1000000).intValue();
        setUserMessage(user, "哈哈", 0);

        $("#addUser").click();
        $("#userTable").shouldHave(text(user));
    }

四、配置瀏覽器驅動(pom.xml配置好後,如果倉庫沒有驅動,需要手動配置)

配置driver  配置到如下路徑  這個路徑也是預設路徑




下載地址

谷歌瀏覽器驅動下載

下載win-32解壓.exe檔案在指定路徑

 



參考文件

http://selenide.org/documentation.html 官方參考文件,可快速上手

http://selenide.org/javadoc/current/      官方API