国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

自動化測試框架selenium之webdriver

這篇具有很好參考價值的文章主要介紹了自動化測試框架selenium之webdriver。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

1 webwebdriver API

1.1 元素的定位

對象的定位應該是自動化測試的核心,要想操作一個對象,首先應該識別這個對象,一個對象有很多的屬性,我們可以通過這些屬性找到對象。
注意:不管用那種方式,必須保證頁面上該屬性的唯一性

webdriver 提供了一系列的對象定位方法,常用的有以下幾種

  • id
  • name
  • class name
  • link text
  • partial link text
  • tag name
  • xpath
  • css selector

我們可以看到,一個百度的輸入框,可以用這么多種方式去定位

<input id="kw" class="s_ipt" type="text" maxlength="100" name="wd"
autocomplete="off">
from selenium import webdriver
from selenium.webdriver.common.by import By
import time

browser = webdriver.Chrome()
browser.get("http://www.baidu.com")
#########百度輸入框的定位方式##########
#通過id 方式定位
browser.find_element(By.ID,"kw").send_keys("selenium")
#通過name 方式定位
browser.find_element(By.NAME,"wd").send_keys("selenium")
#通過tag name 方式定位
browser.find_element(By.TAG_NAME,"input").send_keys("selenium")
# 不能成功,因為input太多了不唯一。
#通過class name 方式定位
browser.find_element(By.CLASS_NAME,"s_ipt").send_keys("selenium")
#通過CSS 方式定位
browser.find_element(By.CSS_SELECTOR,"#kw").send_keys("selenium")
#通過xphan 方式定位
browser.find_element(By.XPATH,"http://*[@id='kw']").send_keys("selenium")
############################################
browser.find_element(By.ID,"su").click()
time.sleep(3)
browser.quit()

注意:使用find_element方法時需要導入selenium.webdriver.common.by包

  1. id 定位

id是頁面元素的屬性,我們最常用元素定位方式,但是不是所有的元素都有id的。如果一個元素有id屬性,那么一般在整個頁面是唯一的。所以我們一般可以用id來唯一的定位到這個元素
通過前端工具,例如Chrome瀏覽器的F12,找到了百度輸入框的屬性信息,如下:

<input id="kw" class="s_ipt" type="text" maxlength="100" name="wd"
autocomplete="off">

屬性 id=”kw”
通過find_element(By.ID,“kw”) 函數(shù)就可以定位到百度輸入框

  1. name 定位

如果這個元素有name,并且元素的name命名在整個頁面是唯一的,那么我們可以用name來定位這個元素。
用上面百度輸入框的例子,其中元素的屬性name=”wd”
通過find_element(By.NAME,“wd”)函數(shù)同樣也可以定位到百度輸入框

  1. tag name 定位和class name 定位

從上面的百度輸入框的屬性信息中,我們看到,不單單只有id 和name 兩個屬性, 比如class 和tagname(標簽名)
input 就是一個標簽的名字,可以通過find_element(By.TAG_NAME,“input”)函數(shù)來定位。
class=“s_ipt”,通過find_element(By.CLASS_NAME,“s_ipt”)函數(shù)定位百度輸入框。

在這里要注意的是,不是所有的元素用 tag name或者 class name來定位元素,首先要保證該元素的這兩種屬性在頁面上是唯一的,才能夠準確的定位

  1. CSS 定位

CSS(Cascading Style Sheets)是一種語言,它被用來描述HTML 和XML 文檔的表現(xiàn)。
CSS 使用選擇器來為頁面元素綁定屬性。這些選擇器可以被selenium 用作另外的定位策略

