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

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

02 自動化測試的基礎(chǔ)知識

2021-05-13 15:27 作者:Airtest醬  | 我要投稿

同學(xué)們好,我是網(wǎng)易AirtestProject的團(tuán)隊(duì)成員曉娟,歡迎大家來到我們的視頻教程專欄《14天Airtest自動化測試小白課程》。

今天我們主要來講一下自動化測試的基礎(chǔ)知識。只有對自動化測試的理論知識有所了解之后,我們才能更加明確自動化測試究竟在做些什么事情,以及我們該如何進(jìn)行自動化測試實(shí)操。

軟件測試的分類

我們先來了解下軟件測試。

軟件測試是使用人工或自動的手段來運(yùn)行或測定某個(gè)軟件系統(tǒng)的過程,其目的在于檢驗(yàn)它是否滿足規(guī)定的需求或弄清預(yù)期結(jié)果與實(shí)際結(jié)果之間的差別。通俗點(diǎn)來說,就是一個(gè)用來鑒定軟件是否符合需求或者其是否有缺陷的過程。

① 我們常常聽到的黑盒、白盒測試,其實(shí)就是把軟件測試根據(jù) 測試方法 來進(jìn)行分類:

  • 黑盒測試:為最基礎(chǔ)的功能測試,不關(guān)心內(nèi)部的代碼實(shí)現(xiàn),而僅驗(yàn)證輸入輸出的正確性。

  • 白盒測試:基于邏輯驅(qū)動或者基于代碼測試,打開代碼內(nèi)部的實(shí)現(xiàn),去研究源代碼中的接口或者具體實(shí)現(xiàn)的正確性。

  • 灰盒測試:則是介于黑白盒測試之間的一種測試方法

② 按 測試目標(biāo) 來劃分,軟件測試又可以分為功能測試、性能測試、壓力測試和兼容性測試等等。因?yàn)闇y試目的不同,所以我們要獲取的測試數(shù)據(jù)往往差別也比較大。舉個(gè)例子,做性能測試,我們會更關(guān)注系統(tǒng)的各項(xiàng)性能指標(biāo);而做兼容性測試的時(shí)候,我們則會更關(guān)注軟件在不同機(jī)型上的兼容性數(shù)據(jù)。各種目標(biāo)測試的定義我們已經(jīng)寫在了PPT上,同學(xué)們可以詳細(xì)閱讀下:

  • 功能測試:對產(chǎn)品和模塊的各個(gè)功能進(jìn)行測試

  • 性能測試:對系統(tǒng)的各項(xiàng)性能指標(biāo)進(jìn)行測試

  • 壓力測試:測試軟件或系統(tǒng)的負(fù)載能力,挖掘隱患

  • 兼容性測試:對產(chǎn)品和軟硬件之間的兼容性進(jìn)行測試,比如軟件在各種不同安卓機(jī)型上的兼容性

  • 安全性測試:通過不同方法發(fā)現(xiàn)軟件的安全性問題,比如信息泄露、非法使用、惡意破壞等等

  • 其他專項(xiàng)測試:比如弱網(wǎng)絡(luò)測試、耗電量測試、流暢度測試等等

③ 另外比較常見的分類還有按軟件 開發(fā)階段 來劃分的,同學(xué)們也可以根據(jù)PPT上給出的詳細(xì)內(nèi)容了解下,其中回歸測試也是我們經(jīng)常要做的一種測試:

  • 單元測試:對程序中的獨(dú)立模塊進(jìn)行白盒測試,目的是檢驗(yàn)軟件基本組成單位的正確性

  • 集成測試:通過對單元模塊進(jìn)行組合測試,目的是驗(yàn)證單元模塊之間的接口是否正確

  • 系統(tǒng)測試:對整個(gè)系統(tǒng)進(jìn)行完整測試,驗(yàn)證整個(gè)系統(tǒng)的正確性與合規(guī)性

  • 回歸測試:當(dāng)軟件發(fā)生變更的時(shí)候,對這次變更可能受影響的功能模塊進(jìn)行驗(yàn)證

  • 驗(yàn)收測試:測試的最后一個(gè)階段,軟件發(fā)布或者上線前確保軟件質(zhì)量

自動化測試的價(jià)值

好了,了解完軟件測試的基本定義和常見分類之后,我們再來聊聊自動化測試。自動化測試是把以人為驅(qū)動的測試行為轉(zhuǎn)化為機(jī)器執(zhí)行的一種過程。通常,在設(shè)計(jì)了測試用例并通過評審之后,由測試人員根據(jù)測試用例中描述的規(guī)程一步步執(zhí)行測試,得到實(shí)際結(jié)果與期望結(jié)果的比較。在此過程中,為了節(jié)省人力、時(shí)間或硬件資源,提高測試效率,便引入了自動化測試的概念。

自動化測試的意義,就在于大幅度提高了測試效率,節(jié)省了大量的測試人力。在互聯(lián)網(wǎng)飛速發(fā)展的背景下,產(chǎn)品的迭代速度也非常快,單純的手工測試已經(jīng)無法滿足這個(gè)快速變化的過程。所以我們才需要自動化測試技術(shù),來提高整個(gè)測試的效率。

