国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

7個(gè)超好用的測試框架(總有一款適合你)

這篇具有很好參考價(jià)值的文章主要介紹了7個(gè)超好用的測試框架(總有一款適合你)。希望對大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

昨天吃飯的時(shí)候和同事聊到測試框架,于是決定根據(jù)自己的實(shí)戰(zhàn)工作經(jīng)驗(yàn)總結(jié)一波好用的測試框架。本來文章里一共11個(gè)的,最后想想還是剔除掉了Maxim、Cypress、Gauge和ZTF(Zentao Testing Framework)。

工具在精而不在多,畢竟還是得以我們測試工程師平常用的最多的為基準(zhǔn)。

另外,當(dāng)你學(xué)習(xí)一個(gè)新的工具時(shí),建議你直接看官方文檔。(以下工具的官網(wǎng)鏈接,我都幫大家列出來了)

雖然官網(wǎng)常常是英文的,但是它也是最權(quán)威、最官方的。百度直接查的話,有的文章常常有錯(cuò)誤,或者說文中所說內(nèi)容已經(jīng)過時(shí)了,小白很容易被誤導(dǎo)。而且程序員難免要接觸英文,當(dāng)你習(xí)慣看官方文檔后,你會發(fā)現(xiàn)自己的英文水平也在不知不覺間提高了。

好了,不說廢話直接進(jìn)入正文:

目錄如下:

1、Junit
2、Selenium
3、TestNG
4、Cucumber
5、pytest
6、Appium
7、ATX

我們一個(gè)個(gè)來說:

一、Junit(白盒測試、API自動化、UI自動化)

【官網(wǎng)】

https://junit.org/junit5/

【簡介】

Junit是一個(gè)面向Java編程語言的單元測試框架。

單元測試:針對最小的功能單元編寫測試代碼。Java程序最小的功能單元是方法,對Java編程語言進(jìn)行單元測試,說白了就是對Java的方法進(jìn)行測試。

用 Junit 編寫單元測試的好處有:

非常簡單地組織測試代碼,并隨時(shí)運(yùn)行它們。
可以自動生成測試報(bào)告,收集成功的測試用例和失敗的測試用例,統(tǒng)計(jì)測試成功率和代碼覆蓋率。
幾乎所有的IDE工具都集成了Junit。
任何Java開發(fā)者都應(yīng)當(dāng)學(xué)習(xí)并使用Junit編寫單元測試;同時(shí),Java 技術(shù)棧的測試或者測試開發(fā)工程師,也可以學(xué)習(xí) Junit 來作為自動化測試底層框架。

Junit目前最新版本是5。

【使用場景】

常用于單元測試(白盒測試)
自動化測試的用例管理和用例執(zhí)行框架(API自動化、UI自動化)。
7個(gè)超好用的測試框架(總有一款適合你)

二、Selenium(Web自動化、爬蟲)

【官網(wǎng)】

https://www.selenium.dev/

【簡介】

Selenium 是使用最為廣泛的 Web 自動化測試(UI自動化)框架之一。

Selenium 可以完全模擬用戶對主流瀏覽器進(jìn)行操作,主要包括鼠標(biāo)事件和鍵盤事件。

鼠標(biāo)事件:右擊、雙擊、拖動、懸停。
鍵盤事件:Keys()類提供了鍵盤上幾乎所有按鍵的方法,可以模擬各種鍵盤輸入。
Selenium 支持八種元素定位方式:

id定位: find_element_by_id()
name定位: find_element_by_name()
class定位:find_element_by_class_name()
tag定位:find_element_by_tag_name()
link定位:find_element_by_link_text()
partial_link定位:find_element_by_partial_link_text()
xpath定位:find_element_by_xpath()
CSS定位:find_element_by_css_selector()
兼容性方面,Selenium 支持 Chrome、FireFox、Safari 等主流瀏覽器;

并且 Selenium 對 Java 和 Python 都提供了便捷的API調(diào)用。

【使用場景】

UI 自動化

爬蟲
7個(gè)超好用的測試框架(總有一款適合你)

三、TestNG(白盒測試、API自動化、UI自動化)

【官網(wǎng)】

https://testng.org/doc/index.html