CSS 的比較靈活可以選擇控件的任意屬性,上面的例子中:
find_element(By.CSS_SELECTOR,“#kw”)
通過find_element(By.CSS_SELECTOR," ")函數(shù),選擇取百度輸入框的id 屬性來定義
CSS的獲取可以用chrome的F12開發(fā)者模式中Element-右鍵-copy-copy selector來獲取

  1. XPath 定位

XPath 是一種在XML 文檔中定位元素的語言。因為HTML 可以看做XML 的一種實現(xiàn),所以selenium 用戶可是使用這種強大語言在web 應用中定位元素。
XPath 擴展了上面id 和name 定位方式,提供了很多種可能性。
XPATH的獲取可以用chrome的F12開發(fā)者模式中Element-右鍵-copy-copy xpath來獲取

  1. link text 定位

有時候不是一個輸入框也不是一個按鈕,而是一個文字鏈接,我們可以通過鏈接內(nèi)容,也就是 link text來定位。
需要注意的是鏈接內(nèi)容必須為這個頁面唯一,否則會報錯。

#coding=utf-8
from selenium import webdriver
browser = webdriver.Chrome()
browser.get("http://www.baidu.com")
browser.find_element(LINK_TEXT,"hao123").click()
browser.quit()

1.2 操作測試對象

前面講到了不少知識都是定位元素,定位只是第一步,定位之后需要對這個元素進行操作。是鼠標點擊還是鍵盤輸入,或者清除元素的內(nèi)容,或者提交表單等。這個取決于定位元素需要進行的下一步操作。

webdriver 中比較常用的操作對象的方法有下面幾個:

  • click 點擊對象
  • send_keys 在對象上模擬按鍵輸入
  • clear 清除對象輸入的文本內(nèi)容
  • submit 提交
  • text 用于獲取元素的文本信息
  1. 鼠標點擊和鍵盤輸入
from selenium import webdriver
from selenium.webdriver.common.by import By
import time
driver = webdriver.Chrome()
driver.get("http://www.baidu.com")
time.sleep(2)
driver.find_element(By.ID,"kw").send_keys("test")
time.sleep(2)
driver.find_element(By.ID,"kw").clear()
driver.find_element(By.ID,"kw").send_keys("selenium")
time.sleep(2)
#通過submit() 來操作
driver.find_element(By.ID,"su").submit()
time.sleep(3)
driver.quit()

send_keys(“xx”) 用于在一個輸入框里輸入xx 內(nèi)容。
click() 用于點擊一個按鈕。
clear() 用于清除輸入框的內(nèi)容,比如百度輸入框里默認有個“請輸入關(guān)鍵字”的信息,再比如我們的登陸框一般默認會有“賬號”“密碼”這樣的默認信息。clear 可以幫助我們清除這些信息。

  1. submit 提交表單

打開百度搜索頁面,按鈕“百度一下”元素的類型type=“submit”,所以把“百度一下”的操作從click 換成submit 可以達到相同的效果:

driver.find_element(By.ID,"su").submit()
  1. text 獲取元素文本
from selenium import webdriver
from selenium.webdriver.common.by import By
import time
driver = webdriver.Chrome()
driver.get("http://www.baidu.com")
time.sleep(2)
#id = cp 元素的文本信息
data=driver.find_element(By.ID,"bottom_layer").text
print (data) #打印信息
time.sleep(3)
driver.quit()

輸出:

關(guān)于百度About Baidu使用百度前必讀幫助中心企業(yè)推廣京公網(wǎng)安備11000002000001號京ICP證030173號信息網(wǎng)絡(luò)傳播視聽節(jié)目許可證 0110516

1.3 添加等待

  1. sleep休眠

添加休眠非常簡單,我們需要引入time 包,就可以在腳本中自由的添加休眠時間了,這里的休眠指固定休眠

import time
time.sleep(3)
  1. 隱式等待

通過添加implicitly_wait() 方法就可以方便的實現(xiàn)智能等待;implicitly_wait(30)的用法比time.sleep()更智能,后者只能選擇一個固定的時間的等待,前者可以在一個時間范圍內(nèi)智能的等待。

selenium.webdriver.remote.webdriver.implicitly_wait(time_to_wait)

time_to_wait 設(shè)置的等待時長。
隱式地等待并非一個固定的等待時間,當腳本執(zhí)行到某個元素定位時,如果元素可以定位,則繼續(xù)執(zhí)行;如果元素定位不到,則它以輪詢的方式不斷的判斷元素是否被定位到。直到超出設(shè)置的時長

from selenium import webdriver
from selenium.webdriver.common.by import By
import time
browser = webdriver.Chrome()
browser.get("http://www.baidu.com")
browser.implicitly_wait(30) #隱式等待30秒
browser.find_element(By.ID,"kw").send_keys("selenium")
browser.find_element(By.ID,"su").click()
browser.quit()

1.4 打印信息

  • 打印title
#coding = utf-8
from selenium import webdriver
driver = webdriver.Chrome()
driver.get('http://www.baidu.com')
print(driver.title) # 把頁面title 打印出來
  • 打印url
#coding = utf-8
from selenium import webdriver
driver = webdriver.Chrome()
driver.get('http://www.baidu.com')
print(driver.current_url) #打印url

1.5 瀏覽器的操作

  1. 瀏覽器最大化
    我們知道調(diào)用啟動的瀏覽器不是全屏的,這樣不會影響腳本的執(zhí)行,但是有時候會影響我們“觀看”腳本的執(zhí)行。
browser.maximize_window()
  1. 設(shè)置瀏覽器寬、高
browser.set_window_size(width, high)
  1. 操作瀏覽器的前進、后退
#瀏覽器的前進
browser.forward()
#瀏覽器的后退
browser.back()

示例:

from selenium import webdriver
from selenium.webdriver.common.by import By
import time
browser = webdriver.Chrome()
#訪問百度首頁
first_url= 'http://www.baidu.com'
print("now access %s" %(first_url))
browser.get(first_url)
time.sleep(2)
#訪問新聞頁面
second_url='http://news.baidu.com'
print("now access %s" %(second_url))
browser.get(second_url)
time.sleep(2)
#返回(后退)到百度首頁
print("back to %s "%(first_url))
browser.back()
time.sleep(1)
#前進到新聞頁
print("forward to %s"%(second_url))
browser.forward()
time.sleep(2)
browser.quit()
  1. 控制瀏覽器滾動條
    瀏覽器滾動條的控制需要依靠js腳本
#將瀏覽器滾動條滑到最頂端
document.documentElement.scrollTop=0
#將瀏覽器滾動條滑到最底端
document.documentElement.scrollTop=10000
#將瀏覽器滾動條滑到最底端, 示例
js="var q=document.documentElement.scrollTop=10000"
driver.execute_script(js)
其中,execute_script(script, *args),在當前窗口/框架同步執(zhí)行javaScript

1.6 鍵盤事件

  1. 鍵盤按鍵用法

要使用鍵盤按鍵,必須引入keys 包:
from selenium.webdriver.common.keys import Keys
通過send_keys()調(diào)用按鍵:
send_keys(Keys.TAB) # TAB
send_keys(Keys.ENTER) # 回車
send_keys(Keys.SPACE) #空格鍵
send_keys(Keys.ESCAPE) #回退鍵(Esc)

示例:

from selenium import webdriver
from selenium.webdriver.common.by import By
import time
from selenium.webdriver.common.keys import Keys
driver = webdriver.Chrome()
driver.get("http://demo.zentao.net/user-login-Lw==.html")
time.sleep(3)
driver.maximize_window() # 瀏覽器全屏顯示
driver.find_element(By.ID,"account").clear()
time.sleep(3)
driver.find_element(By.ID,"account").send_keys("demo")
time.sleep(3)
#tab 的定位相當于清除了密碼框的默認提示信息,等同上面的clear()
driver.find_element(By.ID,"account").send_keys(Keys.TAB)
time.sleep(3)
#通過定位密碼框,enter(回車)來代替登陸按鈕
driver.find_element(By.NAME,"password").send_keys(Keys.ENTER)
time.sleep(3)
driver.quit()
  1. 鍵盤組合鍵用法

send_keys(Keys.CONTROL,‘a(chǎn)’) #全選(Ctrl+A)
send_keys(Keys.CONTROL,‘c’) #復制(Ctrl+C)
send_keys(Keys.CONTROL,‘x’) #剪貼(Ctrl+X)
send_keys(Keys.CONTROL,‘v’) #粘貼(Ctrl+V)

示例:

from selenium import webdriver
from selenium.webdriver.common.by import By
import time
from selenium.webdriver.common.keys import Keys
driver = webdriver.Chrome()
driver.get("http://www.baidu.com")
#輸入框輸入內(nèi)容
driver.find_element(By.ID,"kw").send_keys("selenium")
time.sleep(3)
#ctrl+a 全選輸入框內(nèi)容
driver.find_element(By.ID,"kw").send_keys(Keys.CONTROL,'a')
time.sleep(3)
#ctrl+x 剪切輸入框內(nèi)容
driver.find_element(By.ID,"kw").send_keys(Keys.CONTROL,'x')
time.sleep(3)
#輸入框重新輸入內(nèi)容,搜索
driver.find_element(By.ID,"kw").send_keys("webdriver")
driver.find_element(By.ID,"su").click()
time.sleep(3)
driver.quit()

1.7 鼠標事件

要使用鼠標事件需要導入工具包:
from selenium.webdriver.common.action_chains import ActionChains

#鼠標拖動事件
ActionChains(driver).move_to_element(element).perform()

ActionChains(driver):生成用戶的行為。所有的行動都存儲在actionchains 對象。通過perform()存儲的行為。
move_to_element(element):移動鼠標到一個元素中,menu 上面已經(jīng)定義了他所指向的哪一個元素
perform():執(zhí)行所有存儲的行為

ActionChains 類

  • context_click() 右擊
  • double_click() 雙擊
  • drag_and_drop() 拖動
  • move_to_element() 移動
from selenium import webdriver
from selenium.webdriver.common.by import By
import time
from selenium.webdriver.common.action_chains import ActionChains
driver = webdriver.Chrome()
driver.get("http://news.baidu.com")
qqq =driver.find_element(By.XPATH,".//*[@id='s_btn_wr']")
ActionChains(driver).context_click(qqq).perform() #右鍵
ActionChains(driver).double_click(qqq).perform() #雙擊
#定位元素的原位置
element = driver.find_element(By.ID,"s_btn_wr")
#定位元素要移動到的目標位置
target = driver.find_element(By.CLASS_NAME,"btn")
#執(zhí)行元素的移動操作
ActionChains(driver).drag_and_drop(element, target).perform()

1.8 定位一組元素

webdriver 可以很方便的使用findElement 方法來定位某個特定的對象,不過有時候我們卻需要定位一組對象,這時候就需要使用findElements 方法。

定位一組對象一般用于以下場景:

  • 批量操作對象,比如將頁面上所有的checkbox 都勾上
  • 先獲取一組對象,再在這組對象中過濾出需要具體定位的一些對象。比如定位出頁面上所有的checkbox,然后選擇最后一個
#coding=utf-8
from selenium import webdriver
import time
import os
dr = webdriver.Chrome()
file_path = 'file:///' + os.path.abspath('checkbox.html')
dr.get(file_path)
# 選擇頁面上所有的input,然后從中過濾出所有的checkbox 并勾選之
inputs = dr.find_elements_by_tag_name('input')
for input in inputs:
if input.get_attribute('type') == 'checkbox':
input.click()
time.sleep(2)
dr.quit()

1.8 多層框架的定位

switch_to.frame(name/id/frame_element):通過frame的id或者name或者frame自帶的其它屬性來定位框架,這里switch_to.frame()把當前定位的主體切換了frame里。

switch_to.default_content:從frame中嵌入的頁面里跳出,跳回到最外面的默認頁面中。

#coding=utf-8
from selenium import webdriver
from selenium.webdriver.common.by import By
import time
import os
browser = webdriver.Chrome()
file_path = 'file:///' + os.path.abspath('frame.html')
browser.get(file_path)
browser.implicitly_wait(30)
#先找到到ifrome1(id = f1)
browser.switch_to.frame("f1")
#再找到其下面的ifrome2(id =f2)
browser.switch_to.frame("f2")
#下面就可以正常的操作元素了
browser.find_element(By.ID,"kw").send_keys("selenium")
browser.find_element(By.ID,"su").click()
time.sleep(3)
browser.quit()

1.8 多層窗口的定位

有可能嵌套的不是框架,而是窗口,還有針對窗口的方法:switch_to.window
用法與switch_to.frame 相同:
driver.switch_to.window(“windowName”)

1.9 層級定位

有時候我們需要定位的元素沒有直接在頁面展示,而是需要對頁面的元素經(jīng)過一系列操作之后才展示出來,這個時候我們就需要一層層去定位

#coding=utf-8
from selenium import webdriver
from selenium.webdriver.common.by import By
import time
import os
dr = webdriver.Chrome()
file_path = 'file:///' + os.path.abspath('level_locate.html')
dr.get(file_path)
#點擊Link1鏈接(彈出下拉列表)
dr.find_element(By.LINK_TEXT,'Link1').click()
#在父親元件下找到link 為Action 的子元素
menu = dr.find_element(By.ID,'dropdown1').find_element(By.LINK_TEXT,'Action')
#鼠標定位到子元素上
webdriver.ActionChains(dr).move_to_element(menu).perform()
time.sleep(2)
dr.quit()

1.10 下拉框處理

下拉框是我們最常見的一種頁面元素,對于一般的元素,我們只需要一次就定位,但下拉框里的內(nèi)容需要進行兩次定位,先定位到下拉框?qū)ο吕蜻M行操作后,再定位到下拉框內(nèi)里的選項。

