自动化测试笔记三:Actions方法中的一些常用情况

本文详细介绍了自动化测试中Actions方法的常用操作,包括鼠标悬停、表格定位、css与xpath的选择以及它们的优缺点。此外,讨论了close与quit在测试中的区别,以及如何使用JavaScript进行页面元素定位。同时,文章还涵盖了TestNG的执行顺序、如何通过XML配置文件控制测试执行,以及如何实现测试的忽略、优先级和超时设置。最后,讲解了TestNG的数据驱动功能,通过@DataProvider实现参数化测试。
摘要由CSDN通过智能技术生成

自动化测试笔记三:Actions方法中的一些常用情况

一. Actions方法中的一些常用情况

  1. 鼠标悬停
Actions build =new Actions(driver);
build.moveToElement(driver.findElement(By.xpath("/html/body/div[1]/div[1]/div[3]/div/a"))).perform();
  1. 表格定位
   WebElement sb = driver.findElement(By.xpath("/html/body/table/tbody/tr[3]/td[1]"));
   System.out.println(sb.getText());
  1. css和xpath的区别
    css比较快,但有些浏览器不支持,语法复杂
    xpath语法简单,但效率慢
  2. close和quit的区别:
driver.close();
driver.quit();

区别:
close:关闭浏览器,但对象还在
quit:直接杀进程
可以先用close关闭浏览器,再用quit杀掉进程

  1. js定位
    第一中方法:直接为日期控件强行赋值
JavascriptExecutor js = (JavascriptExecutor) driver; 
js.executeScript("document.getElementById('fromDate').setAttribute('value','2013-06-21');"); 
// js.executeScript("document.getElementById('fromDate').value='2013-06-21';"); 

或者使用js把界面中的不可操作用emoveAttribute去掉,然后用常规的findelement方法定位:

JavascriptExecutor js = (JavascriptExecutor) driver;
js.executeScript("document.getElementById('input2').removeAttribute('disabled');");
driver.findElement(By.id("input2")).clear();
driver.findElement(By.id("input2")).sendKeys("现在可用了");

截图问题后续再看
D:\BaiduNetdiskDownload\20180915班\win\20181020\03

  1. testNG
package demo_20200825;

import org.testng.annotations.Test;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.AfterMethod;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.AfterClass;
import org.testng.annotations.BeforeTest;
import org.testng.annotations.AfterTest;
import org.testng.annotations.BeforeSuite;
import org.testng.annotations.AfterSuite;

public class testng1 {
  @Test
  //实际写的测试用例
  public void f() {
	  System.out.println("test1");
  }
  @Test
  //实际写的测试用例
  public void f2() {
	  System.out.println("test2");
  }
  @BeforeMethod
  public void beforeMethod() {
	  System.out.println("beforeMethod");
  }

  @AfterMethod
  public void afterMethod() {
	  System.out.println("afterMethod");
}

  @BeforeClass
  public void beforeClass() {
	  System.out.println("beforeClass");
}

  @AfterClass
  public void afterClass() {
	  System.out.println("afterClass");
 }

  @BeforeTest
  public void beforeTest() {
	  System.out.println("beforeTest");
}

  @AfterTest
  public void afterTest() {
	  System.out.println("afterTest");
}

  @BeforeSuite
  public void beforeSuite() {
	  System.out.println("beforeSuite");
}

  @AfterSuite
  public void afterSuite() {
	  System.out.println("afterSuite");
 }

}

执行顺序
beforeSuite
beforeTest
beforeClass
beforeMethod
test1
afterMethod
beforeMethod
test2
afterMethod
afterClass
afterTest
PASSED: f
PASSED: f2

运行testng,需要使用xml文件
新建一个xml文件:
在包上右键->new->other->xml->xml file
新建成功
在这里插入图片描述

在testNG官网testng.上复制xml的代码段

<!DOCTYPE suite SYSTEM "https://testng.org/testng-1.0.dtd" >
  
<suite name
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值