10分鐘玩轉Python+Selenium自動化測試,快速入門通道!

2020-12-15 51Testing軟體測試網

最近瀏覽了很多同學的簡歷,大部分都有自動化測試,基本都有selenium。但很少有人真正弄清selenium。一個是selenium的提供了很多組件,讓人容易上手,然後很多人就沒有然後了。二是selenium的更新伴隨著工具的合併,很多人壓根沒高清自己用的是selenium RC 還是 webdriver。

根據最近面試的情況,把很多同學在實踐selenium的時候沒弄清的問題總結了一下,順便教大家如何快速玩轉selenium!

現在測試工程師都在聊什麼?

1、python會了嗎最近?

2、selenium自動化你們團隊進度怎麼樣?

3、你們自動化框架應用得如何?

4、一直搞手工職業發展會有瓶頸啊,測試真心要往測試開發走啊,搞自動化……

5、我們招聘自動化工程師都10K起,但是到目前還沒有招到合適的人選哦,趕緊也學學自動化,漲薪或跳槽去……

自動化工程師的規劃之路

如何玩轉Selenium自動化?

目前市場上的自動化工具很多,selenium只是其中的一個突出代表。近幾年隨著開源風、selenium的穩定、版本更新等越來受到市場的歡迎。當然這裡不可忽略Python的作用哦!

如果你是小白,想學習自動化,強烈推薦python+selenium。

不要一提代碼就恐怖哦(很多測試工程師的通病),其實python與selenium就是一個【紙老虎】,要勇於面對,勇於挑戰哦,要不自己沒有技術上的競爭力,誰來給你漲薪呢?

!、python上手容易,語法簡單、大量第三方模塊的支持- selenium針對b/s支持非常好,目前各大主流瀏覽器均支持。當然我還是喜歡FireFox。

學習selenium,IDE部分不是主要的點,重點放在webdriver API部分。

2、千萬不要把大部分精力放在IDE部分哦

前端知識要適當儲備:html、css、js基礎等,但是不要把自己搞成前端工程師哦,當然那樣對你也是非常有益的。

Selenium是什麼?

Selenium是什麼,相信從事自動化測試的同學或者有過Python爬蟲經歷的同學都會有了解。

Selenium是一個Web自動化測試軟體,正如Selenium官網所言:Selenium主要是為了測試目的而進行自動化的Web應用程式,但是當然並不限於此,一些基於Web的無聊的管理任務也可以使用Selenium進行自動化。嗯,比如爬蟲。

網絡爬蟲應該是Selenium除了Web自動化測試之外,最為人所熟知的應用場景了,它在面對一些JS生成的動態網頁時能夠有效的獲取到頁面上的數據。可以說是Python網絡爬蟲的必備良品。

Python+selenium環境搭建

1、Python環境安裝

· 下載和安裝Python

· 設置環境變量:以管理員身份運行cmd,輸入如下命令:path=%path%;C:\Python27

· 運行python:在命令行中輸入python運行python

2、PIP的安裝

· pip類似RedHat裡面的yum,安裝Python包非常方便。(點擊圖片即可下載)

·下載後解壓,使用命令行進入解壓出來的目錄,運行命令:python setup.py install

· 增加環境變量:命令行中輸入path=%path%;C:\Python27\Scripts

· 看下是否安裝成功:輸入pip -v

3、安裝selenium for python

· 命令行輸入:pip install selenium(點擊圖片即可下載)

·驗證是否安裝成功:在cmd輸入python進入python環境,然後輸入 from selenium import webdriver,如果不報錯就代表selenium安裝成功。

4、PyCharm的安裝與使用

· 在Python開發過程中,比較流行,很優秀的一款IDE工具-PyCharm,這裡關於它的介紹就一句話,它就相當於Java開發中的Eclipse軟體一樣。(點擊圖片即可下載)

· 創建工程 ·

5、通過腳本打開關閉瀏覽器

要用selenium打開瀏覽器。首先需要去下載一個driver插件(不同的瀏覽器對應不同的driver插件),這裡以chrome為例,下載好後將該插件放在Python安裝目錄下即可。

這樣,一個完整的測試框架和Demo就搭建完成了,你學會了嗎?

使用selenium做自動化測試常見問題

1、selenium中如何判斷元素是否存在?

答:isElementPresent

2、selenium中hidden或者是display = none的元素是否可以定位到?

答:不可以定位到

3、自動化測試的時候是不是需要連接資料庫做數據校驗?

