最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

【軟件測試從業(yè)必看】不宜使用Selenium自動(dòng)化的10個(gè)測試場景

2021-12-14 17:34 作者:博為峰  | 我要投稿

盡管在很多情況下測試自動(dòng)化是有意義的,但一些測試場景是不應(yīng)該使用自動(dòng)化測試工具的,比如Selenium、WebDriver。


下面有10個(gè)示例,來解釋為什么自動(dòng)化在這種情況下使用時(shí)沒有意義的,我還將為您提供每種方法的替代方法。


01

驗(yàn)證碼


CAPTCHA是完全自動(dòng)的公共的圖靈測試,以區(qū)分計(jì)算機(jī)和人類之間的區(qū)別的簡稱,它的存在是為了防止自動(dòng)化,因此甚至不值得嘗試。


在測試過程中,有兩種主要策略可以解決CAPTCHA檢查問題。如下:

  • 在測試環(huán)境中禁用CAPTCHA。這可能是被測軟件中的簡單配置?;蛘呱踔量梢栽跍y試的URL參數(shù)中配置;

  • 添加一個(gè)掛鉤,以允許測試?yán)@過驗(yàn)證碼。


02

外觀測試


視覺自動(dòng)化測試意味著檢查頁面如何呈現(xiàn)和呈現(xiàn)給最終用戶。這對于檢查多種設(shè)備和屏幕分辨率非常有價(jià)值。我們中的許多人試圖通過使用代碼檢查單個(gè)頁面上是否存在數(shù)十個(gè)甚至數(shù)百個(gè)元素來做到這一點(diǎn)。WebDriver不是正確的工具。


相反,最好使用專用的視覺測試工具。這是我以最受歡迎的屏幕分辨率測試網(wǎng)站的示例:


實(shí)現(xiàn)代碼:


03

雙因素認(rèn)證


您不應(yīng)該通過UI自動(dòng)化的另一種情況是雙因素身份驗(yàn)證(或2FA)。即使用“身份驗(yàn)證器”移動(dòng)應(yīng)用(例如Google Authenticator或Microsoft Authenticator)生成一次密碼,并通過SMS或電子郵件發(fā)送一次密碼的地方。


在Selenium中自動(dòng)化它是一個(gè)巨大的挑戰(zhàn),但這并不意味著它無法完成。盡管可以自動(dòng)化,但它是要添加的另一層,并不安全。因此,最好避免完全自動(dòng)化。


解決2FA檢查的三個(gè)選項(xiàng)如下:

  • 在測試環(huán)境中為某些用戶禁用2FA,因此您可以在自動(dòng)化中使用這些用戶憑據(jù)。

  • 在測試環(huán)境中禁用2FA。

  • 如果您從某些IP登錄,請禁用2FA(通過這種方式,您可以配置測試計(jì)算機(jī)的IP來避免這種情況)。


04

文件下載


通過API自動(dòng)執(zhí)行文件下載不是理想的方法,因?yàn)锳PI不會公開下載進(jìn)度。下載文件不被視為模擬用戶與Web平臺交互的必要方面。


因此,您應(yīng)該考慮完成此解決方法:

使用Selenium和任何必需的cookie查找鏈接,并將其傳遞給HTTP請求庫,例如REST保證?(Java),fetch (JavaScript)或 libcurl (跨平臺) 。


05

HTTP響應(yīng)代碼


HTTP狀態(tài)代碼是Internet上網(wǎng)站服務(wù)器給出的標(biāo)準(zhǔn)響應(yīng)代碼。當(dāng)網(wǎng)頁或其他資源無法正確加載時(shí),這些代碼有助于確定問題的原因。在自動(dòng)化功能測試中,檢查狀態(tài)碼不是測試失敗的特別重要的細(xì)節(jié);之前的步驟更為重要。


最好將API測試保留在這一層。WebDriver不是API測試工具。因此,您可以使用諸如 REST Assured(Java),fetch(JavaScript)和 RestSharp(.NET)之類的庫。


06

Gmail、電子郵件和Facebook登錄


您不應(yīng)該通過UI自動(dòng)化的另一種情況是Gmail,電子郵件和Facebook登錄。不建議使用WebDriver登錄這些類型的網(wǎng)站。這違反了使用條款,而且速度慢且不可靠。


一般而言,較長的測試更加脆弱且不可靠,這使您面臨測試失敗的風(fēng)險(xiǎn)。對超過20億次測試的研究證實(shí),持續(xù)時(shí)間超過2分鐘的測試失敗的可能性是原來的兩倍。


相反,最好使用電子郵件提供商提供的API,或者對于Facebook,使用 公開顯示用于創(chuàng)建測試帳戶的API的開發(fā)人員工具服務(wù)(Gmail API在這里)。


