SeleniumTest-helloworld

 

测试服务地址:

https://gitee.com/steffens/webapplication/tree/master/webapplication

代码地址:

https://gitee.com/steffens/httpinterface/tree/master/bookcode38382/webapplicationtest

 

import org.openqa.selenium.*;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.interactions.Actions;
import org.testng.Assert;
import org.testng.annotations.AfterClass;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.Test;

import java.util.List;

import static java.lang.Thread.sleep;

public class SeleniumTest {
	private WebDriver chromeDriver;

	@BeforeClass
	public void init() {
		chromeDriver = new ChromeDriver();
	}

	@Test
	public void testCase1() {
		chromeDriver.get("http://localhost:8080/login");
		chromeDriver.findElement(By.name("username")).sendKeys("zhangsan");
		chromeDriver.findElement(By.name("password")).sendKeys("zhangsan123456");
		chromeDriver.findElement(By.xpath("//form/p[4]/button")).click();
		String expected = "zhangsan";
		String actual = chromeDriver.findElement(By.xpath("//nav/label/span")).getText();
		Assert.assertEquals(expected, actual);
	}


	public  static  void waitOneSecond() {
		try {
			Thread.sleep(1000);
		} catch (InterruptedException e) {
			e.printStackTrace();
		}
	}

	@AfterClass
	public void clear() throws InterruptedException {
		chromeDriver.quit();
		System.out.println("After class clear()");
	}

}

 

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="Suite">
	<test thread-count="5" name="Test">
		<classes>
			<class name="com.lujiatao.webapplicationtest.SeleniumTest" />
		</classes>
	</test> <!-- Test -->
</suite> <!-- Suite -->

 

import org.openqa.selenium.*;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.interactions.Actions;
import org.testng.Assert;
import org.testng.annotations.AfterClass;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.Test;

import java.util.List;

import static java.lang.Thread.sleep;

public class SeleniumTest {
	private WebDriver chromeDriver;

	@BeforeClass
	public void init() {
		chromeDriver = new ChromeDriver();
	}

/*	@Test
	public void testCase1() {
		chromeDriver.get("http://localhost:8080/login");
		chromeDriver.findElement(By.name("username")).sendKeys("zhangsan");
		chromeDriver.findElement(By.name("password")).sendKeys("zhangsan123456");
		chromeDriver.findElement(By.xpath("//form/p[4]/button")).click();
		String expected = "zhangsan";
		String actual = chromeDriver.findElement(By.xpath("//nav/label/span")).getText();
		Assert.assertEquals(expected, actual);
	}*/

	@Test
	public void testCase2() throws InterruptedException {

		chromeDriver.get("http://localhost:8080/index-demo");

		定位元素--helloworld
		WebElement el = chromeDriver.findElement(By.id("label-id"));

		System.out.println("通过ID定位元素为:" + el.getText());

		WebElement e2 = chromeDriver.findElement(By.name("label-name"));

		System.out.println("通过name定位获取的元素为:" + el.getAttribute("placeholder"));

		e2.sendKeys("我输入了内容xxx");

		WebElement e9 = chromeDriver.findElement(By.id("my-button"));
		e9.click();
		e9.click();
		e9.click();

		List<WebElement> radios = chromeDriver.findElements(By.name("radio"));
		for(int i=0; i < radios.size(); i ++ )
		{
			radios.get(i).click();
			if(radios.get(i).isSelected() ) {
				System.out.println("第" + (i + 1 ) + "个单选按钮被选中了!");
			}
		}


		键盘事件
		WebElement input = chromeDriver.findElement(By.name("label-name"));
		input.sendKeys("123456");
		sleep(5000);
		System.out.println(input.getAttribute("value"));
		input.sendKeys(Keys.BACK_SPACE);
		sleep(5000);
		System.out.println(input.getAttribute("value"));

		鼠标事件
		WebElement apple = chromeDriver.findElement(By.xpath("//nav/ul/li[1]/a"));
		WebElement iPhone6S = chromeDriver.findElement(By.xpath("//ul/li[1]/ul/li/a"));
		Actions  action = new Actions(chromeDriver);
		action.moveToElement(apple);
		action.moveToElement(iPhone6S);
		action.click();
		action.perform();

		operate brower
		WebDriver.Navigation navigation = chromeDriver.navigate();
		navigation.to("http://localhost:8080/index-demo");
		waitOneSecond();
		navigation.to("http://localhost:8080/openIPhome6s");
		waitOneSecond();
		navigation.back();
		waitOneSecond();
		navigation.forward();
		waitOneSecond();
		navigation.refresh();
		waitOneSecond();
		navigation.back();
		waitOneSecond();

		WebElement motoZ = chromeDriver.findElement(By.linkText("在新窗口打开moto Z页面"));
		motoZ.click();
		waitOneSecond();
		String[] windows = new String[chromeDriver.getWindowHandles().size()];
		chromeDriver.getWindowHandles().toArray(windows);
		chromeDriver.switchTo().window(windows[0]);
		waitOneSecond();
		chromeDriver.close();
		chromeDriver.switchTo().window(windows[1]);
		waitOneSecond();

		JS对话框
		chromeDriver.findElement(By.id("my-button2")).click();
		Alert alert = chromeDriver.switchTo().alert();
		System.out.println("Alert对话框:" + alert.getText());
		alert.accept();
		waitOneSecond();

	}

	public  static  void waitOneSecond() {
		try {
			Thread.sleep(1000);
		} catch (InterruptedException e) {
			e.printStackTrace();
		}
	}

	@AfterClass
	public void clear() throws InterruptedException {
		sleep(5000);
		chromeDriver.quit();
		System.out.println("After class clear()");
	}

}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值