본문 바로가기

테스트툴/Selenium

Selenium Form WebElement

TextBox, Button, sendkeys (), click ()

예제 사이트 http://demo.guru99.com/test/login.html 활용

 

findElement () – 단일 웹 요소를 찾고 WebElement Selenium 객체로 반환합니다.

findElements () – 로케이터 기준과 일치하는 WebElement 객체 목록을 반환합니다.

 

Web Elements의 개체를 생성하기 위해

import org.openqa.selenium.WebElement;

위 패키지를 가져온다

 id 로케이터를 사용하여 "Email address"텍스트 필드를 찾고 이름 로케이터를 사용하여 "Password"필드를 찾는다

WebElement email = driver.findElement(By.id("email"));
WebElement password = driver.findElement(By.name("passwd"));

 

sendkeys () - 테스트 실행 중에 텍스트 및 비밀번호 필드에 편집 가능한 컨텐츠를 입력하는 데 사용되는 메소드입니다.

email.sendKeys("abc@naver.com");
password.sendKeys("1234");

위 코드로 인해 입력 상자에 값을 입력한다

 

clear () - 입력 상자의 텍스트를 삭제하는 데 사용됩니다. 매개변수 필요 없음

email.clear();
password.clear();

 

click () - 메서드를 사용하여 액세스 할 수 있습니다.

login.click ();	

 

submit () - 전체 양식을 서버에 제출하는 데 사용됩니다.

submit ();

 

위를 모두 활용한 전체 코드

package newpackage;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.WebElement;//webElement 사용

public class MyClass {
	public static void main(String[] args){
		System.setProperty("webdriver.chrome.driver", "c:/selenium/chromedriver.exe");
		WebDriver driver = new ChromeDriver();
		
		String getUrl="http://demo.guru99.com/test/login.html";
		driver.get(getUrl);
		
		WebElement email = driver.findElement(By.id("email"));
		WebElement password = driver.findElement(By.name("passwd"));
		System.out.println("텍스트 필드 세트 (아이디,패스워드 )");
		
		email.sendKeys("abc@naver.com");
		password.sendKeys("1234");
		System.out.println("텍스트 필드 세트 (아이디,패스워드 입력)");
		
		email.clear();
		password.clear();
		System.out.println("텍스트 필드 삭제 (아이디,패스워드 입력 삭제)");
		
		email.sendKeys("abc123@naver.com");
		password.sendKeys("1234567");
		System.out.println("텍스트 필드 세트 (아이디,패스워드 입력)");
		
		WebElement login = driver.findElement(By.id("SubmitLogin"));
		System.out.println("텍스트 필드 세트 (아이디,패스워드 입력)");
		login.click();
		System.out.println("클릭으로 로그인");
	}
}

 

console