使用API似乎有些額外的工作,但是您將獲得速度,可靠性和穩(wěn)定性的回報(bào)。API也不太可能更改。但是,網(wǎng)頁和HTML定位器經(jīng)常更改,并且需要您更新測試框架。


07

性能測試


通常不建議使用Selenium和WebDriver進(jìn)行性能測試,因?yàn)樗⑽瘁槍ぷ鬟M(jìn)行優(yōu)化,因此您不太可能獲得有價(jià)值的結(jié)果。WebDriver測試受到許多外部和內(nèi)部脆弱性的影響,而這超出了您的控制范圍。


其中包括瀏覽器的啟動(dòng)速度,HTTP服務(wù)器的速度,托管JavaScript或CSS的第三方服務(wù)器的響應(yīng)以及WebDriver實(shí)現(xiàn)本身的檢測損失等。它將導(dǎo)致結(jié)果變化。您將獲得較慢的性能測試,其中包括后端和前端性能。


而是使用免費(fèi)工具(例如 Google Lighthouse)?來提高前端性能。然后,使用免費(fèi)工具(如Apache JMeter)執(zhí)行單獨(dú)的負(fù)載或壓力測試 。


為了發(fā)現(xiàn)需要改進(jìn)的地方,您需要能夠獨(dú)立于環(huán)境差異來分析總體性能,識別不良的代碼實(shí)踐并分解單個(gè)資源(即CSS或JavaScript)的性能。


08

鏈接爬蟲


我不建議使用WebDriver進(jìn)行鏈接爬蟲,換句話說,通過鏈接來爬網(wǎng)。您可以做到,但是WebDriver絕對不是此任務(wù)的理想工具,因?yàn)樗枰恍r(shí)間才能啟動(dòng)。這可能需要一分鐘的時(shí)間,具體取決于測試的編寫方式,只是要轉(zhuǎn)到頁面并遍歷文檔對象模型。


此外,編寫遍歷頁面和捕獲鏈接的邏輯只是浪費(fèi)時(shí)間。


除了使用WebDriver,還有許多更簡單的方法??梢运阉鬟@兩個(gè)免費(fèi)工具:

  • www.brokenlinkcheck.com,它在幾分鐘之內(nèi)就找到了我網(wǎng)站上所有斷開的鏈接。

  • www.deadlinkchecker.com 。


09

視頻流


如今,視頻流越來越流行,但是您可能不想通過UI對其進(jìn)行自動(dòng)化。Selenium通常無法識別視頻控件。JavaScript Executor和flex-ui-selenium可以在某種程度上起作用,但是它們并不完全可靠。


相反,請查看 StreamTest,它是一個(gè)免費(fèi)工具,可以衡量最終用戶的體驗(yàn)質(zhì)量。您甚至可以添加監(jiān)視。


10

崩潰恢復(fù)


恢復(fù)測試是一種軟件測試技術(shù),可驗(yàn)證軟件從故障(例如軟件和硬件崩潰)中恢復(fù)的能力。您可能要測試應(yīng)用程序的崩潰恢復(fù)。最好手動(dòng)測試。這并不是說您不能使用Selenium進(jìn)行測試,但是這樣做并不可行或無益。


對于可靠性測試,從開發(fā)的各個(gè)階段(例如設(shè)計(jì)和操作階段)收集數(shù)據(jù)。由于成本和時(shí)間等限制,測試受到限制。


11

總結(jié)


以上是您不應(yīng)該通過UI自動(dòng)化的十大場景。包括驗(yàn)證碼測試、外觀測試、雙因素驗(yàn)證、視頻、崩潰、鏈接爬蟲、性能測試、文件下載、http狀態(tài)碼、電子郵件登錄。


您可以在工作時(shí)參考它們,并嘗試在開發(fā),編碼和測試時(shí)確定最佳的方法。


盡管在某些情況下有變通辦法,但首先考慮為什么不應(yīng)該自動(dòng)化這些特定元素的原因。



【軟件測試從業(yè)必看】不宜使用Selenium自動(dòng)化的10個(gè)測試場景的評論 (共 條)

分享到微博請遵守國家法律
宁津县| 札达县| 永定县| 徐汇区| 诏安县| 东安县| 江油市| 会理县| 思南县| 泸西县| 堆龙德庆县| 休宁县| 双鸭山市| 江阴市| 万载县| 将乐县| 北安市| 满城县| 宁蒗| 巴楚县| 西畴县| 临潭县| 襄樊市| 宁德市| 永春县| 安义县| 涿鹿县| 达州市| 信丰县| 石家庄市| 施秉县| 德兴市| 阿坝| 龙川县| 承德市| 湟源县| 通许县| 房产| 兖州市| 文化| 榆林市|