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 相关文章推荐
linux系统使用python监控apache服务器进程脚本分享
Jan 15 Python
python中getattr函数使用方法 getattr实现工厂模式
Jan 20 Python
matlab中实现矩阵删除一行或一列的方法
Apr 04 Python
PyQt4实现下拉菜单可供选择并打印出来
Apr 20 Python
提升Python效率之使用循环机制代替递归函数
Jul 23 Python
python利用tkinter实现屏保
Jul 30 Python
扩展Django admin的list_filter()可使用范围方法
Aug 21 Python
python中seaborn包常用图形使用详解
Nov 25 Python
Python requests模块基础使用方法实例及高级应用(自动登陆,抓取网页源码)实例详解
Feb 14 Python
对python中return与yield的区别详解
Mar 12 Python
Python 多线程共享变量的实现示例
Apr 17 Python
python 实现"神经衰弱"翻牌游戏
Nov 09 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开发GUI
2006/10/09 PHP
php中看实例学正则表达式
2006/12/25 PHP
php采集文章中的图片获取替换到本地(实现代码)
2013/07/08 PHP
解决PhpStorm64不能启动的问题
2020/06/20 PHP
当鼠标移动到图片上时跟随鼠标显示放大的图片效果
2013/06/06 Javascript
document.getElementBy("id")与$("#id")有什么区别
2013/09/22 Javascript
nodejs中简单实现Javascript Promise机制的实例
2014/12/06 NodeJs
JavaScript学习笔记之JS对象
2015/01/22 Javascript
js获取checkbox值的方法
2015/01/28 Javascript
JS实用的动画弹出层效果实例
2015/05/05 Javascript
理解JS绑定事件
2016/01/19 Javascript
jQuery基本选择器(实例及表单域value的获取方法)
2016/05/20 Javascript
js实现HashTable(哈希表)的实例分析
2016/11/21 Javascript
Bootstrap文件上传组件之bootstrap fileinput
2016/11/25 Javascript
JavaScript中清空数组的三种方式
2017/03/22 Javascript
Vue.js实现微信过渡动画左右切换效果
2017/06/13 Javascript
移动设备手势事件库Touch.js使用详解
2017/08/18 Javascript
使用原生js封装的ajax实例(兼容jsonp)
2017/10/12 Javascript
JS生成随机打乱数组的方法示例
2017/12/23 Javascript
AngularJS实现的base64编码与解码功能示例
2018/05/17 Javascript
vue获取元素宽、高、距离左边距离,右,上距离等还有XY坐标轴的方法
2018/09/05 Javascript
JS使用iView的Dropdown实现一个右键菜单
2019/05/06 Javascript
Python时区设置方法与pytz查询时区教程
2013/11/27 Python
python进阶教程之异常处理
2014/08/30 Python
python实现简单socket程序在两台电脑之间传输消息的方法
2015/03/13 Python
Python多进程方式抓取基金网站内容的方法分析
2019/06/03 Python
python 基于opencv 绘制图像轮廓
2020/12/11 Python
维多利亚的秘密官方网站:Victoria’s Secret
2018/10/24 全球购物
中学生班主任评语
2014/01/30 职场文书
美术教师岗位职责
2014/03/18 职场文书
张家口市高新区党工委群众路线教育实践活动整改方案
2014/10/25 职场文书
高中军训感想
2015/08/07 职场文书
2015年小学体育教师工作总结
2015/10/23 职场文书
2016年师德先进个人事迹材料
2016/02/29 职场文书
班组长如何制订适合本班组的工作计划?
2019/07/10 职场文书
高中议论文(范文2篇)
2019/08/19 职场文书