Python selenium實(shí)現(xiàn)斷言3種方法解析
1.if ...else ...判斷進(jìn)行斷言
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) 驗(yàn)證 arg1 是 arg2 的子串,不是則 fail
- assertNotIn(arg1, arg2, msg=None) 驗(yàn)證 arg1 不是 arg2 的子串,是則 fail
- assertEqual(arg1, arg2, msg=None) 驗(yàn)證 arg1=arg2,不等則 fail
- assertNotEqual(arg1, arg2, msg=None) 驗(yàn)證 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()
以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- Selenium結(jié)合BeautifulSoup4編寫簡單的python爬蟲
- Python使用Selenium模擬瀏覽器自動(dòng)操作功能
- python selenium xpath定位操作
- Python Selenium自動(dòng)化獲取頁面信息的方法
- python 讀取yaml文件的兩種方法(在unittest中使用)
- python+appium+yaml移動(dòng)端自動(dòng)化測(cè)試框架實(shí)現(xiàn)詳解
- python Yaml、Json、Dict之間的轉(zhuǎn)化
- Python讀取yaml文件的詳細(xì)教程
- python讀取yaml文件后修改寫入本地實(shí)例
- python使用yaml 管理selenium元素的示例
相關(guān)文章
Jupyter notebook 更改文件打開的默認(rèn)路徑操作
這篇文章主要介紹了Jupyter notebook 更改文件打開的默認(rèn)路徑操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2021-05-05
pycharm中dgl安裝報(bào)錯(cuò)FileNotFoundError:Could not find&nb
這篇文章主要介紹了pycharm中dgl安裝報(bào)錯(cuò)FileNotFoundError:Could not find module ‘E:\XXXX\XXXX\lib\site-packages\dgl\dgl.dl問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-02-02
解決Python中由于logging模塊誤用導(dǎo)致的內(nèi)存泄露
這篇文章主要介紹了解決Python中由于logging模塊誤用導(dǎo)致的內(nèi)存泄露,針對(duì)由于過多的UDP連接所產(chǎn)生的問題,需要的朋友可以參考下2015-04-04
python 實(shí)現(xiàn)Requests發(fā)送帶cookies的請(qǐng)求
這篇文章主要介紹了python 實(shí)現(xiàn)Requests發(fā)送帶cookies請(qǐng)求的方法,幫助大家更好的理解和使用python,感興趣的朋友可以了解下2021-02-02
django-crontab 定時(shí)執(zhí)行任務(wù)方法的實(shí)現(xiàn)
這篇文章主要介紹了django-crontab 定時(shí)執(zhí)行任務(wù)方法的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-09-09
python 從遠(yuǎn)程服務(wù)器下載日志文件的程序
本文提供了一種方法,該程序可實(shí)現(xiàn)抓取服務(wù)器的日志文件到本地,根據(jù)該程序可自行擴(kuò)展對(duì)日志文件的自動(dòng)化分析。常用于數(shù)據(jù)挖掘、生產(chǎn)維護(hù)等2013-02-02

