junit自动化测试

selenium
junit
xpath

Java Excel→POI

エビデンス

package co.jp.sbi.bits.wcs.selenium.pagecase.hj;

import static org.junit.Assert.*;

import java.util.concurrent.TimeUnit;

import org.junit.After;
import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Test;
import org.openqa.selenium.By;
import org.openqa.selenium.Keys;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.interactions.Actions;
import org.openqa.selenium.remote.RemoteWebDriver;
import org.openqa.selenium.support.PageFactory;
import org.openqa.selenium.support.ui.ExpectedCondition;
import org.openqa.selenium.support.ui.ExpectedConditions;
import org.openqa.selenium.support.ui.Select;
import org.openqa.selenium.support.ui.WebDriverWait;

import co.jp.sbi.bits.wcs.selenium.pageob.hj.TestMenuPageBase;
import co.jp.sbi.bits.wcs.selenium.pageob.hj.TestMenuPageKaburui;
import co.jp.sbi.bits.wcs.selenium.pageob.hj.TestMenuTopPage;

public class WebDriverTest {
private WebDriver driver;

@BeforeClass
public static void Setup() {
System.setProperty("webdriver.chrome.driver", "./driver/chromedriver.exe");
}

@Before
public void testBefore() {
driver = new ChromeDriver();
driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);
}

@After
public void testAfter() {
driver.quit();
}

@Test
public void test1() {
// ページを開く
driver.get("http://www.htmlhifive.com/conts/web/view/Main/WebHome");

// 「ガイド」タブの上にマウスオーバーする
WebElement elGuide = driver.findElement(By.cssSelector(".guide>.tab>span"));
Actions action = new Actions(driver);
action.moveToElement(elGuide).perform();

// バルーンが表示されるまで待機する
final WebElement elBalloon = driver.findElement(By.cssSelector(".guide>.balloon"));
WebDriverWait wait = new WebDriverWait(driver, 10);
wait.until(new ExpectedCondition<Boolean>() {
public Boolean apply(WebDriver driver) {
return elBalloon.isDisplayed();
}
});

// 表示されたバルーンの「チュートリアル」をクリックする
WebElement elTutorial = driver.findElement(By.className("tutorial"));
if (((RemoteWebDriver) driver).getCapabilities().getBrowserName().toLowerCase().equals("internet explorer")) {
// IEでのテスト時はマウスカーソルがブラウザ上にないとバルーンが表示されない
// IEではsendKeysでEnterしないとチュートリアルのページが表示されない
elTutorial.sendKeys(Keys.ENTER);
} else {
elTutorial.click();
}

// チュートリアルのページが表示されていることを確認する
wait = new WebDriverWait(driver, 10);
WebElement elTitle = wait.until(ExpectedConditions.visibilityOfElementLocated(By.id("document-title")));
assertEquals("チュートリアルページが表示されていること。", elTitle.getText(), "チュートリアル");
}

@Test
public void fllowRecordingTest() throws Exception {
driver.get("http://localhost:8080/masso/test.do");
driver.findElement(By.linkText("?Local仮シングルサインオン")).click();
driver.findElement(By.name("user_name")).clear();
driver.findElement(By.name("user_name")).sendKeys("410010154");
driver.findElement(By.name("password")).clear();
driver.findElement(By.name("password")).sendKeys("410010154");
driver.findElement(By.id("ui-id-7")).click();
new Select(driver.findElement(By.xpath("(.//*[normalize-space(text()) and normalize-space(.)=‘株るい管理‘])[1]/following::select[1]"))).selectByVisibleText("TEST");
driver.findElement(By.xpath("(.//*[normalize-space(text()) and normalize-space(.)=‘株るい管理‘])[1]/following::option[25]")).click();
driver.findElement(By.xpath("(.//*[normalize-space(text()) and normalize-space(.)=‘multiget‘])[1]/following::input[11]")).click();
driver.findElement(By.name("Param6")).click();
driver.findElement(By.name("Param6")).clear();
driver.findElement(By.name("Param6")).sendKeys("123");
driver.findElement(By.id("path")).click();
new Select(driver.findElement(By.id("path"))).selectByVisibleText("保有一覧画面");
driver.findElement(By.id("path")).click();
driver.findElement(By.xpath("(.//*[normalize-space(text()) and normalize-space(.)=‘選択画面:‘])[1]/following::input[1]")).click();
}