【簡介】

TestNG 是 Java中一個(gè)很流行實(shí)用的單元測試框架。

它的靈感來源于 Junit ( java 的單元測試框架) 和 Nunit ( .net 的單元測試框架)。

但是它又在此基礎(chǔ)上引入了新的東西,使得它更加強(qiáng)大。

關(guān)于注解特性方面,可以參考下表:
7個(gè)超好用的測試框架(總有一款適合你)
TestNG 和 JUnit 還有兩個(gè)比較明顯的區(qū)別:

在Junit 4 中,如果我們需要在方法前面使用 @BeforeClass 和 @AfterClass ,那么該測試方法則必須是靜態(tài)方法。TestNG 在方法定義部分則更加的靈活,它不需要類似的約束。
TestNG 中子類不會運(yùn)行父類中的 @BeforeClass 和 @AfterClass, 而在Junit中會先運(yùn)行父類的@BeforeClass,再運(yùn)行自己的 @BeforeClass;而 @AfterClass 是先運(yùn)行自己的,再運(yùn)行父類的。
經(jīng)過一番對比之后,TestNG 在參數(shù)化測試、依賴測試以及套件測試(組)方面功能比 Junit 更加強(qiáng)大,并且包含了幾乎 Junit 的所有功能,所以建議優(yōu)先選擇 TestNG。

【使用場景】

常用于單元測試(白盒測試)

自動化測試的用例管理和用例執(zhí)行框架(API自動化、UI自動化)
7個(gè)超好用的測試框架(總有一款適合你)

四、Cucumber(API自動化、UI自動化)

【官網(wǎng)】

https://cucumber.io/

【簡介】

自動化測試用例越寫越多,也越來越難維護(hù)。

開發(fā)看不懂測試寫的代碼,測試也看不懂測試寫的代碼,那是因?yàn)榇a不講人話。

如何才能做到面向“注釋”編程?BDD給出了答案。

BDD:Behavior-Driven Development ,也就是行為驅(qū)動開發(fā)。

BDD使用的叫做Gherkin的語言,它的理念是使用自然語言來描述功能,而且強(qiáng)調(diào)的是使用例子來說明需求功能。是不是跟敏捷開發(fā)中的用戶故事(User Story)很像?嗯,因?yàn)樗鼈兌际且粋€(gè)媽生的。

使用這種方法可以讓非技術(shù)人員、客戶可以參與到需求的確認(rèn)與驗(yàn)收當(dāng)中。

以下是用 Cucumber 寫出的 BDD 風(fēng)格的測試用例 Demo :

// Given 前置(預(yù)置)條件。(一般用于定義一個(gè)變量等)
@Given("today is Sunday")  
public void today_is_Sunday() {
    // Write code here that turns the phrase above into concrete actions
    throw new io.cucumber.java.PendingException();
}

// When 當(dāng)xxx的時(shí)候(相當(dāng)于 if )
@When("I ask whether it's Friday yet") 
public void i_ask_whether_it_s_Friday_yet() {
    // Write code here that turns the phrase above into concrete actions
    throw new io.cucumber.java.PendingException();
}

// Then 那么將要做xxx操作。
@Then("I should be told {string}")
public void i_should_be_told(String string) {
    // Write code here that turns the phrase above into concrete actions
    throw new io.cucumber.java.PendingException();
}

就像講故事一樣,來梳理代碼邏輯。

【使用場景】

自動化測試用例管理和用例執(zhí)行(API自動化、UI自動化)。
7個(gè)超好用的測試框架(總有一款適合你)

五、pytest(白盒測試、API自動化、UI自動化)

【官網(wǎng)】

https://docs.pytest.org/en/6.2.x/

【簡介】

pytest 是 python 語言中一款強(qiáng)大的單元測試框架(也是最好用的單元測試框架,不服來戰(zhàn)),用來管理和組織測試用例,可應(yīng)用在單元測試、自動化測試工作中。

當(dāng)然,如果你是個(gè) pythoner 的話,你可能也多多少少聽說過 unittest。

其實(shí)論用途而言,pytest 和 unittest 用途不多,都是優(yōu)秀的單元測試框架。

