您好,登錄后才能下訂單哦!
最近瀏覽了很多同學(xué)的簡歷,大部分都有自動化測試,基本都有selenium。但很少有人真正弄清selenium。一個是selenium的提供了很多組件,讓人容易上手,然后很多人就沒有然后了。二是selenium的更新伴隨著工具的合并,很多人壓根沒高清自己用的是selenium RC 還是 webdriver。
根據(jù)最近面試的情況,把很多同學(xué)在實(shí)踐selenium的時(shí)候沒弄清的問題總結(jié)了一下,順便教大家如何快速玩轉(zhuǎn)selenium!
現(xiàn)在測試工程師都在聊什么?
1、python會了嗎最近?
2、selenium自動化你們團(tuán)隊(duì)進(jìn)度怎么樣?
3、你們自動化框架應(yīng)用的如何?
4、一直搞手工職業(yè)發(fā)展會有瓶頸啊,測試真心要往測試開發(fā)走啊,搞自動化……
5、我們招聘自動化工程師都10K起,但是到目前還沒有招到合適的人選哦,趕緊也學(xué)學(xué)自動化,漲薪或跳槽去……
自動化工程師的規(guī)劃之路
如何玩轉(zhuǎn)Selenium自動化?
目前市場上的自動化工具很多,selenium只是其中的一個突出代表。近幾年隨著開源風(fēng)、selenium的穩(wěn)定、版本更新等越來受到市場的歡迎。當(dāng)然這里不可忽略Python的作用哦!
如果你是小白,想學(xué)習(xí)自動化,強(qiáng)烈推薦python+selenium。
不要一提代碼就恐怖哦(很多測試工程師的通病),其實(shí)python與selenium就是一個【紙老虎】,要勇于面對,勇于挑戰(zhàn)哦,要不自己沒有技術(shù)上的競爭力,誰來給你漲薪呢?
!、python上手容易,語法簡單、大量第三方模塊的支持- selenium針對b/s支持非常好,目前各大主流瀏覽器均支持。當(dāng)然我還是喜歡FireFox。
學(xué)習(xí)selenium,IDE部分不是主要的點(diǎn),重點(diǎn)放在webdriver API部分。
2、千萬不要把大部分精力放在IDE部分哦
前端知識要適當(dāng)儲備:html、css、js基礎(chǔ)等,但是不要把自己搞成前端工程師哦,當(dāng)然那樣對你也是非常有益的。
Selenium是什么?
Selenium是什么,相信從事自動化測試的同學(xué)或者有過Python爬蟲經(jīng)歷的同學(xué)都會有了解。
Selenium是一個Web自動化測試軟件,正如Selenium官網(wǎng)所言:Selenium主要是為了測試目的而進(jìn)行自動化的Web應(yīng)用程序,但是當(dāng)然并不限于此,一些基于Web的無聊的管理任務(wù)也可以使用Selenium進(jìn)行自動化。嗯,比如爬蟲。
網(wǎng)絡(luò)爬蟲應(yīng)該是Selenium除了Web自動化測試之外,最為人所熟知的應(yīng)用場景了,它在面對一些JS生成的動態(tài)網(wǎng)頁時(shí)能夠有效的獲取到頁面上的數(shù)據(jù)??梢哉f是Python網(wǎng)絡(luò)爬蟲的必備良品。
Python+selenium環(huán)境搭建
1、Python環(huán)境安裝
· 下載和安裝Python
· 設(shè)置環(huán)境變量:已管理員身份運(yùn)行cmd,輸入如下命令:path=%path%;C:\Python27
· 運(yùn)行python:在命令行中輸入python運(yùn)行python
2、PIP的安裝
· pip類似RedHat里面的yum,安裝Python包非常方便。(點(diǎn)擊圖片即可下載)
·下載后解壓,使用命令行進(jìn)入解壓出來的目錄,運(yùn)行命令:python setup.py install
· 增加環(huán)境變量:命令行中輸入path=%path%;C:\Python27\Scripts
· 看下是否安裝成功:輸入pip -v
3、安裝selenium for python
· 命令行輸入:pip install selenium(點(diǎn)擊圖片即可下載)
·驗(yàn)證是否安裝成功:在cmd輸入python進(jìn)入python環(huán)境,然后輸入 from selenium import webdriver,如果不報(bào)錯就代表selenium安裝成功。
4、PyCharm的安裝與使用
· 在Python開發(fā)過程中,比較流行,很優(yōu)秀的一款I(lǐng)DE工具-PyCharm,這里關(guān)于它的介紹就一句話,它就相當(dāng)于Java開發(fā)中的Eclipse軟件一樣。(點(diǎn)擊圖片即可下載)
· 創(chuàng)建工程 ·
5、通過腳本打開關(guān)閉瀏覽器
要用selenium打開瀏覽器。首先需要去下載一個driver插件(不同的瀏覽器對應(yīng)不同的driver插件),這里以chrome為例,下載好后將該插件放在Python安裝目錄下即可。
這樣,一個完整的測試框架和Demo就搭建完成了,你學(xué)會了嗎?
使用selenium做自動化測試常見問題
1、selenium中如何判斷元素是否存在?
答:isElementPresent
2、selenium中hidden或者是display = none的元素是否可以定位到?
答:不可以定位到
3、自動化測試的時(shí)候是不是需要連接數(shù)據(jù)庫做數(shù)據(jù)校驗(yàn)?
答:UI自動化不需要,接口測試會需要
4、webdriver可以用來做接口測試嗎?
答:有一定難度,不推薦做接口測試
5、如何去定位頁面上動態(tài)加載的元素?
答:觸發(fā)動態(tài)加載元素的事件,直至動態(tài)元素出現(xiàn),進(jìn)行定位
6、如何去定位屬性動態(tài)變化的元素?
答:xpath或者css通過同級、父級、子級進(jìn)行定位
7、點(diǎn)擊鏈接以后,selenium是否會自動等待該頁面加載完畢?
答:會的等待該頁面加載完的
8、自動化測試用例從哪里來?
答:手工用例中抽取出來,可以參考自動化用例的執(zhí)行策略
9、你覺得自動化測試最大的缺陷是什么?
答:不穩(wěn)定、可靠性、不易維護(hù)、成本與收益不成正比
10、什么是分層測試?
答:UI測試、集成/接口測試、單元測試這些都可以算做分層測試
總結(jié):
隨著對測試開發(fā)的逐漸流行,測試人員的代碼能力也在提升。在selenium的學(xué)習(xí)中,更需要掌握webdriver的api,探索selenium的更多特性。
沒有過不去的火焰山,沒有吭不掉的技術(shù)難題,只要你敢,肯下功夫,都會取得最終的勝利。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。