selenium demo(三)

(三)删除

 1 package test;
 2
 3
 4 import org.openqa.selenium.*;
 5 import org.openqa.selenium.chrome.ChromeDriver;
 6 import org.openqa.selenium.interactions.Actions;
 7 import org.testng.annotations.Test;
 8 import java.util.concurrent.TimeUnit;
 9
10
11 public class AutoTestThree {
12     @Test
13         public void test() throws InterruptedException{
14         System.setProperty("webdriver.chrome.driver","D:/selenium-drivers/chromedriver.exe");
15         WebDriver webDriver = new ChromeDriver();
16         webDriver.manage().window().maximize();
17         webDriver.get("http://xxx.xxx.xxx.xxx:xxxx/xxx");
18         webDriver.manage().timeouts().implicitlyWait(2, TimeUnit.SECONDS);
19         //登录
20         webDriver.findElement(By.id("loginUser.id")).sendKeys("xxxxxx");
21         webDriver.findElement(By.id("loginUser.pass")).sendKeys("xxxxxx");
22         webDriver.findElement(By.className("submitLink")).click();
23         webDriver.findElement(By.xpath("//*[@id=‘guard-base‘]/a")).click();
24         webDriver.findElement(By.xpath("//*[@id=‘guard-base‘]/ul/li[1]/a")).click();
25         webDriver.switchTo().frame("main-frame");
26         //请输入职业打假人姓名...
27         webDriver.findElement(By.xpath("//*[@id=‘searchObj‘]")).sendKeys("test");
28         Thread.sleep(2000);
29         //选择行业
30         webDriver.findElement(By.xpath("//*[@id=‘industrySpan-myselect-tree‘]")).click();
31         WebElement el1 = webDriver.findElement(By.xpath("//*[@id=‘industrySpan-myselect-tree‘]/div/ul/li[1]/div/span[1]"));
32         WebElement el2 = webDriver.findElement(By.xpath("//*[@id=‘industrySpan-myselect-tree‘]/div/ul/li[1]/ul/li[1]/div/span[2]"));
33         WebElement el3 = webDriver.findElement(By.xpath("//*[@id=‘industrySpan-myselect-tree‘]/div/ul/li[1]/ul/li[1]/ul/li[1]/div/span[3]"));
34         WebElement el4 = webDriver.findElement(By.xpath("//*[@id=‘industrySpan-myselect-tree‘]/div/ul/li[1]/ul/li[1]/ul/li[1]/ul/li[1]/div/span[4]"));
35         Actions action = new Actions(webDriver);
36
37         action.moveToElement(el1).click().perform();
38         action.moveToElement(el2).click().perform();
39         action.moveToElement(el3).click().perform();
40         action.moveToElement(el4).click().perform();
41
42
43         Thread.sleep(1000);
44
45         webDriver.findElement(By.cssSelector(".search")).findElement(By.cssSelector(".search_icon")).click();
46         Thread.sleep(1500);
47         webDriver.findElement(By.xpath("//button[@class=‘search‘and text()=‘重置‘]")).click();
48
49
50
51         Thread.sleep(1000);
52
53         webDriver.quit();
54     }
55 }
时间: 2024-10-05 21:52:58

selenium demo(三)的相关文章

Behave + Selenium(Python) 三

来自T先生 通过之前的2篇文章,大家都了解了如果利用behave和selenium打开网页和进行基本的操作,但是这些对于项目来说,却是往往不够的. 如果对junit或者TestNG熟悉的人都知道有@Before Class等这些在脚本之前完成的任务:如用户登入,以及当浏览器操作完,关闭浏览器等一些操作.那么问题来了,在behave里面是怎么控制的呢? 在behave中有个environment.py文件,environment.py文件可以很好的解决这个问题,除了解决这个问题,还可以用来解决同一

自定义View之大风车系列demo(三)

大风车系列版本1.0到版本3.0的体验有很大的不足:风车旋转的弧度都是手动写死的,不会根据手指移动的快慢而快慢.版本4.0将解决这个问题,思路如下: 1)以风车图片的中心为坐标原点简历一个直角坐标系,捕获手指按下事件也即是MotionEvent.ACTION_DOWN事件,记录此时手指的坐标点与直角坐标系x正坐标轴的夹角 2)获取手指移动的时候当前手指坐标点与直角坐标系x正轴的夹角. 3)计算步骤1和步骤2的两个夹角的差,就是手指此时移动的弧度.而不像版本3.0之前的那样写死了 具体代码设计如下

【转】selenium webdriver三种等待方法

原文:https://www.cnblogs.com/lgh344902118/p/6015593.html webdriver三种等待方法 1.使用WebDriverWait from selenium import webdriver from selenium.webdriver.common.by import By from selenium.webdriver.support.ui import WebDriverWait # available since 2.4.0 from s

Selenium中三种等待的使用方式

在UI自动化测试中,必然会遇到环境不稳定,网络慢的情况,这时如果你不做任何处理的话,代码会由于没有找到元素,而报错.这时我们就要用到wait(等待),而在Selenium中,我们可以用到一共三种等待,每一种等待都有自己的优点或缺点,如何选择最优的等待方式呢.来看下这三种等待方式吧.选择合理的等待方式,可以规避网络延迟,代码不稳定问题 time(固定等待) 在开发自动化框架过程中,最忌讳使用Python自带模块的time的sleep方法进行等待,虽然可以自定义等待时间,但当网络条件良好时,依旧按照

Python + Selenium(三)网页元素定位(二)id 定位

了解了开发者工具和 HTML 结构 后,接下来,就来看看在 Python + Selenium 中如何查找元素了. 查找元素,是 WebDriver 中的核心部分之一.WebDriver提供了八种定位方法,方法如下: 定位方式 方法 说明 id find_element_by_id() 使用 id 属性定位 name find_element_by_name() 使用 name 属性定位 class_name find_element_by_class_name() 使用 class 属性定位

selenium的三种等待方式

一.强制等待: time.sleep(3)---->强制等待3秒 二.隐式等待: driver.implicitly_wait(20) 含义:设置的这个20秒表示最大等待时长,它等待到什么情况结束呢?--->它就相当于我们在浏览器中,加载一个页面,看到页面不在转圈圈,全部加载完成之后,才算等待结束. 全部加载完成在浏览器其实包含以下内容: 1.页面的html从服务器返回. 2.页面的所有静态资源,js,css,img,广告,全部从服务器获取,在加载到页面中. 隐式等待的弊端: 一般我们在写程序

【python爬虫】selenium的三种等待

一. 强制等待 第一种也是最简单粗暴的一种办法就是强制等待sleep(xx),强制让闪电侠等xx时间,不管凹凸曼能不能跟上速度,还是已经提前到了,都必须等xx时间. 1 from selenium import webdriver 2 from time import sleep 3 driver = webdriver.Firefox() 4 driver.get('https://huilansame.github.io') 5 sleep(3) # 强制等待3秒再执行下一步 6 print

selenium demo(二)

(二)查询 1 package test; 2 3 4 import org.openqa.selenium.*; 5 import org.openqa.selenium.chrome.ChromeDriver; 6 import org.openqa.selenium.interactions.Actions; 7 import org.openqa.selenium.support.ui.ExpectedCondition; 8 import org.openqa.selenium.sup

selenium demo(四)

Robot类处理方法 1 package test; 2 3 import java.awt.*; 4 import java.awt.event.KeyEvent; 5 import java.io.IOException; 6 7 8 public class AutoTestFour { 9 10 11 public static void pressKeyWithShift(Robot robot,int keyvalue){ 12 robot.keyPress(KeyEvent.VK_