但是 pytest 在 unittest 的基礎(chǔ)上,豐富了不少功能,而且比 unittest 更簡潔高效,pytest + allure 還可以輸出更加美觀的測試報(bào)告,pytest在數(shù)據(jù)驅(qū)動上的支持,也是略優(yōu)于unittest。

所以還是可以優(yōu)先選擇 pytest。

【使用場景】

常用于單元測試(白盒測試)
自動化測試的用例管理和用例執(zhí)行框架(API自動化、UI自動化)。
7個(gè)超好用的測試框架(總有一款適合你)

六、Appium(移動端的UI自動化測試)

【官網(wǎng)】

http://appium.io/

【簡介】

在移動端的 UI自動化 測試領(lǐng)域,帶頭大哥當(dāng)屬 Appium。

Appium 是基于 Nodejs 的一款 UI自動化 測試框架。

支持多平臺(Android、iOS等)

支持多語言(python、java、ruby、js、c#等)

Appium是跨平臺的,可以用在OSX,Windows以及Linux桌面系統(tǒng)上運(yùn)行。
7個(gè)超好用的測試框架(總有一款適合你)
之前曾看過一則新聞,Appium 已經(jīng)進(jìn)軍 AI 測試(基于AI查找控件)的領(lǐng)域了,不愧是龍頭大哥。

【使用場景】

移動端的UI自動化測試
一般會結(jié)合單元測試框架去開發(fā)UI自動化測試框架。

Java:TestNG + Appium + Jenkins

Python:Pytest + Appium + Allure + Jenkins
7個(gè)超好用的測試框架(總有一款適合你)

七、ATX(移動端的UI自動化測試)

【官網(wǎng)】

https://github.com/NetEaseGame/ATX

【簡介】

ATX(AutomatorX) 是一款(網(wǎng)易)開源的自動化測試工具,支持測試iOS平臺和Android平臺的原生應(yīng)用、游戲、Web應(yīng)用。

使用Python來編寫測試用例,混合使用圖像識別,控件定位技術(shù)來完成游戲的自動化。

附加專用的IDE來完成腳本的快速編寫。

ATX的生態(tài)圈:

[底層驅(qū)動]

安卓(Android) https://github.com/openatx/uiautomator2 簡稱u2
蘋果(iOS) https://github.com/openatx/facebook-wda
[元素定位]

Weditor https://github.com/openatx/weditor
[設(shè)備管理]

atxserver2 https://github.com/openatx/atxserver2

[測試框架]

ATX-Test pengchenglin/ATX-Test

【使用場景】

移動端的UI自動化測試
一般會結(jié)合單元測試框架去開發(fā)UI自動化測試框架。

Python:Pytest + uiautomator2/wda + Allure + Jenkins
7個(gè)超好用的測試框架(總有一款適合你)
以上7個(gè)測試框架,都是臻叔實(shí)際工作中最常用到的。如果你是剛?cè)腴T測試的同學(xué),可能看到這里會一頭霧水。

沒關(guān)系,你可以先大概了解下這些最常用的測試框架,之后臻叔也會陸續(xù)把我之前學(xué)習(xí)這些工具的筆記整理好,發(fā)出來供大家參考。

最后再小結(jié)一下:

1)Java的白盒測試、API自動化、UI自動化:

Junit(對Java的方法進(jìn)行測試);
TestNG(相比Junit,參數(shù)化測試、依賴測試以及套件測試更好用,建議優(yōu)先選這個(gè));
2)python的白盒測試、API自動化、UI自動化:

pytest(功能更多,更簡潔高效,優(yōu)于unittest )。

3)API自動化、UI自動化:

Cucumber(面向“注釋”編程)。

4)移動端的UI自動化測試:

Appium(基于 Nodejs,多平臺多語言,OSX、Win和Linux上也能用 )
ATX(只支持iOS、Android)
5)UI自動化、爬蟲:

Selenium(兼容性好,Web自動化必選)。

學(xué)習(xí)安排上

如果你不想再體驗(yàn)一次學(xué)習(xí)時(shí)找不到資料,沒人解答問題,堅(jiān)持幾天便放棄的感受的話,在這里我給大家分享一些自動化測試的學(xué)習(xí)資源,希望能給你前進(jìn)的路上帶來幫助。

