翻譯|行業(yè)資訊|編輯:鄭恭琳|2021-03-09 13:34:17.570|閱讀 327 次
概述:測(cè)試自動(dòng)化可能很棘手,對(duì)于測(cè)試和質(zhì)量工程師來說,過渡到最佳實(shí)踐,使用哪種工具以及在過渡到Lightning時(shí)更新自動(dòng)化都是不常見的。該博客文章介紹了Salesforce上UI測(cè)試自動(dòng)化的前景,重點(diǎn)是Salesforce測(cè)試和可用解決方案的獨(dú)特考慮因素,因此您可以做出明智的決定,確定哪種UI測(cè)試自動(dòng)化解決方案最適合您的Salesforce組織。
# 界面/圖表報(bào)表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關(guān)鏈接:
測(cè)試自動(dòng)化可能很棘手,對(duì)于測(cè)試和質(zhì)量工程師來說,過渡到最佳實(shí)踐,使用哪種工具以及在過渡到Lightning時(shí)更新自動(dòng)化都是不常見的。該博客文章介紹了Salesforce上UI測(cè)試自動(dòng)化的前景,重點(diǎn)是Salesforce測(cè)試和可用解決方案的獨(dú)特考慮因素,因此您可以做出明智的決定,確定哪種UI測(cè)試自動(dòng)化解決方案最適合您的Salesforce組織。
Salesforce上的UI測(cè)試自動(dòng)化在測(cè)試創(chuàng)建和測(cè)試維護(hù)方面都表現(xiàn)出一些獨(dú)特的特性。
測(cè)試創(chuàng)建
借助Lightning,我們做出了一個(gè)有意識(shí)的決定,即在元素上隱藏標(biāo)識(shí)符。這樣可以防止開發(fā)人員直接依賴于隨時(shí)間變化的實(shí)現(xiàn)細(xì)節(jié)。從開發(fā)的角度來看,這種不透明性改善了組件的長(zhǎng)期可維護(hù)性,但它妨礙了UI測(cè)試自動(dòng)化,而UI測(cè)試自動(dòng)化過去一直依賴于這些類型的實(shí)現(xiàn)細(xì)節(jié)來識(shí)別頁面上的可視元素。
此外,Lightning Web Components將影子文檔對(duì)象模型(Shadow DOM)用作隔離機(jī)制,以防止組件相互影響。組件之間的Shadow DOM邊界打破了在頁面上定位元素的傳統(tǒng)方式。
測(cè)試維護(hù)
Salesforce致力于不斷提高可用性,以便為客戶提供新穎,更高效的方法來實(shí)現(xiàn)其業(yè)務(wù)目標(biāo)。此外,我們最近將頁面從Aura遷移到Lightning Web Components的努力導(dǎo)致其底層結(jié)構(gòu)發(fā)生了重大變化。所有這些更改的副作用之一是對(duì)測(cè)試維護(hù)的影響。因?yàn)檫@些改進(jìn)修改了文檔對(duì)象模型(Document Object Model,DOM)結(jié)構(gòu),所以依賴DOM中特定實(shí)現(xiàn)細(xì)節(jié)的測(cè)試往往很脆弱,并且需要不斷地更新發(fā)行版之間的內(nèi)容。
如果要在Salesforce上自動(dòng)化UI測(cè)試,則可以使用三種潛在的解決方案。對(duì)于每種解決方案,我們都會(huì)牢記重要的注意事項(xiàng)。
獨(dú)立軟件供應(yīng)商的商業(yè)現(xiàn)貨產(chǎn)品
Salesforce生態(tài)系統(tǒng)中的第三方付費(fèi)解決方案允許您通過“點(diǎn)擊而不編碼”構(gòu)建一套自動(dòng)化的UI測(cè)試,這對(duì)于UI測(cè)試自動(dòng)化而言確實(shí)是一個(gè)不錯(cuò)的選擇。負(fù)責(zé)這些解決方案的獨(dú)立軟件供應(yīng)商會(huì)在每個(gè)Salesforce版本中更新其工具鏈,以確保基于其解決方案構(gòu)建的測(cè)試能夠繼續(xù)平穩(wěn)運(yùn)行。這些解決方案最適合擁有管理資源的客戶,他們對(duì)基于點(diǎn)擊的解決方案感到滿意。
關(guān)鍵注意事項(xiàng)
與系統(tǒng)集成商合作構(gòu)建自定義測(cè)試自動(dòng)化基礎(chǔ)架構(gòu)
如果您的內(nèi)部工程和管理資源最少,和/或現(xiàn)有的System Integrator關(guān)系有限,則此解決方案可能適合您。作為Salesforce生態(tài)系統(tǒng)的一部分,有許多系統(tǒng)集成商合作伙伴可為不希望內(nèi)部構(gòu)建自己的軟件解決方案的客戶提供全方位服務(wù)的解決方案。對(duì)于沒有所需人員來構(gòu)建和維護(hù)自己的測(cè)試自動(dòng)化系統(tǒng)的客戶來說,與系統(tǒng)集成商合作構(gòu)建定制的測(cè)試自動(dòng)化基礎(chǔ)結(jié)構(gòu)可能是最可行的解決方案。在系統(tǒng)集成商已經(jīng)在執(zhí)行Salesforce定制的情況下,將合同擴(kuò)展到包括UI測(cè)試自動(dòng)化可能是一種邏輯策略。
關(guān)鍵注意事項(xiàng)
開源測(cè)試框架
最后,我們的第三個(gè)也是最自定義的解決方案是使用開放源代碼測(cè)試框架,該框架適用于上述選項(xiàng)不夠用且您擁有大量工程資源的情況。有多種開源測(cè)試框架可用于UI測(cè)試自動(dòng)化,以實(shí)現(xiàn)基于瀏覽器的體驗(yàn)。我們簡(jiǎn)要討論了最常見的問題,但是您可以探索和使用其他內(nèi)容。
Core Selenium
Selenium WebDriver是W3C WebDriver規(guī)范的最流行的實(shí)現(xiàn)。盡管它很流行,但它為測(cè)試自動(dòng)化提供了簡(jiǎn)單的支持,并且經(jīng)常需要其他輔助工具來補(bǔ)充其基本功能。例如,與WebdriverIO相比,它沒有對(duì)Shadow DOM的內(nèi)置支持。尋找Shadow DOM支持的客戶需要自己實(shí)現(xiàn)這些功能。
WebdriverIO
WebdriverIO是基于WebDriver規(guī)范的基于JavaScript的現(xiàn)代測(cè)試框架。它提供了Selenium中不可用的大量功能,包括作為一流公民的Page對(duì)象和本機(jī)Shadow DOM遍歷。但是,它仍然需要大量且持續(xù)的工程投資。
關(guān)鍵注意事項(xiàng)
對(duì)于給定的Salesforce組織,在UI測(cè)試自動(dòng)化策略中需要考慮多個(gè)獨(dú)特因素,但是Salesforce生態(tài)系統(tǒng)中有許多可用的解決方案。根據(jù)每個(gè)Salesforce客戶的特點(diǎn),使用哪種解決方案的決定會(huì)有所不同。
對(duì)于那些對(duì)使用開放源代碼測(cè)試框架感興趣的人,這里有一些技術(shù)資源,可以幫助您克服在Salesforce平臺(tái)上進(jìn)行測(cè)試時(shí)遇到的一些獨(dú)特問題。
缺少元素標(biāo)識(shí)符
影子DOM封裝
不斷變化的頁面結(jié)構(gòu)
Jonathan Au推動(dòng)了跨越Salesforce平臺(tái)的各種大規(guī)模戰(zhàn)略計(jì)劃。他對(duì)技術(shù)的變革力量充滿熱情,并且是終身學(xué)習(xí)者。您可以在Trailblazer.me上關(guān)注他。
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請(qǐng)務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請(qǐng)郵件反饋至chenjj@fc6vip.cn
文章轉(zhuǎn)載自: