判断 title

获取页面 title 的方法可以直接用 driver.title 获取到,然后也可以把获取到的结果用做断言。
本篇介绍另外一种方法去判断页面 title 是否与期望结果一种,用到上一篇判断元素(expected_conditions)提到的 expected_conditions 模块里的 title_is 和 title_contains 两种方法

源码分析

1.首先看下源码,如下
class title_is(object):
"""An expectation for checking the title of a page.title is the expected title, which must be an exact matchreturns True if the title matches, false otherwise."""
'''翻译:检查页面的 title 与期望值是都完全一致,如果完全一致,返回 Ture,否则返回 Flase'''
def __init__(self, title):
self.title = title
def __call__(self, driver):
return self.title == driver.title
2.注释翻译:检查页面的 title 与期望值是都完全一致,如果完全一致,返回True,否则返回 Flase
3.title_is()这个是一个 class 类型,里面有两个方法
4.__init__是初始化内容,参数是 title,必填项
5.__call__是把实例变成一个对象,参数是 driver,返回的是 self.title ==driver.title,布尔值

判断 title:title_is()

1.首先导入 expected_conditions 模块
2.由于这个模块名称比较长,所以为了后续的调用方便,重新命名为 EC 了(有点像数据库里面多表查询时候重命名)
3.打开博客首页后判断 title,返回结果是 True 或 False

判断title包含:title_contains

1.这个类跟上面那个类差不多,只是这个是部分匹配(类似于 xpath 里面的
contains 语法)
2.判断 title 包含'Silence&'字符串

参考源码;

# coding: utf-8
from selenium import webdriver
from selenium.webdriver.support import expected_conditions as EC
driver = webdriver.Firefox()
driver.get("http://www.cnblogs.com/101718qiong/")
# 判断title完全等于
title = EC.title_is(u"Silence&QH - 博客园")
print title(driver)
# 判断title包含
title1 = EC.title_contains("Silence&QH")
print title1(driver)
# 另外写法
r1 = EC.title_is(u"Silence&QH - 博客园")(driver)
r2 = EC.title_contains("Silence&QH")(driver)
print r1
print r2

判断title(title_is)的更多相关文章

  1. Selenium2+python自动化43-判断title(title_is)

    From: https://www.cnblogs.com/yoyoketang/p/6539117.html 前言 获取页面title的方法可以直接用driver.title获取到,然后也可以把获取 ...

  2. Selenium2+python自动化43-判断title(title_is)【转载】

    前言 获取页面title的方法可以直接用driver.title获取到,然后也可以把获取到的结果用做断言. 本篇介绍另外一种方法去判断页面title是否与期望结果一种,用到上一篇Selenium2+p ...

  3. python+selenium自动化软件测试(第4章):场景判断与封装

    4.1 显示等待WebDriverWait 前言:在脚本中加入太多的sleep后会影响脚本的执行速度,虽然implicitly_wait()这种隐式等待在一定程度上节省了很多时间.但是一旦页面上某些j ...

  4. python selenium2 中的显示等待WebDriverWait与条件判断expected_conditions举例

    #coding=utf-8from selenium import webdriverfrom selenium.webdriver.common.by import Byfrom selenium. ...

  5. python-web自动化-Python+Selenium之expected_conditions:各种判断

    expected_conditions一般也简称EC 以下两个条件类验证title,验证传入的参数title是否等于或包含于driver.titletitle_istitle_contains 以下两 ...

  6. 判断元素16种方法expected_conditions

    前言 标签(空格分隔): 判断元素 经常有小伙伴问,如何判断一个元素是否存在,如何判断alert弹窗出来了,如何判断动态的元素等等一系列的判断,在selenium的expected_condition ...

  7. selenium3 + python - expected_conditions判断元素

    expected_conditions 类 title_is: 判断当前页面的title是否完全等于(==)预期字符串,返回布尔值 title_contains : 判断当前页面的title是否包含预 ...

  8. Selenium(二十):expected_conditions判断页面元素

    1. 判断元素(expected_conditons) 作为一个刚刚转到python开发的小朋友,在开发前只将前辈们封装的方法看了一遍,学了一边selenium基础.看到封装的方法有什么判断元素是否存 ...

  9. 【转】python selenium2 中的显示等待WebDriverWait与条件判断expected_conditions举例

    #coding=utf-8 from selenium import webdriver from selenium.webdriver.common.by import By from seleni ...

随机推荐

  1. 测试驱动开发 VS 行为驱动开发

    测试驱动开发(Test Driven Development,英文缩写TDD)是极限编程的一个重要组成部分,它的基本思想就是在开发功能代码之前,先编写测试代码.也就是说在明确要开发某个功能后,首先思考 ...

  2. 【Linux】Linux各文件夹说明

    转载 /bin/ — 用来贮存普通命令. /sbin/ — 许多系统命令(例如 shutdown)的贮存位置.属于基本的系统命令,如shutdown,reboot,用于启动系统,修复系统./sbin目 ...

  3. C++-结构体,联合体,枚举,的区别

    结构体: struct  NUM { int number; }a; 结构体是声明只是一个模型,没有分配内存空间.当进行定义结构体变量后才分配内存空间 联合体: union  data { int a ...

  4. C# WPF Application 下的文件操作

    好气哦,电脑好烂,每天花大把的时间在等电脑反应上. 没有钱买新电脑,连组台式机的钱都没有.好气哦. 啊啊啊啊文件操作是什么鬼???C++下我都懵了,C#下好多东西要学!!!我不会!我不会!我不会!!! ...

  5. Spring学习(三)——集成 Velocity

    上篇文章http://www.cnblogs.com/wenjingu/p/3822989.html我们使用Gradle构建了一个简单的Spring MVC Web应用程序, 本篇将在上篇的基础上将j ...

  6. C++11左值引用和右值引用

    转载:https://www.cnblogs.com/golaxy/p/9212897.html C++11的左值引用与右值引用总结 概念 1.&与&&  对于在C++中,大家 ...

  7. WinForm中的重绘 - 按钮等控件的背景渐变色重绘

    注:brush通过起止坐标来控制重绘范围及方向.比如从上到下渐变时,brush第二个Point参数是左下角坐标. private void PaintGradientBackground(Button ...

  8. 如何在VMware Workstation11的Windows Server 2008 R2中安装XAMPP?

    我在VMware Workstation11的Windows Server 2008 R2打算安装XAMPP,但是总是有问题,经过两天的不懈努力,终于实现了,下面我具体说一说我遇到的问题和解决方法! ...

  9. Mysql 索引原理《一》索引原理与慢查询2

    一 索引未命中 并不是说我们创建了索引就一定会加快查询速度,若想利用索引达到预想的提高查询速度的效果,我们在添加索引时,必须遵循以下问题 1 范围问题,或者说条件不明确,条件中出现这些符号或关键字:& ...

  10. 如何构建debian包

        1)安装dh_make如下: sudo apt-get intasll aptitude sudo aptitude install dh_make    2)以jsoncpp为例,说明如何生 ...