前端程序員進(jìn)行功能測試自動化的工具,Selenium IDE的9大功能
新的Selenium IDE為許多IT專業(yè)人員帶來了功能測試自動化的優(yōu)勢,特別是前端開發(fā)人員。以下是開發(fā)人員應(yīng)該了解的有關(guān)新Selenium IDE的九件事。
1. Selenium IDE現(xiàn)在是跨瀏覽器的
當(dāng)記錄和回放工具于2006年出現(xiàn)時,F(xiàn)irefox就提供了支持,并且保持了十年。Selenium IDE現(xiàn)在可用作Google Chrome擴展程序和Firefox附加組件。
更好的是,Selenium IDE可以使用Selenium IDE的新命令行測試運行器SIDE Runner在Selenium WebDriver服務(wù)器上運行測試。SIDE Runner混合了Selenium IDE和Selenium Webdriver的元素。它需要一個Selenium IDE腳本,保存為.side文件,并使用瀏覽器驅(qū)動程序運行它,如ChromeDriver,EdgeDriver,F(xiàn)irefox的Geckodriver,IEDriver和SafariDriver。
SIDE Runner和上面的其他驅(qū)動程序可用作簡單的npm安裝。
2. 不再進(jìn)行脆弱的功能測試
多年來,脆弱測試一直是功能測試的一個問題,無論是記錄它們還是手工編寫它們?,F(xiàn)在開發(fā)人員正在更頻繁地發(fā)布新功能,他們的用戶界面(UI)代碼也在不斷變化。當(dāng)UI發(fā)生變化時,對象定位器也會發(fā)生變化。
Selenium IDE通過在錄制腳本時捕獲多個對象定位器來修復(fù)它。在回放過程中,如果Selenium IDE找不到一個定位器,它會嘗試其他每個定位器,直到找到一個定位器。只有當(dāng)沒有定位器工作時,你的測試才會失敗。這并不能保證腳本始終可以回放,但它確實可以使腳本與眾多更改隔離。如下所示,Selenium IDE捕獲linkText,xPath表達(dá)式和基于CSS的定位器。
3. 處理UI功能的條件邏輯
在測試Web應(yīng)用程序時,腳本必須處理可隨機出現(xiàn)在應(yīng)用程序中的間歇性UI元素。它們以cookie通知,特殊優(yōu)惠彈出窗口,報價請求,簡報訂閱,付費墻通知,廣告攔截器請求等形式出現(xiàn)。
條件邏輯是處理這些間歇性UI功能的好方法。開發(fā)人員可以輕松地將條件邏輯(也稱為控制流)插入到Selenium IDE腳本中。
4. 支持嵌入式代碼
與新的Selenium IDE API一樣廣泛,它并不能完成所有任務(wù)。因此,Selenium IDE具有執(zhí)行腳本和執(zhí)行異步腳本命令,可讓你的腳本調(diào)用JavaScript代碼段。
這為開發(fā)人員提供了極大的靈活性,可以充分利用JavaScript的靈活性和廣泛的庫。要使用它,請單擊要運行JavaScript的測試步驟,選擇“ 插入新命令”,然后在命令字段中輸入執(zhí)行腳本 或執(zhí)行異步腳本,如下所示。
5. Selenium IDE從CI構(gòu)建腳本運行
因為SIDE Runner是從命令行調(diào)用的,所以只要CI服務(wù)器可以調(diào)用selenium-ide-runner并將.side文件(測試腳本)作為構(gòu)建工件上載,就可以輕松地將其放入CI構(gòu)建腳本中。例如,以下是如何在Jenkins,Travis和CircleCI中上傳輸入文件。
這意味著Selenium IDE可以更好地集成到軟件開發(fā)技術(shù)堆棧中。此外,由技術(shù)含量較低的QA團隊成員(包括業(yè)務(wù)分析師)創(chuàng)建的腳本可以在每次構(gòu)建時運行。這有助于更好地使QA與開發(fā)人員保持一致,從而減少錯誤進(jìn)入生產(chǎn)。
6. 支持第三方插件
想象一下,構(gòu)建插件的公司可以讓Selenium IDE做各種各樣的事情,比如將腳本上傳到功能測試云,負(fù)載測試云或生產(chǎn)應(yīng)用程序監(jiān)控服務(wù)。
很多公司已將Selenium Webdriver集成到他們的產(chǎn)品中,未來Selenium IDE可能會發(fā)生同樣的情況。還可以構(gòu)建自己的Selenium IDE插件。
7. 可視UI測試
說到新的插件,Applitools推出了一個新的Selenium IDE插件,用于添加人工智能驅(qū)動的視覺驗證。通過Chrome和Firefox商店通過三秒鐘的安裝提供,只需插入Applitools API密鑰即可。
可視檢查點是確保UI呈現(xiàn)正確的好方法。而不是所有UI元素上的一堆斷言語句。這將是一個難以維護(hù),一個視覺檢查點檢查所有頁面元素。
最重要的是,視覺AI以與人類相同的方式查看Web應(yīng)用程序,忽略了微小的差異。這意味著更少的假bug會讓開發(fā)團隊感到沮喪。
8. 可視化測試響應(yīng)式Web應(yīng)用程序
在測試響應(yīng)式web應(yīng)用程序的可視化布局時,在各種屏幕尺寸(也稱為視窗)上進(jìn)行測試,以確保不出現(xiàn)任何問題。
當(dāng)對Selenium IDE使用可視UI測試時,你可以在Applitools Visual Grid上可視化地測試你的網(wǎng)頁,該網(wǎng)格包含100多種瀏覽器,模擬設(shè)備和視口大小的組合。
一旦在Visual Grid上運行測試,開發(fā)人員就可以輕松地檢查所有各種組合的測試結(jié)果。
9. 響應(yīng)性web漏洞無處可藏
Selenium IDE可以幫助查明前端錯誤的原因??梢允褂肁pplitools的根本原因分析來分析使用可視網(wǎng)格運行的每個Selenium IDE腳本。找到錯誤已經(jīng)不夠了,開發(fā)人員也需要修復(fù)它。
當(dāng)發(fā)現(xiàn)可視錯誤時,可以單擊它,只顯示相關(guān)(不是全部)文檔對象模型(DOM)和CSS差異。
總之,與軟件開發(fā)中的許多新興技術(shù)非常相似,Selenium IDE是使技術(shù)專業(yè)人員的生活更輕松,使他們能夠花更多的時間和精力創(chuàng)建代碼,以獲得更快的反饋。