selenium自动化测试04

已经写到了第四篇了,也是selenium自动化的最后一篇了。当然了,自动化不止这些,还有很多很多的内容,学无止境。

前情回顾

一、搭建自动化测试环境

        项目>>浏览器+浏览器驱动+selenium(语言)

        PHP的web项目>>Firefox+geckodriver+selenium-Java(Java+maven+testng)

二、测试代码

WebDriver driver = new FirefoxDriver();打开浏览器,获取驱动driver对象

driver.manage().window().maximize();窗口最大化

driver.manage().timeouts().implicitlyWait(15, TimeUnit.SECONDS);隐式等待15s,建议不要太长

driver.get("网址");访问对应页面,自带阻塞效果

driver.findElement(定位方式)定位元素,只能定位符合规则的第一个,必须定位到,否则报错

driver.findElements(定位方式),定位所有符合规则的元素,可以定位0-n个,经常判断定位是不是0判断元素是否存在

By.id\\name\className\xpath\linkText\tagName\cssSelector\partialLinkText\xpath和cssSelector(xpath效率低,元素支持率高;cssSelector效率高,元素支持率低)

click点击

cleaar 清空输入框

Actions类,selenium中各种操作

Select类,操作下拉框:selectByIndex选择;deselectByIndex;不选

driver.switchTo()
.alert().accept();确定
.dismiss();取消
.sendKeys("");输入
.window("新窗口的handle");
.frame(索引);
.frame("frame元素的id或name值");
.frame(frame元素);
.defaultContent();
.parentFrame();

driver.getCurrentUrl();获取网址

driver.getTitle(); 获取标题

driver.getPageSource();获取页面源码

driver.close();关闭当前的窗口,如果是最后一个,会同时关闭浏览器

driver.quit();   关闭驱动,关闭所有窗口,退出浏览器 


搭建环境

testng--自动化测试>>功能自动化

testng实现自动化测试>>用于编写和执行自动化测试用例。主方法中的代码,一条崩溃,都不执行,但是用例希望一条错误,其它不受影响。控制用例的执行顺序,自动化测试报告生成,..... 

搭建testng的编写和运行环境:在项目中导入testng的jar文件,主要用于编写脚本

在pom.xml里面添加依赖,然后保存

        <!--testng依赖 -->
        <dependency>
            <groupId>org.testng</groupId>
            <artifactId>testng</artifactId>
            <version>6.8.8</version>
            <scope>test</scope>
        </dependency>
        <!--/testng依赖 -->

        <!--feed4testng依赖 -->
        <dependency>
            <groupId>org.databene</groupId>
            <artifactId>feed4testng</artifactId>
            <version>0.6.2</version>
            <scope>test</scope>
        </dependency>

        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-log4j12</artifactId>
            <version>1.7.2</version>
            <scope>test</scope>
        </dependency>
        <!--/feed4testng依赖 -->

 然后右边库会出现几个文件

 testng插件呢我们idea自带,不用下载


编写自动化测试用例 

编写的是执行测试用例的步骤,一般编写用例时,不相关的用例不会写到一起

一、一个class中写入1条用例,执行1遍,执行写死的数据

创包autotest04,创建class类 Testng1.class

在类里面声明一个变量,让方法可以共用

public class Testng1 {
	// 声明一个变量在类中 作用于类中所有方法  希望3个方法共用一个driver
	WebDriver driver;

使用@Test

    /*
	 * 一个使用@Test修饰的普通方法就是一条测试用例
	 * 用例中没有报错,用例通过
	 * 用例中报错崩溃,用例失败
	 */
	@Test

创建方法a

public void a() {
		//用例的执行步骤 调用driver操作浏览器执行测试
		
		//用例的结果判断--1.用例通过,不能报错; 2.用例失败,必须崩溃---断言
	}

创建两个方法

    /*
	 * 为了保证无论用例执行结果如何, 是否报错
  • 2
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Meng XY

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值