答:UI自動化不需要,接口測試會需要

4、webdriver可以用來做接口測試嗎?

答:有一定難度,不推薦做接口測試

5、如何去定位頁面上動態加載的元素?

答:觸發動態加載元素的事件,直至動態元素出現,進行定位

6、如何去定位屬性動態變化的元素?

答:xpath或者css通過同級、父級、子級進行定位

7、點擊連結以後,selenium是否會自動等待該頁面加載完畢?

答:會的等待該頁面加載完的

8、自動化測試用例從哪裡來?

答:手工用例中抽取出來,可以參考自動化用例的執行策略

9、你覺得自動化測試最大的缺陷是什麼?

答:不穩定、可靠性、不易維護、成本與收益不成正比

10、什麼是分層測試?

答:UI測試、集成/接口測試、單元測試這些都可以算作分層測試

總結:

隨著對測試開發的逐漸流行,測試人員的代碼能力也在提升。在selenium的學習中,更需要掌握webdriver的api,探索selenium的更多特性。

沒有過不去的火焰山,沒有吭不掉的技術難題,只要你敢,肯下功夫,都會取得最終的勝利。

相關焦點

  • 學會Python+Selenium,分分鐘搭建Web自動化框架!
    用python+selenium實現UI自動化測試,要有一些HTML和xpth的基礎,當然python基礎一定是必須要會的。筆者建議花點時間了解下相關基礎知識,不至於後面發懵。一、什麼是selenium?selenium是個強大的工具集。
  • Python之selenium自動化測試
    這幾年,Python真的可以用火爆來形容,尤其在人工智慧、自動化測試領域,風頭大有蓋過java的趨勢。今天我們就來說下使用selenium包下的webdriver自動打開瀏覽器的場景下,如何操作。一、環境準備我們直接先說下mac下chrome的自啟動,預裝環境如下,1、Python3.62、chrome瀏覽器3、pip3裝好selenium命令:sudo
  • 自動化測試工具Selenium+Python的簡單介紹
    Selenium是一個用於Web應用程式測試的工具,Selenium測試直接運行在瀏覽器中,就像真正的用戶在操作一樣。Python則是強大的腳本語言,已廣泛地應用於自動化測試中。本文簡單介紹一下Selenium和Python的使用。
  • 零基礎的你如何用python+selenium開始自動化測試?
    需求:用python+selenium進行自動化測試所需工具:python、selenium(框架)、Chrome瀏覽器、chromedriver(瀏覽器驅動)步驟一:安裝python3.7.2(我用的是最新版本)進入官方網站:https://www.python.org/
  • 測試小白必看教程,四步幫你搞定selenium自動化測試環境
    強尤最近在某些軟體測試群裡,經常看到有很多新入測試行業的同仁在問這些問題,怎麼用selenium做不了自動化測試。為什麼寫的腳本無法運行等常見問題。為此,我特地整理一份selnium+python 環境配置給大家,希望能幫到測試小白。
  • Selenium自動化測試框架入門整理
    關注嘉為科技,獲取運維新知本文主要針對Selenium自動化測試框架入門整理,只涉及總體功能及框架要點介紹說明,以及使用前提技術基礎要求整理說明。作為開發人員、測試人員入門參考。如果沒有編程經驗,可以通過Selenium IDE來快速熟悉Selenium的命令。該工具實際使用不多。Selenium-core 是使用HTML的方式來編寫測試腳本,你也可以使用 Selenium-IDE來錄製腳本,但是目前Selenium-IDE只有 FireFox 版本。
  • Python Selenium設計模式-POM
    前言本文就python selenium自動化測試實踐中所需要的POM設計模式進行分享,以便大家在實踐中對POM的特點、應用場景和核心思想有一定的理解和掌握。為什麼要用POM基於python selenium2開始UI級自動化測試並不是多麼艱巨的任務。
  • Python Selenium - SSL站點處理
    前言隨著現在站點對安全的要求越來越高,越來越多的企業網站接入了https,隨著https的大規模應用,我們在使用python selenium2進行自動化測試時,也要面臨的挑戰面臨的問題在實際的自動化測試實踐中,因為越來越多的站點接入https,使得我們原有的python selenium2自動化測試代碼進行測試時,瀏覽器總是報安全問題,即便在瀏覽器選項中將被測網址加入信任網址也沒用。
  • python 自動化,Helium 憑什麼取代 Selenium?
    作者:星安果來源: AirPython1. python自動化:Helium 是什麼?,我們需要下載並配置 WebDriver,然後實例化 WebDriver 對象,打開郵箱登錄的主頁面from selenium import webdriver# 實例化Driverdriver = webdriver.Chrome()# 隱式等待10sdriver.implicitly_wait(10)# 打開主頁面driver.get(home_url)通過觀察網頁元素
  • Selenium自動化測試——框架設計
    巡檢腳本,可用於冒煙測試,每輪測試開展時,測試工程師可執行巡檢腳本,驗證被測對象常用功能是否正確,如果常用功能存在問題,則無須開展深度測試。一、自動化框架設計如果僅針對單個功能進行自動化測試腳本開發及執行,則無須設計自動化框架。
  • web自動化測試神器——selenium家族介紹
    目前,如果說要進行web自動化 測試,首選的工具基本上都是selenium,那麼selenium到底是什麼呢?1.什麼是seleniumSelenium是基於WEB應用的驗收測試工具集合,直接運行在瀏覽器中,通過一系列命令來模擬用戶操作,Selenium可以將這些命令轉化成實際的HTTP請求在瀏覽器中運行 。
  • 3分鐘速成,快速使用selenium定位select表單
    在做自動化測試的中過程中,其實很多新人都不知道如何去定位select表單值,那麼今天強尤就給大家講講如何高速有效的去定位。定位select表單有二種方式:1、 先定位select,再去定位options的值。
  • selenium自動化利用excel文件實現批量傳值
    selenium自動化測試的時候,經常會用到數據來做批量測試,常用的方式有讀取txt文件,xml文件,csv文件以及excel文件幾種,本文給大家講解一下在selenium 中如何利用excel文件實現批量傳值,python讀取excel主要用到xlrd庫,此庫可在pycharm手動下載此類庫
  • 又到雙11,教你用selenium自動秒搶淘寶商品(附詳細入門指南)
    selenium是一款web自動化測試工具,可以很方便地模擬真實用戶對瀏覽器進行操作,它支持各種主流瀏覽器:IE、Chrome、Firefox、Safari、Opera等。selenium有多種程式語言的客戶端驅動,編寫自動化腳本語法簡潔,其中python的selenium庫便非常的受歡迎。
  • Python安裝Selenium庫的方法
    Selenium庫介紹Selenium是一個用於Web應用程式測試的工具。Selenium測試直接運行在瀏覽器中,就像真正的用戶在操作一樣。支持的瀏覽器包括IE(7, 8, 9, 10, 11),Mozilla Firefox,Safari,Google Chrome,Opera等。selenium 是一套完整的web應用程式測試系統,包含了測試的錄製(selenium IDE),編寫及運行(Selenium Remote Control)和測試的並行處理(Selenium Grid)。
  • 您需要知道的有關Selenium雲端測試都在這裡
    顯然,這種本地測試的方法不但費時費力,而且無法保證測試的覆蓋率。測試人員亟待通過自動化測試,來覆蓋各種可能性的測試用例。Selenium簡介與特點作為一種非常流行的開源測試框架,Selenium可以被用來創建各種可擴展的測試用例。
  • Python+Selenium詳解(超全)
    一、Selenium+Python環境搭建及配置1.1 selenium 介紹selenium 是一個 web 的自動化測試工具,不少學習功能自動化的同學開始首選 selenium ,因為它相比 QTP 有諸多有點:免費
  • 零基礎掌握Python Selenium「pdf系列」
    點擊上方「藍字」帶你去看小星星^_^零基礎掌握Python Selenium系列是針對無任何基礎的軟體測試人員的,主要以代碼實例方式,對Python Selenium進行了一一演示,通過學習這個系列,可以從零到入門。
  • python自動化中使用selenium處理滑鼠事件的方法詳解
    我們知道,在使用Python進行自動化處理過程中,常常需要跟滑鼠打交道,如頁面要求滑鼠單擊、懸停等動作,這時候我們怎麼通過selenium提供的驅動來識別並處理滑鼠事件呢?這就是我們今天來探討和梳理的內容。
  • Python無頭爬蟲Selenium系列(01):像手工一樣操作瀏覽器
    轉發本文並私信我"python",即可獲得Python資料以及更多系列文章(持續更新的)作為"數據玩家",如果手頭上沒有數據怎麼辦?當然是用代碼讓程序自動化採集數據,但是現在"爬蟲"不是那麼容易,其中最困難的即是突破網站各種反爬機制。