@Test
public void pageObjectTest() throws Exception {

driver.manage().window().maximize();
driver.get("http://localhost:8080/masso/test.do");

// テストトップメニューページオブジェクト
TestMenuTopPage testMenuTopPage = PageFactory.initElements(driver, TestMenuTopPage.class);
testMenuTopPage.getTmpSignOnLink().click();

// テストメニュー
TestMenuPageBase testMenuPageBase = PageFactory.initElements(driver, TestMenuPageBase.class);
// 接続端末プールダウンリスト
WebElement pullDownList = testMenuPageBase.getAccessType();
Select select = new Select(pullDownList);
select.selectByVisibleText("スマホ(株アプリ)");
// ユーザーネーム
testMenuPageBase.getUserName().sendKeys("410010154");
// パスワード
testMenuPageBase.getPassword().sendKeys("410010154");

// テストメニュー:株るい管理
TestMenuPageKaburui testMenuPageKaburui = PageFactory.initElements(driver, TestMenuPageKaburui.class);
testMenuPageKaburui.getProductList().getText();
System.out.println(testMenuPageKaburui.getProductList().getText());
}
}

原文地址:https://www.cnblogs.com/guojia314/p/9916395.html

时间: 2024-11-13 04:35:25

junit自动化测试的相关文章

ant整合junit自动化测试

一. 使用Junit进行测试 1. Java业务代码: public class HelloWorld { // 测试返回"world" public String hello() { return "world"; } // 测试返回"hello" public String world() { return "hello"; } // 测试为空 public String nil() { return null; } //

Selenium终极自动化测试环境搭建(一) Selenium+Eclipse+Junit+TestNG

Selenium终极自动化测试环境搭建(一)Selenium+Eclipse+Junit+TestNG 第一步 安装JDK JDk1.7. 下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html 一路猛击‘下一步’,OK.安装完成后配置环境变量: JAVA_HOME = E:\Java\Java\jdk1.7.0_15 PATH = %JAVA_HOME%\bin CLASS

android jUnit test 进行自动化测试

一. 被test的工程: 新建一个android工程:D_session:它有一个activity:D_sessionActivity:package名:com.mysession 二.测试工程: 新建一个测试工程:D_sessionTest, 类型是android test project; 1. menifest文件: <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android=

junit搭建自动化测试框架(一)

这里主要使用Junit搭建一个分层的自动化测试框架.这就是一个有业务逻辑的单元测试的思想.灵活性很大,对测试人员的代码能力要求较高. 以登录QQ邮箱为例,数据源使用了集合接口Map.借鉴了MVC的思想,也分为三层处理: 单元测试层testcase----->单元测试的业务逻辑层business----->页面元素定位层page 当然,这只是一个框架的雏形,大家可以根据自己项目的需要做改善. step1:创建工程 step2:准备工具类:打印日志Log.java 相应的日志配置文档log4j.x

Web自动化测试Selenium+Eclipse+Junit+TestNG+Python

Selenium+Eclipse+Junit+TestNG+Python 第三步 下载Selenium IDE.SeleniumRC.IEDriverServer.SeleniumClient Drivers Selenium官网下载地址:http://www.seleniumhq.org/download/ 1.  Selenium IDE:selenium-ide-2.2.0.xpi 用来在Firefox上录制脚本. 2.  Selenium RC:selenium-server-stand

Selenium自动化测试环境搭建Eclipse+Selenium+Junit+TestNG

1.安装JDK JDK1.7 下载路径:http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html 一路猛击‘下一步’,OK.安装完成后配置环境变量: JAVA_HOME = E:\Java\Java\jdk1.7.0_15 PATH = %JAVA_HOME%\bin CLASSPATH = .;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.j

通过junit/TestNG+java 实现自动化测试

第一步 安装JDK JDk1.7. 下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html 一路猛击'下一步',OK.安装完成后配置环境变量: JAVA_HOME = E:\Java\Java\jdk1.7.0_15 PATH = %JAVA_HOME%\bin CLASSPATH = .;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tool

Android 自动化测试框架

Android常用的自动化测试工具框架: Monkey,MonkeyRunner,UIAutomator,Robotium,Appium,Monkey Talk 但是这些工具框架都有什么关系呢,先通过一张图来了解一下吧.(图是某博客上借过来的) 是不是一脸懵逼,不知道这是什么鬼.下面详细了解一下. 一.Monkey 是Android SDK自带的测试工具,是一个命令行工具,可以运行在模拟器中或者实际设备中,它向系统发送伪随机的用户事件流(如按键输入,触摸屏输入,手势输入等),实现对正在开发的应用

自动化测试关键字驱动的原理及实现

 自动化测试现在越来越趋向于平台化,平台化是致力于协同工作,提高效率,让更多人参与自动化的一个过程,在我看来,平台化中,有一个更为关键点,就是关键字驱动,只有把自动化测试的代码转换成为大家更容易懂的自然语言,才能让更多不懂代码的人加入进去,才能达到平台化的目的.今天我们就来谈谈自动化测试中关键字驱动的原理及实现方式. 先来看一个例子,老师对着同学们说了一句:去把桌子从A地点搬到B地点.当老师发出这个命令后,发现没有人动,因为没有明确的对象,不知道这个命令是对谁发出的,于是老师再说了一句:张三,去