Python selenium实现断言3种方法解析


Posted in Python onSeptember 08, 2020

1.if ...else ...判断进行断言

from time import *
from selenium import webdriver
def login(user="admin",pwd="123456"):
  driver = webdriver.Chrome()
  driver.implicitly_wait(10)
  driver.get("http://192.168.1.110:8080/cms")
  driver.maximize_window()
  sleep(1)
  driver.find_element_by_id("userAccount").send_keys(user)
  sleep(1)
  driver.find_element_by_id("loginPwd").send_keys(pwd)
  sleep(1)
  driver.find_element_by_id("loginBtn").click()  #登录
  sleep(1)
  users = driver.find_element_by_class_name("c-white").text  #获取用户名
  sleep(1)
  driver.quit()
  if users[6:] == user:
    pass
  else:
    raise AssertionError

if __name__ == '__main__':
  login()
from time import *
from selenium import webdriver
def login(user="admin",pwd="123456"):
  driver = webdriver.Chrome()
  driver.implicitly_wait(10)
  driver.get("http://192.168.1.110:8080/cms")
  driver.maximize_window()
  sleep(1)
  driver.find_element_by_id("userAccount").send_keys(user)
  sleep(1)
  driver.find_element_by_id("loginPwd").send_keys(pwd)
  sleep(1)
  driver.find_element_by_id("loginBtn").click()  #登录
  sleep(1)
  users = driver.find_element_by_class_name("c-white").text  #获取用户名
  sleep(1)
  driver.quit()
  if users[6:7] == user:
    pass
  else:
    assert False

if __name__ == '__main__':
  login()

2.try ... except ...断言

from time import *
from selenium import webdriver
def fatie(title,body):
  dr = login()
  sleep(2)
  dr.find_element_by_partial_link_text("版块").click()
  sleep(1)
  dr.find_element_by_id("subject").send_keys(title)
  sleep(1)
  dr.find_element_by_id("fastpostmessage").send_keys(body)
  sleep(2)
  dr.find_element_by_name("topicsubmit").click()
  sleep(2)
  try:
    dr.find_element_by_id("thread_subject")
  except:
    raise AssertionError
  else:
    pass
  sleep(3)
  dr.quit()

3.assert断言(基于unittest)

  • assertIn(arg1, arg2, msg=None)

    验证 arg1 是 arg2 的子串,不是则 fail

  • assertNotIn(arg1, arg2, msg=None)

    验证 arg1 不是 arg2 的子串,是则 fail

  • assertEqual(arg1, arg2, msg=None)

    验证 arg1=arg2,不等则 fail

  • assertNotEqual(arg1, arg2, msg=None)

    验证 arg1 != arg2, 相等则 fail

import time
import unittest

class Test(unittest.TestCase):
  def test01(self):
    self.assertEqual(2,2,msg="test01 error!")

  def test02(self):
    self.assertNotEqual(1,2,msg="test02 error!")

  def test03(self):
    self.assertIn("fang","xinfangshuo",msg="test03 error!")

  def test04(self):
    self.assertNotIn("xing","xinfangshuo",msg="test04 error!")

  def tearDown(self):
    time.sleep(1)

if __name__ == '__main__':
  unittest.main()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python多重继承实例
Oct 11 Python
Linux环境下MySQL-python安装过程分享
Feb 02 Python
python如何为创建大量实例节省内存
Mar 20 Python
Python实现的计算器功能示例
Apr 26 Python
Django1.9 加载通过ImageField上传的图片方法
May 25 Python
Python continue语句实例用法
Feb 06 Python
使用Python对Dicom文件进行读取与写入的实现
Apr 20 Python
Python中操作各种多媒体,视频、音频到图片的代码详解
Jun 04 Python
django 将自带的数据库sqlite3改成mysql实例
Jul 09 Python
python类共享变量操作
Sep 03 Python
分享一个python的aes加密代码
Dec 22 Python
浅析python中特殊文件和特殊函数
Feb 24 Python
什么是Python包的循环导入
Sep 08 #Python
聊聊python中的循环遍历
Sep 07 #Python
详解python中的闭包
Sep 07 #Python
python logging模块的使用
Sep 07 #Python
了解一下python内建模块collections
Sep 07 #Python
Python pymsql模块的使用
Sep 07 #Python
Python虚拟环境的创建和使用详解
Sep 07 #Python
You might like
php zlib压缩和解压缩swf文件的代码
2008/12/30 PHP
php中数组首字符过滤功能代码
2012/07/31 PHP
在yii中新增一个用户验证的方法详解
2013/06/20 PHP
php读取csv文件后,uft8 bom导致在页面上显示出现问题的解决方法
2013/08/10 PHP
php一行代码获取文件后缀名实例分析
2014/11/12 PHP
yii实现使用CUploadedFile上传文件的方法
2015/12/28 PHP
上传的js验证(图片/文件的扩展名)
2013/04/25 Javascript
一种新的javascript对象创建方式Object.create()
2015/12/28 Javascript
Bootstrap导航中表单简单实现代码
2017/03/06 Javascript
将input框中输入内容显示在相应的div中【三种方法可选】
2017/05/08 Javascript
AngularJS 限定$scope的范围实例详解
2017/06/23 Javascript
浅析node Async异步处理模块用例分析及常用方法介绍
2017/11/17 Javascript
微信小程序实现animation动画
2018/01/26 Javascript
浅谈Vue Element中Select下拉框选取值的问题
2018/03/01 Javascript
解决vue.js this.$router.push无效的问题
2018/09/03 Javascript
在React项目中使用Eslint代码检查工具及常见问题
2018/10/10 Javascript
详解a标签添加onclick事件的几种方式
2019/03/29 Javascript
vue设置导航栏、侧边栏为公共页面的例子
2019/11/01 Javascript
ES6学习教程之Promise用法详解
2020/11/22 Javascript
[00:56]2014DOTA2国际邀请赛 DK、iG 赛前探访
2014/07/10 DOTA
[02:33]DOTA2亚洲邀请赛趣味视频之吐真话筒
2018/03/31 DOTA
在windows下快速搭建web.py开发框架方法
2016/04/22 Python
Python实现的堆排序算法示例
2018/04/29 Python
opencv python 基于KNN的手写体识别的实例
2018/08/03 Python
完美解决Python matplotlib绘图时汉字显示不正常的问题
2019/01/29 Python
PyQt QCombobox设置行高的方法
2019/06/20 Python
解决Python spyder显示不全df列和行的问题
2020/04/20 Python
使用Python将图片转正方形的两种方法实例代码详解
2020/04/29 Python
什么是ARP(Address Resolution Protocol)地址解析协议
2013/10/31 面试题
2014年公司庆元旦活动方案
2014/03/05 职场文书
教师考核评语
2014/04/28 职场文书
项目负责人任命书
2014/06/04 职场文书
学校综治宣传月活动总结
2014/07/02 职场文书
十佳青年事迹材料
2014/08/21 职场文书
2016继续教育研修日志
2015/11/13 职场文书
2016年清明节网上祭英烈活动总结
2016/04/01 职场文书