#coding=utf-8
from selenium import webdriver
from selenium.webdriver.common.by import By
import time
import os
driver= webdriver.Chrome()
file_path = 'file:///' + os.path.abspath('drop_down.html')
driver.get(file_path)
time.sleep(2)
#先定位到下拉框
m=driver.find_element(By.ID,"ShippingMethod")
#再點擊下拉框下的選項
m.find_element(By.XPATH,"http://option[@value='10.69']").click()
time.sleep(3)
driver.quit()

1.11 alert、confirm、prompt 的處理

  • text 返回alert/confirm/prompt 中的文字信息
  • accept 點擊確認按鈕
  • dismiss 點擊取消按鈕,如果有的話
  • send_keys 輸入值,如果alert 沒有對話框就不能用了,不然會報錯

注意:switch_to.alert()只能處理原生的alert

#coding=utf-8
from selenium import webdriver
from selenium.webdriver.common.by import By
import time
import os
import selenium.webdriver.support.ui as ui

dr = webdriver.Chrome()
file_path = 'file:///' + os.path.abspath('alert.html')
dr.get(file_path)
# 點擊鏈接彈出alert
dr.find_element(By.ID,'tooltip').click()
time.sleep(2)
alert = dr.switch_to.alert()
alert.accept()
time.sleep(2)
dr.quit()

