zoukankan      html  css  js  c++  java
  • Selenium ide及webDriver使用

    官方网站:http://seleniumhq.org/
    Selenium-IDE于firefox上脚本测试。并可以通过该插件生成对应Java webDriver适用的Junit测试代码。

    下面是根据Firefox上录制产生的Junit代码,部分找HTML的ELEMENT时候代码需要自己手动更改。
    View Code
     1 package com.example.tests;
     2 
     3 import java.util.concurrent.TimeUnit;
     4 import org.junit.*;
     5 import static org.junit.Assert.*;
     6 import org.openqa.selenium.*;
     7 import org.openqa.selenium.firefox.FirefoxDriver;
     8 import org.openqa.selenium.support.ui.Select;
     9 
    10 public class TestDemo {
    11     private WebDriver driver;
    12     private String baseUrl;
    13     private StringBuffer verificationErrors = new StringBuffer();
    14     @Before
    15     public void setUp() throws Exception {
    16 //        driver = new HtmlUnitDriver();
    17         driver = new FirefoxDriver();
    18         baseUrl = "http://localhost:8080/";
    19         driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);
    20     }
    21 
    22     @Test
    23     public void test() throws Exception {
    24         driver.get(baseUrl + "/pcloud-web/serve/login.do");
    25         driver.findElement(By.id("userId")).clear();
    26         driver.findElement(By.id("userId")).sendKeys("hello@163.com");
    27         driver.findElement(By.id("fullName")).clear();
    28         driver.findElement(By.id("fullName")).sendKeys("hello@163.com");
    29         driver.findElement(By.id("mobile")).clear();
    30         driver.findElement(By.id("mobile")).sendKeys("13932132121");
    31         driver.findElement(By.id("submit")).click();
    32         driver.findElement(By.id("phone")).clear();
    33         driver.findElement(By.id("phone")).sendKeys("13932132121");
    34         driver.findElement(By.id("phone-check")).click();
    35         driver.findElement(By.id("phone-check")).clear();
    36         driver.findElement(By.id("phone-check")).sendKeys("13932132121");
    37         new Select(driver.findElement(By.id("face-select"))).selectByVisibleText("10元");
    38         Thread.sleep(1000);
    39         //开始直接购买
    40         driver.findElement(By.id("direct-charge")).click();
    41         Thread.sleep(5000);
    42         for (String handle : driver.getWindowHandles()) {
    43             driver.switchTo().window(handle);
    44         }
    45         driver.findElement(By.xpath("(//a[contains(text(),'我的订单')])[2]")).click();
    46         Thread.sleep(1000);
    47         try {
    48             assertTrue(driver.findElement(By.cssSelector("td[class='status']")).getText().equals("成功"));
    49         } catch (Error e) {
    50             verificationErrors.append(e.toString());
    51         }
    52     }
    53 
    54     @After
    55     public void tearDown() throws Exception {
    56         driver.quit();
    57         String verificationErrorString = verificationErrors.toString();
    58         if (!"".equals(verificationErrorString)) {
    59             fail(verificationErrorString);
    60         }
    61     }
    62 
    63     private boolean isElementPresent(By by) {
    64         try {
    65             driver.findElement(by);
    66             return true;
    67         } catch (NoSuchElementException e) {
    68             return false;
    69         }
    70     }
    71 }
     
  • 相关阅读:
    4G DTU在城市景观照明中的应用解决方案
    物联网在物业管理和智慧楼宇中的应用解决方案
    4G工业路由器等物联网设备在食品安全检测中的应用
    NB-IoT网络在农业和畜牧业中的物联网智能灌溉应用案例
    串口服务器等应用于污水处理厂的自动监控和控制管理
    插卡式双卡4G工业路由器在数控机床远程控制中的应用
    4G工业路由器在水电站远程监控中的应用案例
    4G工业路由器在供水系统和道路交通远程检测中的应用案例
    HDU 6188 Duizi and Shunzi 贪心
    HDU 6185 Covering 矩阵快速幂
  • 原文地址:https://www.cnblogs.com/hzcxy/p/2824694.html
Copyright © 2011-2022 走看看