分分鐘玩轉UI自動化測試

2022-08-03 00:21:16 字數 2633 閱讀 7630

有沒有那麼一刻,看到自動模擬使用者操作介面感覺好神奇。

關於什麼叫 ui 自動化測試就不解釋了,基本上是你剛才腦海裡想到什麼就是什麼。

在分層自動化測試中包括:ui 測試、整合/介面測試、單元測試。大神告訴我:ui 自動化測試在自動化測試中佔比只有10%。先不用在乎具體這個比例是什麼,我們關注的是實際價值,這個需要根據實際專案來判斷。不過對於 ui 自動化,基本上做冒煙測試用例的自動化就差不多了,從 ui 上來驗證主業務流程的穩定性,同時降低一些維護成本。

今天我們來聊聊 webdriverio,webdriverio 是 webdriver node.js 模組,api 非常豐富,同時支援 mobile,不過說到 webdriver 那就需要先了解一下 selenuim 的發展過程,這裡就不裝逼了,有興趣的可以到官方**瞅瞅。

webdriverio 有兩種使用模式,一種是 standalone mode,一種是 wdio。官方其實是推薦使用 wdio,大概幾個原因:

除錯方便

多模組並行測試

命令的執行都是同步的,直接通過變數接收結果,不用像 standalone mode 執行乙個非同步操作

提供配置檔案,使測試引數的配置更簡單

下面開始我們的專案:

專案搭建條件:

安裝 jdk

安裝 node.js

安裝 webdriverio

安裝 selenium-standalone

安裝 wdio

安裝 mocha,測試框架

安裝 chai,診斷庫

目錄結構:

": 關於 wdio-spec-reporter、allure-commandline、wdio-allure-reporter 不一定全需要安裝。

selenium-standalone 包安裝成功後需要執行以下命令來安裝各瀏覽器 driver,install的過程中可能會遇到問題,建議fq試試

selenium-standalone install

安裝成功後,執行以下命令就可以啟動 selenium-server:

selenium-standalone start

wdio 配置檔案:

var config = require('

./config');

var common = require('

./common');

exports.config =

}],loglevel:

'silent',

coloredlogs: true,

baseurl: config.weburl,

waitfortimeout: 100000, //100s

framework:

'mocha',

reporters: [

'spec

', '

allure

'], //兩種測試報告方式

reporteroptions:

},mochaopts: ,

//每次執行測試前把之前allure保留的測試結果清空

onprepare: function (config, capabilities)

};

登入測試用例:

describe('

login-test

', function () );

});

方法註冊與呼叫說明:

//可以通過 browser.checkinvitesuccess()呼叫

browser.addcommand(

'checkinvitesuccess

', function (inboxtype) );

return

text;

});//斷言正規表示式方法

assert.match(result.value, /已經成為好友|成功加入|已經申請|成功申請/, '

判斷收到的訊息是否包含指定的內容');

});

如果對軟體測試、介面測試、自動化測試、面試經驗交流。感興趣可以加軟體測試交流:1085991341,還會有同行一起技術交流。

執行測試:

控制台a

npm run selenium //啟動selenium-server

控制台b

npm run test //執行test

生成測試報告:

總結:

UI自動化測試隨筆

昨天給開發的同事講我們正在做的自動化測試,同事問了句 為什麼api的測試不需要寫 了,而ui的測試還需要寫那麼多 呢?能不寫 麼?目前我們的自動化測試的現狀 目前主要覆蓋兩個部分 api的測試和ui的測試。對於api的測試經過框架的封裝,基本上只需要編寫乙個xml描述的test case就可以了,x...

UI自動化測試框架

python selenium unittest ddt htmlreport分布式資料驅動自動化測試框架結構 1 business 公共業務模組,如登入模組,可以把登入模組進行封裝供呼叫 login business.py from page object.common page.login pa...

UI自動化測試 介面測試等自動化測試策略

今天跟大家介紹ui測試 介面測試 單元測試主要內容,以及每種測試花費時間討論。ui測試 selenium ui測試是最接近軟體真實使用者使用行為的測試型別。通常是模擬真實使用者使用軟體的行為,即模擬使用者在軟體介面上的各種操作,並驗證這些操作對應的結果是否正確。介面測試 api測試 api測試,主要...