1.12 DIV對話框的處理

如果頁面元素比較多,利用元素的屬性無法準確的定位這個元素的時候,我們可以先定位元素所在的div塊,再去定位這個元素。

#coding=utf-8
from selenium import webdriver
from selenium.webdriver.common.by import By
import time
import os
import selenium.webdriver.support.ui as ui

dr = webdriver.Chrome()
file_path = 'file:///' + os.path.abspath('modal.html')
dr.get(file_path)
# 打開對話框
dr.find_element(By.ID,'show_modal').click()
time.sleep(3)
# 點擊對話框中的鏈接
link = dr.find_element(By.ID,'myModal').find_element(By.ID,'click')
link.click()
#dr.execute_script('$(arguments[0]).click()', link)
time.sleep(4)
# 關(guān)閉對話框
buttons =dr.find_element(By.CLASS_NAME,'modalfooter').find_elements(By.TAG_NAME,'button')
buttons[0].click()
time.sleep(2)
dr.quit()
#接受警告信息
alert = dr.switch_to.alert()
alert.accept()
#得到文本信息打印
alert = dr.switch_to.alert()
print alert.text
#取消對話框(如果有的話)
alert = dr.switch_to.alert()
alert.dismiss()
#輸入值
alert = dr.switch_to.alert()
alert.send_keys("hello word")