7個(gè)超好用的測試框架(總有一款適合你)

視頻文檔獲取方式:

這份文檔和視頻資料,對于想從事【軟件測試】的朋友來說應(yīng)該是最全面最完整的備戰(zhàn)倉庫,這個(gè)倉庫也陪伴我走過了最艱難的路程,希望也能幫助到你!以上均可以分享,點(diǎn)下方小卡片進(jìn)群即可自行領(lǐng)取。文章來源地址http://www.zghlxwxcb.cn/news/detail-445569.html

到了這里,關(guān)于7個(gè)超好用的測試框架(總有一款適合你)的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • AI 工具合輯盤點(diǎn),總有一款適合你

    AI 工具合輯盤點(diǎn),總有一款適合你

    人工智能技術(shù)的發(fā)展已經(jīng)改變了我們的生活,越來越多的AI工具正在被廣泛應(yīng)用于各個(gè)領(lǐng)域。ChatGPT這樣的代表性AI模型正在大放異彩,為我們帶來了無數(shù)的便利和驚喜。在本文中,我們將介紹一系列優(yōu)秀的AI工具,這些工具可以幫助你完成各種任務(wù),從圖像生成到自然語言處理

    2024年02月08日
    瀏覽(21)
  • ARM/FPGA/DSP板卡選型大全,總有一款適合您

    ARM/FPGA/DSP板卡選型大全,總有一款適合您

    創(chuàng)龍科技ARM/FPGA/DSP嵌入式板卡選型大全2023.2版本正式發(fā)布!接下來,跟著我們一起看看有哪些亮點(diǎn)吧! 6大主流工業(yè)處理器原廠 創(chuàng)龍科技現(xiàn)有30多條產(chǎn)品線,覆蓋工業(yè)自動化、能源電力、儀器儀表、通信、醫(yī)療、安防等工業(yè)領(lǐng)域,與6大主流工業(yè)處理器原廠強(qiáng)強(qiáng)聯(lián)合,包括德州

    2023年04月15日
    瀏覽(24)
  • 13個(gè)終極大數(shù)據(jù)項(xiàng)目理念-初級or 高級總有一款適合你

    13個(gè)終極大數(shù)據(jù)項(xiàng)目理念-初級or 高級總有一款適合你

    “大數(shù)據(jù)”一詞對我們來說并不陌生,尤其近些年來隨著數(shù)字經(jīng)濟(jì)的高速發(fā)展,大數(shù)據(jù)已經(jīng)與我們完美地結(jié)合在一起,充斥于生活的點(diǎn)點(diǎn)滴滴:刷臉結(jié)算、實(shí)時(shí)監(jiān)控、智能快遞、精準(zhǔn)營銷、DNA 序列解碼、運(yùn)動健康管理……大數(shù)據(jù)是一個(gè)令人興奮的話題,它能幫我們探究出意想

    2024年02月16日
    瀏覽(25)
  • 測量鼠標(biāo)DPI的三種方法,總有一種適合你

    測量鼠標(biāo)DPI的三種方法,總有一種適合你

    DPI(dots per inch)代表每英寸點(diǎn)數(shù),是一種用于各種技術(shù)設(shè)備(包括打印機(jī))的測量方法,但對于鼠標(biāo)來說,指的是鼠標(biāo)在桌面上移動1英寸的距離的同時(shí),鼠標(biāo)光標(biāo)能夠在屏幕上移動多少“點(diǎn)”。 許多游戲鼠標(biāo)都有按鈕,可以讓你在玩游戲時(shí)動態(tài)切換DPI,但如果你不知道鼠標(biāo)

    2024年01月16日
    瀏覽(22)
  • 解決電腦無故自動關(guān)機(jī)或重啟的15種方法,總有一種適合你

    解決電腦無故自動關(guān)機(jī)或重啟的15種方法,總有一種適合你

    你的Windows PC是否在沒有警告的情況下關(guān)閉或重新啟動?這背后有幾個(gè)潛在的原因。例如,它可能是軟件/硬件沖突、過熱或硬盤驅(qū)動器錯(cuò)誤。本故障排除指南將概述在Windows 10/11中修復(fù)自動關(guān)閉和重新啟動的多個(gè)解決方案。 如果你的計(jì)算機(jī)經(jīng)常關(guān)閉,則必須在安全模式下啟動計(jì)

    2024年04月23日
    瀏覽(35)
  • AI繪畫MidJourney 酷炫藝術(shù)風(fēng)格效果,總有一款你喜歡

    AI繪畫MidJourney 酷炫藝術(shù)風(fēng)格效果,總有一款你喜歡

    文 / 高揚(yáng) ? 今天六一兒童節(jié),祝各位大朋友節(jié)日快樂。 這次以兒童為主題,看看MidJourney的繪畫風(fēng)格,在這里,我使用的默認(rèn)V5.1版本。 圖畫場景是一個(gè)男孩和一個(gè)女孩在田野玩耍,對應(yīng)的英文是: A boy and a girl are playing in the field 。 先欣賞MidJourney默認(rèn)生成的圖片效果。 接下

    2024年02月09日
    瀏覽(27)
  • Java中常見字符串拼接九種方式,總有一款你喜歡!

    Java中常見字符串拼接九種方式,總有一款你喜歡!

    在 Java 編程中,字符串拼接是一項(xiàng)非?;A(chǔ)的操作,它涉及到了很多日常開發(fā)工作中常見的場景,例如拼接 SQL 語句、構(gòu)建 HTTP 請求參數(shù)等等。因此,對于掌握好字符串拼接技巧不僅有助于提高代碼效率,而且能夠避免一些潛在的性能問題。 下面我們就來列舉出來幾種方式,

    2024年02月16日
    瀏覽(36)
  • 50套Threejs實(shí)現(xiàn)的Web3D學(xué)習(xí)案例,總有一套適合你

    50套Threejs實(shí)現(xiàn)的Web3D學(xué)習(xí)案例,總有一套適合你

    個(gè)人主頁:?左本W(wǎng)eb3D,更多案例預(yù)覽請點(diǎn)擊==》?在線案例 個(gè)人簡介:專注Web3D使用ThreeJS實(shí)現(xiàn)3D效果技巧和學(xué)習(xí)案例 ?? ??積跬步以至千里,致敬每個(gè)愛學(xué)習(xí)的你。喜歡的話請三連,有問題請私信或者加微信 從18年開始,我由前后端開發(fā)開始專注Web3D開發(fā),目前也已經(jīng)快5年了

    2024年01月23日
    瀏覽(20)
  • 幾種查詢局域網(wǎng)內(nèi)在線弱電設(shè)備IP地址的方法,總有一款你會用的到

    幾種查詢局域網(wǎng)內(nèi)在線弱電設(shè)備IP地址的方法,總有一款你會用的到

    方法一:通過電腦cmd命令查詢局域網(wǎng)內(nèi)設(shè)備IP 在電腦開始菜單[運(yùn)行],輸入cmd回車,在彈出的命令提示窗口輸入ipconfig/all回車,能夠查看本機(jī)的IP、網(wǎng)關(guān)、mac地址信息。 然后在命令提示窗口輸入arp -a,進(jìn)行回車,等待返回結(jié)果。 從返回結(jié)果可以查詢看本地局域網(wǎng)中的所有與本

    2023年04月09日
    瀏覽(26)
  • 微軟商店“提示無法加載頁面。請稍后重試“--錯(cuò)誤代碼0x80131500的解決方法合集(總有一條適合你)

    微軟商店“提示無法加載頁面。請稍后重試“--錯(cuò)誤代碼0x80131500的解決方法合集(總有一條適合你)

    微軟商店錯(cuò)誤代碼0x80131500解決思路: 方法一: 可能是由于http協(xié)議設(shè)置的問題導(dǎo)致的。您可以嘗試以下方法來解決這個(gè)問題: 1. 用\\\"win + R\\\"打開運(yùn)行,輸入 inetcpl.cpl?打開Internet屬性(或從IE瀏覽器設(shè)置打開)。 2. 點(diǎn)擊高級選項(xiàng),找到并勾選 TLS 1.2,取消勾選 TLS 1.0。 3. 點(diǎn)擊確定,

    2024年02月06日
    瀏覽(20)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包