webdriver显式和隐式等待

implicitly_wait()  方法是隐式等待,用来设置超时,一般把implicitly_wait()方法调用在加载测试地址后,等待所测试的应用程序加载
WebDriverWait() 是显式等待,等待的时间是固定的

from selenium.webdriver.support import expected_conditions
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.common.by import By
from selenium import webdriver

driver=webdriver.Chrome()
driver.maximize_window()
driver.get(‘https://baidu.com‘)
driver.implicitly_wait(30)

#元素是否出现可点 ,参数是locator
xinwei=WebDriverWait(driver,5).until(expected_conditions.element_to_be_clickable((By.CSS_SELECTOR,‘.mnav‘)))
xinwei.click()

#验证相应位置元素的文本信息,返回值是布尔  俩参数locator  text
#以验证登录的错误信息为例
driver.find_element_by_xpath(".//*[@id=‘u1‘]/a[7]").click()
driver.find_element_by_id(‘TANGRAM__PSP_10__userName‘).send_keys(‘123‘)
driver.find_element_by_id(‘TANGRAM__PSP_10__submit‘).click()
bo=WebDriverWait(driver,5).until(expected_conditions.text_to_be_present_in_element((By.CSS_SELECTOR,‘#TANGRAM__PSP_10__error‘),U‘请您输入密码‘))
print(bo)# 打印结果:True

#元素是否可见,可见后操作  参数是locator
sou=WebDriverWait(driver,5).until(expected_conditions.visibility_of_element_located((By.CSS_SELECTOR,‘#kw‘)))
sou.send_keys(‘java‘)
driver.quit()

原文地址:https://www.cnblogs.com/shuzf/p/11246264.html

时间: 2024-10-09 16:45:44

webdriver显式和隐式等待的相关文章

模板显式、隐式实例化和(偏)特化、具体化的详细分析(转)

这么多叫法,其实就是三种. 1. 显示实例化 2. 隐式实例化 3. 特化(=具体化).偏特化 一.实例化 1.显示.隐式实例化 什么是实例化:一个通过使用具体值替换模板参数,从模板产生的普通类,函数或者成员函数的过程. 显示实例化:通过名字可见,就是清楚的表明你要实例化的类型 隐式实例化:通过编译器自己推测判断要实例化的类型. 比如一个模板: template<class T> //函数模板实现  void swap(T &a, T &b) {     T temp;    

模板显式、隐式实例化和(偏)特化、具体化的详细分析(转)

这么多叫法,其实就是三种.      1. 显示实例化      2. 隐式实例化      3. 特化(=具体化).偏特化 一.实例化 1.显示.隐式实例化       什么是实例化:一个通过使用具体值替换模板参数,从模板产生的普通类,函数或者成员函数的过程.      显示实例化:通过名字可见,就是清楚的表明你要实例化的类型      隐式实例化:通过编译器自己推测判断要实例化的类型.     比如一个模板: template<class T> //函数模板实现  void swap(T

Scala中的Implicit(隐式转换,隐式参数,隐式类)

文章来自:http://www.cnblogs.com/hark0623/p/4196452.html  转发请注明 代码如下: /** * 隐式转换 隐式参数 隐式类 */ //隐式转换 class Implicit(a: A) { def Test: Unit = { println("Implicit") } } class A { } object Implicit { //隐式转换 implicit def a2Implicit(a: A) = new Implicit(a)

selenium python 显式和隐式等待方法

1 # -*- coding:utf-8 -*- 2 from selenium import webdriver 3 from selenium.webdriver.common.action_chains import ActionChains 4 from selenium.webdriver.support.ui import WebDriverWait 5 6 import time 7 8 driver = webdriver.Firefox(executable_path='/Us

显式与隐式启动Activity

1 <?xml version="1.0" encoding="utf-8"?> 2 <manifest xmlns:android="http://schemas.android.com/apk/res/android" 3 package="com.example.metrox.l8"> 4 5 <application 6 android:allowBackup="true&quo

(转载)Android理解:显式和隐式Intent

Intent分两种:显式(Explicit intent)和隐式(Implicit intent). 一.显式(设置Component) 显式,即直接指定需要打开的activity对应的类. 以下多种方式都是一样的,实际上都是设置Component直接指定Activity类的显式Intent,由MainActivity跳转到SecondActivity: 1.构造方法传入Component,最常用的方式 Intent intent = new Intent(this, SecondActivit

数据类型回顾——数据类型转换(显式和隐式)—JS学习笔记2015-6-3(第47天)

对于JS这种语言来说,因为它是一种动态类型语言,变量是没有类型的,可以随时赋予任意值. 但是,数据本身和各种运算是有类型的,因此运算时变量需要转换类型. 大多数情况下,这种数据类型转换是自动的,但是有时也需要手动强制转换. 首先看下强制类型转换(显式) 之前提到的Namber.parseInt.parseFloat 都是强制类型转换: 这里在看阮一峰博客(http://javascript.ruanyifeng.com/grammar/conversion.html#toc1) Number方法

(三)使用Intent在活动中穿梭:显式和隐式Intent

一.显式Intent @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main_layout); Button btn=(Button)findViewById(R.id.button1); btn.setOnClickListener(new View.OnClickListener() { @Ov

简单的interface显式和隐式的实现

一,新建接口 using System; using System.Collections.Generic; using System.Linq; using System.Web; /// <summary> /// InterF 的摘要说明 /// </summary> public interface Itest { string show(); string display(); } 二,新建接口实现类 using System; using System.Collecti