原创 如何實現在一個測試類裏只登錄和退出登錄一次
在進行自動化測試的時候,往往只需要登錄一次和測試完成的以後,退出登錄一次就好,不需要每執行一個測試用例,都登錄和退出。用python 的classmethod 裝飾器就能實現,僞代碼如下: import unittestclass XXX(
原创 python 產生隨機數,隨機字符串
import random#隨機整數:print random.randint(1,50)#隨機選取0到100間的偶數:print random.randrange(0, 101, 2)#隨機浮點數:print random.random(
原创 selenium的常見異常
Exceptions(異常)Python 自帶的異常,所有異常的基類。異常: selenium.common.exceptions.ElementNotSelectableException(msg=None, screen=None,
原创 WebDriverWait智能等待查找元素,提高代碼的執行效率,不浪費時間,減少代碼量
from selenium.webdriver.support.wait import WebDriverWait智能等待10s之後獲取元素,獲取的是單個元素def find_element(self, locator):WebDriver
原创 XPath學習:軸
XPath 是一門在 XML 文檔中查找信息的語言。XPath 可用來在 XML 文檔中對元素和屬性進行遍歷。 XPath 是 W3C XSLT 標準的主要元素,並且 XQuery 和 XPointer 同時被構建於 XPath
原创 selenium 頁面滾動操作
//移動到元素element對象的“頂端”與當前窗口的“頂部”對齊 driver.execute_script("arguments[0].scrollIntoView();", element); driver.execute_
原创 Python 函數當中的不定參數 *args 和**kwargs 姐妹花
*args 和**kwargs,*args 可以當作可容納多個變量組成的元組,而**kwargs可當做容納多個key和value的dictionary ,所以*args 沒有key值,**kwargs有key值。 舉個例子:def test
原创 如何過濾掉隱藏的元素
dirver.find_element_by_xpath('//form//input[@class=\'el-input__inner\'and not(contains(@style,\'display:none\'))]'注意 not
原创 通過 css_selector 定位元素
常用符號數碼:# 表示id. 表示class> 表示子元素,層級一個空格也表示一個子元素,但是所有的子元素相當於xpath中的相對路徑,舉個例子driver.find_element_by_xpath('//div//inptut'),可以
原创 向右滑動滾動條
基本的思路是選中要移動的滾動條,然後按鍵盤的向右鍵(END鍵)移動來實現滾動,向右滾動的效果不是很明顯,記錄下,就當學習下:from selenium.webdriver.common.keys import Keys#找到要移動的滾動條e
原创 元素的 is_enable()、is_displayed()和is_selected()
1、以上三個爲布爾類型的函數 2、is_enable()用於存儲input、select等元素的可編輯狀態,可以編輯返回true,否則返回false3、is_displayed()()本身這個函數用於判斷某個元素是否存在頁面上(這裏的存在不
原创 python 產生隨機數,隨機字符串
import random#隨機整數:print random.randint(1,50)#隨機選取0到100間的偶數:print random.randrange(0, 101, 2)#隨機浮點數:print random.random(
原创 expected conditions
在site-packages\selenium\webdriver\support 目錄下找到了expected_conditions,這些常用的斷言都在expected_conditions.py 文件裏面找到,先來看下這個文件下這些類的
原创 用Python的高階函數寫日誌,並且捕獲異常信息
import loggingimport timeimport tracebackfrom selenium import webdriverdef log(test_case_func): def wraps(*args, **keywo
原创 不用js代碼,在selenium裏面實現鼠標懸停
一種簡單的方式實現鼠標懸停,用selenium自帶的Actions類中的 move_to_element() 方法很難實現,因爲這個方法使得鼠標懸停一閃而過,不能達到懸停的效果。還是以百度首頁右上角的按個“設置”爲例,找到該按鈕下的“搜索設