Python selenium實現斷言3種方法解析
1.if ...else ...判斷進行斷言
from time import *from selenium import webdriverdef 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 AssertionErrorif __name__ == ’__main__’: login()
from time import *from selenium import webdriverdef 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 Falseif __name__ == ’__main__’: login()
2.try ... except ...斷言
from time import *from selenium import webdriverdef 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, 相等則 failimport timeimport unittestclass 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()
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。
相關文章:
1. vue實現web在線聊天功能2. JavaEE SpringMyBatis是什么? 它和Hibernate的區別及如何配置MyBatis3. JavaScript實現頁面動態驗證碼的實現示例4. 完美解決vue 中多個echarts圖表自適應的問題5. Java使用Tesseract-Ocr識別數字6. Springboot 全局日期格式化處理的實現7. SpringBoot+TestNG單元測試的實現8. 解決Android Studio 格式化 Format代碼快捷鍵問題9. 在Chrome DevTools中調試JavaScript的實現10. Python使用urlretrieve實現直接遠程下載圖片的示例代碼
