大家好,我是《軟件測試 52 講》專欄的作者茹炳晟,我用我 16 年的測試知識和經(jīng)驗(yàn),梳理出了這一整套軟件測試的知識專欄。
現(xiàn)在,我從專欄中精心挑選了 10 個(gè)核心知識點(diǎn),組成了 10 道測試題目(包含 5 道選擇題,5 道問答題)。無論是否是我專欄的訂閱者,你都可以用這 10 道題目,找到自己的薄弱點(diǎn),對癥下藥;如果你已經(jīng)學(xué)習(xí)了一段時(shí)間,可以用這 10 道題目,檢測一下學(xué)習(xí)成果,查漏補(bǔ)缺。
我的建議是:你可以拿出紙筆,寫下這 10 道題的答案,然后再與文末的答案進(jìn)行對照。
A. 功能驗(yàn)證
B. 性能相關(guān)的驗(yàn)證
C. 兼容性相關(guān)的驗(yàn)證
D. 安全性相關(guān)的驗(yàn)證
E. 以上全是
A. On-the-fly 測試數(shù)據(jù)準(zhǔn)備的時(shí)間消耗
B. Out-of-box 測試數(shù)據(jù)的“臟數(shù)據(jù)”
C. 測試數(shù)據(jù)本身組合的復(fù)雜性和多樣性
D. 性能測試數(shù)據(jù)準(zhǔn)備的時(shí)間消耗
E. 微服務(wù)化后,跨多個(gè)微服務(wù)的數(shù)據(jù)準(zhǔn)備缺乏完整的知識體系
F. 微服務(wù)化后,測試數(shù)據(jù)準(zhǔn)備的環(huán)境依賴性
A. 網(wǎng)絡(luò)爬蟲
B. GUI 自動化功能測試
C. 頁面監(jiān)控
D. 以上全是
A. Postman
B. SoapUI
C. JMeter
D. Selenium
A. Appium
B. UFT
C. TestNG
D. LoadRunner
解析:在專欄第 1 篇文章《你真的懂測試嗎?從“用戶登錄”測試談起》中,我和你分享了設(shè)計(jì)一個(gè)測試用例,除了要考慮顯示的功能性需求外,還要涉及安全性、性能、兼容性等非功能性需求的驗(yàn)證。
解析:在專欄的第 15 篇文章《過不了的坎:聊聊 GUI 自動化過程中的測試數(shù)據(jù)》、第 36 篇文章《淺談測試數(shù)據(jù)的痛點(diǎn)》中,我從測試時(shí)機(jī)準(zhǔn)備的角度,和你分享了測試數(shù)據(jù)準(zhǔn)備有哪些痛點(diǎn)。
而關(guān)于現(xiàn)在流行的微服務(wù)模式,由于每個(gè)單一功能的服務(wù)都是獨(dú)立分開部署的,所以我們在準(zhǔn)備測試數(shù)據(jù)時(shí),還可能會遇到諸如環(huán)境依賴、跨多個(gè)微服務(wù)的數(shù)據(jù)準(zhǔn)備缺乏完整的知識體系等問題。
解析:我在專欄的第 16 篇文章《腦洞大開:GUI 測試還能這么玩(Page Code Gen Data Gen Headless)?》中,和你分享過:無頭瀏覽器的主要應(yīng)用場景,包括 GUI 自動化測試、頁面監(jiān)控以及網(wǎng)絡(luò)爬蟲這三種。
解析:Selenium 屬于 GUI 自動化測試工具。我還在第 12 篇文章《從 0 到 1:你的第一個(gè) GUI 自動化測試》中,基于 Selenium 和你一起搭建了我們的第一個(gè)測試用例,你還記得嗎?
解析:UFT(以前的 QTP)屬于一款 GUI 測試工具,LoadRunner 屬于性能測試工具。而 TestNG 是一個(gè)用來簡化廣泛的測試需求的測試框架,適用于從單元測試到集成測試階段的測試。
Appium 則是一款很好用的移動測試工具。如果你不記得它的使用方法了,可以再回顧下第 21 篇文章《移動測試神器:帶你玩轉(zhuǎn) Appium》中的內(nèi)容。
考點(diǎn)分析:GUI 自動化測試腳本的分層設(shè)計(jì)原理。
大量 GUI 自動化測試能夠成功的關(guān)鍵,就在于腳本的分層設(shè)計(jì)。而腳本分層設(shè)計(jì)的核心思想就是模塊化。
首先,我們需要對頁面進(jìn)行抽象,形成頁面對象模型。在這樣的測試用例中,你看到的都是類似于 XXXPage.YYYComponent.ZZZOperation 的語句。它們和實(shí)際的手工測試可以建立一一對應(yīng)的關(guān)系,用通俗的話語來講,就是某某頁面上的某某元素,執(zhí)行了某某操作。
接下來,為了使 GUI 自動化測試腳本更加符合業(yè)務(wù)場景的描述,同時(shí)進(jìn)一步提高腳本的封裝性和可重用性,就需要引入業(yè)務(wù)流程腳本的概念。這里,業(yè)務(wù)流程和實(shí)際的業(yè)務(wù)流程也是一一對應(yīng)的關(guān)系。這樣,測試用例就可以通過調(diào)用業(yè)務(wù)流程腳本來實(shí)現(xiàn),測試用例本身的可讀性以及可維護(hù)性也會更好。同樣地,業(yè)務(wù)流程腳本,也是基于頁面對象模型實(shí)現(xiàn)的。
關(guān)于頁面對象模型的細(xì)節(jié),你可以再回顧下第 13 篇文章《效率為王:腳本與數(shù)據(jù)的解耦 Page Object 模型》中的相關(guān)內(nèi)容。
而關(guān)于業(yè)務(wù)流程抽象的細(xì)節(jié),你可以再回顧下第 14 篇文章《更接近業(yè)務(wù)的抽象:讓自動化測試腳本更好地描述業(yè)務(wù)》中的相關(guān)內(nèi)容。
若你對另外 5 道問答題的答案感興趣,你可以掃碼免費(fèi)看我專欄的最后一篇文章:《測一測 | 這些軟件測試題目,你都掌握了嗎?》
《軟件測試 52 講》也正在限時(shí)優(yōu)惠¥79
另外,我今天晚上 19:30-20:30 在極客時(shí)間有一場直播,有興趣的朋友歡迎來直播互動。掃下方的二維碼,加我專欄運(yùn)營 Monica 微信:imonica1010,領(lǐng)取我制作的一整套「軟件測試工程師進(jìn)階圖譜」。
聯(lián)系客服