自动化测试笔记:1、selenium2+junit4学习之百度账号登录

1、构建MAVEN JAVA工程

2、修改pom.xml,添加依赖包

 1 <dependency>
 2     <groupId>junit</groupId>
 3     <artifactId>junit</artifactId>
 4     <version>4.8.1</version>
 5 </dependency>
 6 <dependency>
 7     <groupId>org.seleniumhq.selenium</groupId>
 8     <artifactId>selenium-java</artifactId>
 9     <version>2.16.1</version>
10 </dependency>

3、新建JunitCase

package com.sixstones.selenium;

import static org.junit.Assert.*;

import org.junit.After;
import org.junit.Before;
import org.junit.Test;

public class BaiduLoginTest {

    @Before
    public void setUp() throws Exception {
    }

    @After
    public void tearDown() throws Exception {
    }

    @Test
    public void test() {
        fail("Not yet implemented");
    }

}

4、用例前置步骤

@Before
	public void setUp() throws Exception {
      //Constants.chromedriver = "E:/crm/chromedriver_win32/chromedriver.exe"    System.setProperty("webdriver.chrome.driver", Constants.chromedriver);   driver = new ChromeDriver(); }

5、用例步骤

@Test
	public void test() {
		driver.get("http://www.baidu.com");
		if (isExistElement(driver, By.linkText("登录"))) {
			System.out.println("未登錄");
			WebElement toLoginbtn = driver.findElement(By.linkText("登录"));
			toLoginbtn.click();
			WebDriverWait wait = (new WebDriverWait(driver, 5));
			wait.until(new ExpectedCondition<Boolean>() {
				public Boolean apply(WebDriver d) {
					boolean flag = driver.findElement(By.xpath("//iframe")).isDisplayed();
					return flag;
				}
			});
			driver.findElement(By.id("TANGRAM__PSP_8__userName")).sendKeys(userName);
			driver.findElement(By.id("TANGRAM__PSP_8__password")).sendKeys(password);
			driver.findElement(By.id("TANGRAM__PSP_8__submit")).click();

			driver.manage().timeouts().implicitlyWait(5, TimeUnit.SECONDS);

			Assert.assertTrue(isExistElement(driver, By.linkText("登录成功显示用户名")));

		} else {
			fail("用戶已登錄!");
		}
	}

6、Teardown

@After
	public void tearDown() throws Exception {
		driver.close();
	}

7、私有函数,判断元素是否存在

private boolean isExistElement(WebDriver driver, By by) {
		boolean flag = true;
		try {
			List<WebElement> elements = driver.findElements(by);
			if ((null == elements) || (elements.size() == 0)) {
				flag = false;
			}
		} catch (Exception e) {
			System.err.println(e.getMessage());
			flag = false;
		}
		return flag;
	}

  

posted @ 2016-03-10 16:17  项磊磊  阅读(1039)  评论(0)    收藏  举报