[JAVA] Essayez le sélénium

introduction

Ceci est une continuation de Try Mockito. Déplaçons Selenium et autres.

Officiel Selenium: https://www.seleniumhq.org/

Modifier le fichier de configuration Maven

pom.xml


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

--Référence - https://search.maven.org/#artifactdetails|org.seleniumhq.selenium|selenium-java|3.12.0|jar

Créer un exemple de code

--Télécharger le pilote chrome - http://chromedriver.chromium.org/downloads --Accédez à l'URL ci-dessus → Sélectionnez la dernière version du pilote → Sélectionnez celui de votre propre système d'exploitation PC

SeleniumMain.java


package com.example;

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.support.ui.ExpectedCondition;
import org.openqa.selenium.support.ui.WebDriverWait;

public class SeleniumMain {

	public static void main(String[] args) {
		final String PATH = "(Emplacement où le pilote Chrome est stocké)";
		System.setProperty("webdriver.chrome.driver", PATH);
		WebDriver driver = new ChromeDriver();

		final String URL = "http://www.google.com";
		driver.get(URL);

		WebElement element = driver.findElement(By.name("q"));
		element.sendKeys("selenium");
		element.submit();

		new WebDriverWait(driver, 10).until(new ExpectedCondition<Boolean>() {
			public Boolean apply(WebDriver d) {
				return d.getTitle().toLowerCase().startsWith("selenium");
			}
		});

		System.out.println("Page title is: " + driver.getTitle());
		driver.quit();
	}
}

Convertir en un projet WEB dynamique

--Sélectionnez Projet-> Propriétés-> Facette de projet-> Module Web dynamique

pom.xml


<dependency>
  <groupId>tomcat</groupId>
  <artifactId>servlet</artifactId>
  <version>4.1.36</version>
</dependency>

--Référence - https://search.maven.org/#artifactdetails|tomcat|servlet|4.1.36|N%2FA

Création d'un fichier cible de test

--Créez un fichier index.jsp directement sous WebContent

index.jsp


<%@ page import="java.util.* "%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%
	String pageTitle = "Fruits Shop";
	List<String> fruitsList = Arrays.asList("Apple", "Banana", "Cherry");
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title><%= pageTitle %></title>
</head>
<body>
	<h1><%= pageTitle %></h1>
	<ul>
		<%
		for (String fruits: fruitsList) {
			out.println("<li>" + fruits + "</li>");
		}
		%>
	</ul>
</body>
</html>

--Déployer et exécuter sur tomcat (8.0) --Accédez à http: // localhost: 8080 / maven_sample / index.jsp

Création de code de test avec Selenium

SeleniumTest.java


package com.example;

import static org.hamcrest.CoreMatchers.*;
import static org.junit.Assert.*;

import java.util.List;

import org.junit.Test;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;

public class SeleniumTest {

	@Test
	public void test() {
		final String PATH = "(Emplacement où le pilote Chrome est stocké)";
		System.setProperty("webdriver.chrome.driver", PATH);
		WebDriver driver = new ChromeDriver();

		final String URL = "http://localhost:8080/maven_sample/index.jsp";
		driver.get(URL);

		String expectPageTitle = "Fruits Shop";
		String pageTitle = driver.getTitle();
		assertThat(pageTitle, is(expectPageTitle));

		WebElement h1 = driver.findElement(By.tagName("h1"));
		assertThat(h1.getText(), is(expectPageTitle));

		List<WebElement> liList = driver.findElements(By.tagName("li"));
		assertThat(liList.size(), is(3));
		assertThat(liList.get(0).getText(), is("Apple"));
		assertThat(liList.get(1).getText(), is("Banana"));
		assertThat(liList.get(2).getText(), is("Cherry"));

		driver.quit();
	}

}

en conclusion

J'ai réussi à utiliser Selenium. Cela vous donnera du grattage ... Je suis heureux que vous puissiez l'utiliser comme référence. → Essayez Selenide

Recommended Posts

Essayez le sélénium
Sélénium
Essayez HiveRunner
Essayez Mockito
Essayez DbUnit
Essayez Lombok
Essayez d'utiliser libGDX
Essayez d'utiliser Maven
Essayez d'utiliser powermock-mockito2-2.0.2
Essayez d'utiliser GraalVM
Essayez d'utiliser jmockit 1.48
Échantillon de sélénium (Java)
Sélénium x Java
Essayez d'utiliser SwiftLint
Essayez d'utiliser Log4j 2.0
Essayez Ruby Minitest
Essayez grossièrement Java 9