自動化測試的意義

測試人員通過自動化測試大大提升了測試效率之后,就會有更多的時(shí)間去思考產(chǎn)品質(zhì)量策略和新的測試場景這些方面的內(nèi)容,從而在產(chǎn)品快速迭代的情況下也能保障產(chǎn)品的質(zhì)量。

另外,我們還在拉勾網(wǎng)上爬取了400多個(gè)測試工程師的崗位要求,分析得到,大部分公司都非常希望測試人員擁有自動化測試的能力,這也間接說明了自動化測試是非常受公司所重視的:

拉勾網(wǎng)工程師崗位要求詞云


因此,作為一名測試人員,自動化測試是我們的必然選擇,也是技術(shù)發(fā)展的選擇。

主流自動化測試框架

最后,我想帶大家來看一下目前市面上一些主流的自動化測試框架。

軟件測試的自動化一般可以分為3層:

  • 代碼層的單元測試

  • 接口層的集成測試

  • UI 層的測試

① 代碼層自動化

代碼層的自動化,一般指針對代碼進(jìn)行的單元測試,比較常用的單元測試框架比如Java的Junit、Python的PyUnit等等。

② 接口層自動化

接口層的自動化測試主要是對系統(tǒng)和組建之間的接口進(jìn)行測試,目標(biāo)是校驗(yàn)數(shù)據(jù)的交換和業(yè)務(wù)的流程。由于接口比代碼單元要穩(wěn)定很多,所以自動化腳本維護(hù)成本更低、收益也更大,具有不錯的性價(jià)比。常用的測試工具有Jmeter、LoadRunner、Robot Framework、Postman等等:

Jmeter:由Apache組織開發(fā)的基于Java的接口測試、壓力測試和性能測試工具,起初為Web測試而設(shè)計(jì),后來逐步擴(kuò)展到其他領(lǐng)域,可以用來測試靜態(tài)或者動態(tài)的資源。

LoadRunner:HP公司提供的一款性能測試和壓力測試工具,可以通過模擬成千上萬用戶實(shí)施并發(fā)操作來測試系統(tǒng)性能,并且有詳細(xì)的測試結(jié)果分析,是性能測試和壓測的不錯選擇。

Robot Framework:一款開源的自動化測試框架,具有很好的可擴(kuò)展性??蚣苡胮ython編寫,同時(shí)也提供跨平臺支持。

Postman:簡單方便且功能強(qiáng)大的接口調(diào)試工具,API調(diào)試首選。

③ UI層自動化

基于UI層的自動化測試框架要復(fù)雜很多,從平臺種類來講,有Windows,Linux,Android,Ios,Web,還有最新的小程序等等,常見的UI層自動化測試框架主要有:Appium、Selenium、Airtest和Poco等等:

  • Appium:一款開源的自動化測試工具,支持IOS、Android、Windows和Mac應(yīng)用。擁有跨平臺和跨語言等特點(diǎn)。

  • Selenium:一款開源的Web應(yīng)用自動化測試工具,可以直接運(yùn)行在多種瀏覽器平臺中,就像用戶真實(shí)操作一樣。

  • Airtest:基于Python的、跨平臺的UI自動化測試框架,基于圖像識別原理,適用于游戲和App等。

  • Poco:基于UI控件搜索的自動化測試框架,其核心優(yōu)勢是除了對Android、IOS之外,對游戲也是支持的,同時(shí)也支持微信小程序、微信小游戲和H5應(yīng)用。

課程小結(jié)

好啦,本次課程的主要內(nèi)容就到這里結(jié)束啦。我們來回顧一下,這節(jié)課我們主要講述了軟件測試的定義和分類、自動化測試的定義和價(jià)值所在,最后我們還簡單了解了一些主流的自動化測試框架。

自動化測試基礎(chǔ)知識小結(jié)

關(guān)于自動化測試的基礎(chǔ)知識我們就介紹到這里,下節(jié)課我們會進(jìn)入一個(gè)新的專題:?設(shè)備連接?。屆時(shí)我們會跟大家詳細(xì)講述并實(shí)操下如何連接各種平臺的測試設(shè)備來進(jìn)行自動化測試,下期我們不見不散~


02 自動化測試的基礎(chǔ)知識的評論 (共 條)

分享到微博請遵守國家法律
南开区| 武冈市| 拜城县| 莱西市| 仁寿县| 边坝县| 富裕县| 双牌县| 惠州市| 漳州市| 遵义县| 达拉特旗| 左云县| 元江| 北碚区| 新丰县| 贡觉县| 望谟县| 淳安县| 翼城县| 四子王旗| 北流市| 新绛县| 隆化县| 张北县| 涞水县| 天峨县| 库车县| 卓尼县| 泌阳县| 马公市| 北海市| 灵武市| 乐清市| 龙胜| 南乐县| 阿拉善盟| 临城县| 昆明市| 陇南市| 六枝特区|