當alert中有對話框時

#coding:utf-8
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.common.action_chains import ActionChains
from selenium.common.exceptions import NoSuchElementException,UnexpectedTagNameException
from selenium.webdriver.support.ui import Select
from selenium.webdriver.common.alert import Alert
from time import sleep
import os
driver=webdriver.Chrome()
driver.implicitly_wait(30)
file_path = 'file:///' + os.path.abspath('send.html')
driver.get(file_path)
#driver.get('file:///D:/PycharmProjects/test/send.html')
#點擊“請點擊”
driver.find_element(By.XPATH,"html/body/input").click()
#輸入內(nèi)容
driver.switch_to.alert().send_keys('webdriver')
driver.switch_to.alert().accept()
sleep(5)
driver.quit()

1.13 上傳文件操作

定位上傳按鈕,通過send_keys 添加本地文件路徑就可以了。絕對路徑和相對路徑都可以,關(guān)鍵是上傳的文件存在。文章來源地址http://www.zghlxwxcb.cn/news/detail-657995.html

#coding=utf-8
from selenium import webdriver
from selenium.webdriver.common.by import By
import os,time
driver = webdriver.Chrome()
#腳本要與upload_file.html 同一目錄
file_path = 'file:///' + os.path.abspath('upload.html')
driver.get(file_path)
#定位上傳按鈕,添加本地文件
driver.find_element(By.NAME,"file").send_keys('D:\\PycharmProjects\\test\\upload.txt')
time.sleep(2)
driver.quit()

