junit自动化测试

Posted guojia314

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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());
}
}





























































































以上是关于junit自动化测试的主要内容,如果未能解决你的问题,请参考以下文章

Java应用XVIII在 Java 中使用JUnit5进行单元测试和自动化测试

junit自动化测试

如何使用 JUnit进行自动化测试

自动的自动化:EvoSuite 自动生成JUnit的测试用例

用java和junit编写app自动化测试用例

Selenium 中的 JUnit 注解