【WebDriver】selenium自动化测试入门到进阶 一

很多没有语言基础小伙伴学了一点selenium,会写“打开浏览器->输入搜索内容->点击百度一下”这种简单用例后就不知道怎么进阶了,下面以一个实际的例子介绍selenium怎么一步步进阶

环境搭建

安装eclipse或其他IDE
安装JDK,并配置系统变量(不会的百度)
创建Java项目,导入selenium的jar包

两个最基本用例

为了保护公司隐私,已改动url,所以该例子不能运行,参考代码即可

1、导入客户用例

package com.kdzwy.cases1;

import java.text.SimpleDateFormat;
import java.util.concurrent.TimeUnit;

import org.openqa.selenium.By;
import org.openqa.selenium.JavascriptExecutor;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.interactions.Actions;
import org.testng.Assert;
/*
 *包名:com.kdzwy.cases
 *作者:Adien_cui
 *时间:2017-5-17  下午5:06:42
 *描述:导入客户用例
 **/
public class ImportCustomerCase {
    public static void main(String[] args) throws Exception{
        //设置chrome驱动器的地址
        System.setProperty("webdriver.chrome.driver", "resource/chromedriver.exe");
        ChromeDriver driver = new ChromeDriver();
        //识别对象时的超时时间。过了这个时间如果对象还没找到的话就会抛出NoSuchElement 异常
        driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
        //浏览器窗口最大化
        driver.manage().window().maximize();
        //输入访问地址
        driver.get("http://guanjia/zwy/entrance.html");
        //通过id定位用户名输入框
        WebElement usernameEle =  driver.findElement(By.id("log-account"));
        //调用WebElement的clear()方法,清空用户名输入框的数据
        usernameEle.clear();
        //调用WebElement的sendKeys()方法,输入用户名
        usernameEle.sendKeys("13152640586");
        //通过css定位密码输入框
        driver.findElement(By.cssSelector("#log-pwd")).sendKeys("123456@");
        driver.findElement(By.id("sub-btn")).click();

        //线程停1s,等待页面加载
        Thread.sleep(1000);
        //设置导入客户名称为:AutoTest加上当前时间,从而使每次导入的客户名不相同
        SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmm");
        String currentTime = sdf.format(new java.util.Date());
        String customerName = "AutoTest"+currentTime;
        //通过xpath定位代账服务标签
        driver.findElement(By.xpath("//span[text()='代账服务']")).click();
        //点击下拉选项
        driver.findElement(By.xpath("//*[@id='control-con']//div[@class='el-dropdown']")).click();
        Thread.sleep(1500);
        //获得“导入客户”元素,该元素直接点击会报“element not visible”,所以用js来执行点击事件
        WebElement importBtn = driver.findElement(By.xpath("//ul[@class='el-dropdown-menu']//li[text()='导入客户']"));
        JavascriptExecutor js = (JavascriptExecutor)driver;
        js.executeScript("arguments[0].click()", importBtn);

        //获取输入用户名文本框,并输入客户名
        WebElement cusName = driver.findElementByXPath("(//*[@id='con-wraper']//form//input)[1]");
        cusName.sendKeys(customerName);
        //点击确定按钮
        driver.findElement(By.xpath("//*[@id='con-wraper']/div[14]/div/div[3]/span/button[2]")).click();
        //获取新增客户成功的提示语
        String successTip = driver.findElement(By.xpath("//div[@class='el-message__group']//p[text()='新增客户成功']")).getText();
        //验证提示语是否正确
        Assert.assertEquals(successTip, "新增客户成功");
        System.out.println("导入的客户名:"+customerName);
        Thread.sleep(1000);
        //关闭浏览器
        driver.quit()
  • 4
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值