到了這里,關(guān)于自動化測試框架selenium之webdriver的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權(quán),不承擔相關(guān)法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務器費用

相關(guān)文章

  • Python + selenium 自動化測試框架

    Python + selenium 自動化測試框架

    項目自動化測試框架設(shè)計為4層 1.基礎(chǔ)層(通用層) 基礎(chǔ)層: 將通用,重復性比較高的代碼封裝到這里。 寫通用的代碼的。 其他3層想要的話,就可以直接調(diào)用。 例如: 讀取測試數(shù)據(jù)的代碼,讀取配置信息的代碼;截圖的代碼的,定位元素的代碼等等 2.功能層(頁面層) 功

    2023年04月13日
    瀏覽(19)
  • Selenium4自動化測試框架

    Selenium 介紹 Selenium 是目前用的最廣泛的 Web UI 自動化測試框架,核心功能就是可以在多個瀏覽器上進行自動化測試,支持多種編程語言,目前已經(jīng)被 google,百度,騰訊等公司廣泛使用。 1、配置 google 驅(qū)動的環(huán)境變量,如果不配置需要在代碼中指定驅(qū)動位置。 2、eclipse 中導入

    2024年02月03日
    瀏覽(26)
  • selenium 自動化測試框架學習筆記

    pip install selenium == 4.9.1? -i https://pypi.tuna.tsinghua.edu.cn/simple 下載驅(qū)動: 安裝完 selenium 后,還需要安裝使用 selenium 控制的瀏覽器需要的驅(qū)動。 谷歌驅(qū)動下載地址: https://googlechromelabs.github.io/chrome-for-testing/#stable 驅(qū)動下載完成后將文件移動到系統(tǒng)環(huán)境變量中: MacOS :將文件移動

    2024年01月23日
    瀏覽(25)
  • 【自動化測試】基于Selenium + Python的web自動化框架

    【自動化測試】基于Selenium + Python的web自動化框架

    Selenium是一個基于瀏覽器的自動化工具,她提供了一種跨平臺、跨瀏覽器的端到端的web自動化解決方案。Selenium主要包括三部分:Selenium IDE、Selenium WebDriver 和Selenium Grid: ? 1、Selenium IDE:Firefox的一個擴展,它可以進行錄制回放,并可以把錄制的操作以多種語言(例如java,p

    2024年02月07日
    瀏覽(19)
  • Selenium+python怎么搭建自動化測試框架、執(zhí)行自動化測試用例、生成自動化測試報告、發(fā)送測試報告郵件

    Selenium+python怎么搭建自動化測試框架、執(zhí)行自動化測試用例、生成自動化測試報告、發(fā)送測試報告郵件

    本人在網(wǎng)上查找了很多做自動化的教程和實例,偶然的一個機會接觸到了selenium,覺得非常好用。后來就在網(wǎng)上查閱各種selenium的教程,但是網(wǎng)上的東西真的是太多了,以至于很多東西參考完后無法系統(tǒng)的學習和應用。 以下整理的只是書中自動化項目的知識內(nèi)容,介紹怎么搭

    2024年02月05日
    瀏覽(30)
  • selenium測試框架快速搭建(UI自動化測試)

    selenium測試框架快速搭建(UI自動化測試)

    一、介紹 ? ? ? ? selenium目前主流的web自動化測試框架;支持多種編程語言Java、pythan、go、js等;selenium 提供一系列的api 供我們使用,因此在web測試時我們要點頁面中的某一個按鈕,那么我們只需要獲取頁面,然后根據(jù)id或者name找到對應的按鈕,然后執(zhí)行click操作就可以完成

    2024年02月02日
    瀏覽(29)
  • Python + selenium 自動化測試框架詳解

    Python + selenium 自動化測試框架詳解

    項目自動化測試框架設(shè)計為4層 1.基礎(chǔ)層(通用層) 基礎(chǔ)層: 將通用,重復性比較高的代碼封裝到這里。 寫通用的代碼的。 其他3層想要的話,就可以直接調(diào)用。 例如: 讀取測試數(shù)據(jù)的代碼,讀取配置信息的代碼;截圖的代碼的,定位元素的代碼等等 2.功能層(頁面層) 功

    2024年02月03日
    瀏覽(26)
  • Selenium瀏覽器自動化測試框架

    Selenium瀏覽器自動化測試框架

    介紹 Selenium [1] ?是一個用于Web應用程序測試的工具。Selenium測試直接運行在瀏覽器中,就像真正的用戶在操作一樣。支持的瀏覽器包括IE(7, 8, 9, 10, 11),Mozilla Firefox,Safari,Google Chrome,Opera等。這個工具的主要功能包括:測試與瀏覽器的兼容性——測試你的應用程序看是否

    2024年02月02日
    瀏覽(19)
  • Selenium+Pytest自動化測試框架詳解

    Selenium+Pytest自動化測試框架詳解

    selenium自動化+ pytest測試框架 本章你需要 一定的python基礎(chǔ)——至少明白類與對象,封裝繼承; 一定的selenium基礎(chǔ)——本篇不講selenium,不會的可以自己去看selenium中文翻譯網(wǎng) 測試框架有什么優(yōu)點 代碼復用率高,如果不使用框架的話,代碼會很冗余 可以組裝日志、報告、郵件等

    2024年02月08日
    瀏覽(25)
  • 自動化測試框架selenium之webdriver

    對象的定位應該是自動化測試的核心,要想操作一個對象,首先應該識別這個對象,一個對象有很多的屬性,我們可以通過這些屬性找到對象。 注意:不管用那種方式,必須保證頁面上該屬性的唯一性 webdriver 提供了一系列的對象定位方法,常用的有以下幾種 id name class nam

    2024年02月12日
    瀏覽(21)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包