selenium测试脚本

上一篇 / 下一篇  2016-12-16 11:48:28 / 个人分类:自动化测试-selenium

package test;

 

import java.util.regex.Pattern;

import java.util.concurrent.TimeUnit;

 

import org.junit.*;

 

import static org.junit.Assert.*;

import static org.hamcrest.CoreMatchers.*;

 

import org.openqa.selenium.*;

import org.openqa.selenium.firefox.FirefoxDriver;

import org.openqa.selenium.support.ui.Select;

 

public class hello {

  private WebDriver driver;

  private String baseUrl;

  private String linkurl="http://www.hc-fund.com/portal/admin/user/page";

  private boolean acceptNextAlert = true;

  private StringBuffer verificationErrors = new StringBuffer();

 

  @Before

  public void setUp() throws Exception {

    driver = new FirefoxDriver();

    baseUrl = "http://www.hc-fund.com/portal/login";

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

  }

  

  @Test

  public void testCase1() throws Exception {

    driver.get(baseUrl + "/portal/login");

    driver.findElement(By.id("username")).clear();

    driver.findElement(By.id("username")).sendKeys("xx");//1 case;

    driver.findElement(By.id("password")).clear();

    driver.findElement(By.id("password")).sendKeys("xx");

    driver.findElement(By.id("submit_btn")).click();

    driver.get(linkurl);

    driver.findElement(By.linkText("admin")).click();

    //Thread.sleep(1000);

    driver.findElement(By.linkText("退出")).click();

    driver.get(baseUrl + "/portal/login");

    driver.findElement(By.id("submit_btn")).click();//2case;

    Thread.sleep(1000);

    try {

      assertEquals("登录名和密码不能为空", driver.findElement(By.cssSelector("div.alert-error")).getText());

    } catch (Error e) {

      verificationErrors.append(e.toString());

    }

    driver.get(baseUrl + "/portal/login");

    driver.findElement(By.id("username")).clear();

    driver.findElement(By.id("username")).sendKeys("'and  '1 or 1 = 1");//3 case;

    driver.findElement(By.id("password")).clear();

    driver.findElement(By.id("password")).sendKeys("");

    driver.findElement(By.id("submit_btn")).click();

    try {

      assertEquals("登录名和密码不能为空", driver.findElement(By.cssSelector("div.alert-error")).getText());

    } catch (Error e) {

      verificationErrors.append(e.toString());

    }

    driver.get(baseUrl + "/portal/login");

    driver.findElement(By.id("username")).clear();

    driver.findElement(By.id("username")).sendKeys("1111111111111111111111111111111111111");//4 case;

    driver.findElement(By.id("password")).clear();

    driver.findElement(By.id("password")).sendKeys("1111111111111111111111111111111111111");

    driver.findElement(By.id("submit_btn")).click();

    try {

      assertEquals("登录失败,请重试.", driver.findElement(By.cssSelector("div.alert-error")).getText());

    } catch (Error e) {

      verificationErrors.append(e.toString());

    }

    driver.get(baseUrl + "/portal/login");

    driver.findElement(By.id("username")).clear();

    driver.findElement(By.id("username")).sendKeys("'admin or '1 = 1");//5 case;

    driver.findElement(By.id("password")).clear();

    driver.findElement(By.id("password")).sendKeys("'admin or '1 = 1");

    driver.findElement(By.id("submit_btn")).click();

    try {

      assertEquals("登录失败,请重试.", driver.findElement(By.cssSelector("div.alert-error")).getText());

    } catch (Error e) {

      verificationErrors.append(e.toString());

    }

    driver.get(baseUrl + "/portal/login");

    driver.findElement(By.id("username")).clear();

    driver.findElement(By.id("username")).sendKeys("yes"); //6 case;

    driver.findElement(By.id("password")).clear();

    driver.findElement(By.id("password")).sendKeys("yes");

    driver.findElement(By.id("submit_btn")).click();

    try {

      assertEquals("登录失败,请重试.", driver.findElement(By.cssSelector("div.alert-error")).getText());

    } catch (Error e) {

      verificationErrors.append(e.toString());

    }

    driver.get(baseUrl + "/portal/login");

    driver.findElement(By.id("username")).clear();

    driver.findElement(By.id("username")).sendKeys("数学"); //7 case;

    driver.findElement(By.id("password")).clear();

    driver.findElement(By.id("password")).sendKeys("数学");

    driver.findElement(By.id("submit_btn")).click();

    try {

      assertEquals("登录失败,请重试.", driver.findElement(By.cssSelector("div.alert-error")).getText());

    } catch (Error e) {

      verificationErrors.append(e.toString());

    }

  }

 

  @After

  public void tearDown() throws Exception {

    driver.quit();

    String verificationErrorString = verificationErrors.toString();

    if (!"".equals(verificationErrorString)) {

      fail(verificationErrorString);

    }

  }

 

  private boolean isElementPresent(By by) {

    try {

      driver.findElement(by);

      return true;

    } catch (NoSuchElementException e) {

      return false;

    }

  }

 

  private boolean isAlertPresent() {

    try {

      driver.switchTo().alert();

      return true;

    } catch (NoAlertPresentException e) {

      return false;

    }

  }

 

  private String closeAlertAndGetItsText() {

    try {

      Alert alert = driver.switchTo().alert();

      String alertText = alert.getText();

      if (acceptNextAlert) {

        alert.accept();

      } else {

        alert.dismiss();

      }

      return alertText;

    } finally {

      acceptNextAlert = true;

    }

  }

}


TAG:

 

评分:0

我来说两句

日历

« 2024-04-26  
 123456
78910111213
14151617181920
21222324252627
282930    

数据统计

  • 访问量: 5640
  • 日志数: 6
  • 建立时间: 2016-05-04
  • 更新时间: 2016-12-16

RSS订阅

Open Toolbar