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

[E2E Test] Python Behave Selenium 一文學(xué)會自動化測試

這篇具有很好參考價值的文章主要介紹了[E2E Test] Python Behave Selenium 一文學(xué)會自動化測試。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

前言

本文將使用Python Behave與Selenium,和同學(xué)們一起認(rèn)識自動化測試,并附上完整的實踐教程。

項目源碼已上傳:CSDN 郭麻花 Azure Repo python-behave-selenium

核心概念?

1. 什么是E2E Test

E2E即End-to-end,意思是從頭到尾的系統(tǒng)功能測試。它通過編寫自動化測試腳本,完全從用戶的角度出發(fā),驗證系統(tǒng)功能的正確性。

如下圖所示,E2E Test相較于Unit Test等等,實現(xiàn)起來需要更多的時間和成本。

[E2E Test] Python Behave Selenium 一文學(xué)會自動化測試,軟件工程,selenium,自動化測試,軟件工程,E2E Test,python behave

2.?Python Behave?

Behave是一個強大且開源的Python BDD測試框架,完全支持Gherkin(Feature測試語言)。與我前面介紹過的.NET Specflow測試框架相似,旨在通過自然語言編寫測試用例并實現(xiàn)自動化測試。

3.?Selenium

Webdriver是一種與實現(xiàn)無關(guān)的瀏覽器協(xié)議,每個瀏覽器都將提供自己的驅(qū)動程序,作為WebDriver協(xié)議的實現(xiàn)。而外部則可以通過驅(qū)動程序提供的接口,來實現(xiàn)自動化操作瀏覽器。

Selenium 框架通過整合Webdriver實現(xiàn), 允許用戶可以無差別的使用不同的瀏覽器后端, 實現(xiàn)跨瀏覽器和跨平臺自動化。并且Selenium框架支持Java,Python,C#等多種語言實現(xiàn)。

E2E Test 實踐指南

1. 你是否需要E2E Test

自動化測試需要整個團(tuán)隊投入大量的精力。開發(fā)人員熟悉每個頁面實現(xiàn),他們需要協(xié)助測試人員抓取頁面元素,實現(xiàn)某些步驟等;而測試人員則需要與產(chǎn)品等需求方共同編寫大量的,基于用戶視角的測試用例,并與開發(fā)人員一同實現(xiàn)自動化測試步驟。

并且,E2E Test需要干凈的測試環(huán)境,至少不能影響每次測試用例的執(zhí)行。這要求我們的軟件系統(tǒng)必須具備快速部署,復(fù)制的能力。

基于云原生架構(gòu)的系統(tǒng)是最好的:[GitOps]微服務(wù)版本控制:使用ArgoCD 部署Grafana Loki_郭麻花的博客

2.? 什么時候需要自動化測試

在產(chǎn)品趨于完善的時候,可以開始E2E Test。在項目早期階段,推薦使用Unit Test,Integration Test,System Test等來保證軟件質(zhì)量。

E2E Test并不是萬能的,也不是要求所有的步驟都必須按照用戶角度自動化完成:不鼓勵的行為 | Selenium

Python Behave與Selenium

好了,介紹完E2E Test的概念與場景之后,我們來看一下E2E Test的實現(xiàn)過程。環(huán)境準(zhǔn)備:Python,pip命令;安裝behave與selenium。

Behave

BDD測試的概念我這里不再贅述,了解過.NET Specflow BDD Framework - CSDN 郭麻花的博客的朋友會很容易學(xué)習(xí)Behave框架。

Behave的使用非常簡單,我這里介紹下要點:

1. 首先你需要熟悉feature語言:?Gherkinstep實現(xiàn),不懂看這里blog.py - Repos (azure.com)

2. 結(jié)合上面鏈接里的代碼,可以看到Behave中的context表示一個貫穿整個測試過程的對象,你可以將步驟中得到的對象或者變量,放入context中,并傳遞給后面的step。

3.?Behave提供了一些Hook函數(shù),如before_feature,after_scenario()等,我們可以通過重寫這些Hook方法,在scenario或者feature執(zhí)行前后,做一些準(zhǔn)備或者收尾的工作。Hook函數(shù)的使用請看這里:environment.py - Repos (azure.com)

更多Hook函數(shù)看這里:Context Attributes — behave documentation

?4. Tag以及Tag的使用看這里:Tag in feature?& Tag in running

Selenium

Selenium的使用也是非常簡單。同樣的,我概括下要點:

  • Selenium支持Edge,chrome,firefox,ie,Safari?等多種瀏覽器。
  • Selenium支持XPATH, CSS Selector,Id等多種方式查找元素。selectors-example
  • Selenium提供點擊,輸入,清除,提交和選擇,5種基礎(chǔ)操作控制頁面元素。
  • Selenium可以等待元素達(dá)到期望狀態(tài)。

最重要的是代碼設(shè)計。例如,我們需要等待頁面某個按鈕enable,或者等待某段文字刷新出來,這里一定不要使用sleep的方式來等待,而要用Wait element state in selenium

的方式來實現(xiàn)優(yōu)雅等待,一旦元素達(dá)到期望狀態(tài),程序會立刻往下執(zhí)行。

執(zhí)行Behave測試

可以通過VS Code進(jìn)行調(diào)試behave 測試用例,像我這樣:launch.json - Repos (azure.com)

或者直接使用behave命令來運行:?behave test\features\blog_test01.feature

我這里為大家實現(xiàn)了一個簡單的feature:通過百度查找“CSDN 郭麻花”,并判斷他置頂?shù)牟┛蛿?shù)量是否為“3”。

歡迎大家下載調(diào)試:python-behave-selenium - Repos (azure.com)

@fixture.edge
Feature: Blog test 01

  Scenario: I have three pinned blogs
    Given I open "www.baidu.com"
    When I search "CSDN 郭麻花" 
    Then I click the first of results
    When I select the "文章" selection
    Then I can see "3" blogs have been pinned

[E2E Test] Python Behave Selenium 一文學(xué)會自動化測試,軟件工程,selenium,自動化測試,軟件工程,E2E Test,python behave

總結(jié)

好的,關(guān)于E2E Test以及Python Behave與Selenium的介紹暫時就到這里。文章來源地址http://www.zghlxwxcb.cn/news/detail-705225.html

到了這里,關(guān)于[E2E Test] Python Behave Selenium 一文學(xué)會自動化測試的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

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

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

相關(guān)文章

  • 【語音識別】WeNet:面向工業(yè)落地的E2E語音識別工具

    【語音識別】WeNet:面向工業(yè)落地的E2E語音識別工具

    1、參考資料 wenet-e2e/wenet Mozilla DeepSpeech yeyupiaoling/PaddlePaddle-DeepSpeech 2、快速搭建WeNet平臺 參考 WeNet中文文檔 下載官方提供的預(yù)訓(xùn)練模型,并啟動 docker 服務(wù),加載模型,提供 websocket 協(xié)議的語音識別服務(wù)。 Note : 這里的 $PWD = \\\"/home/wenet/model\\\" 。 一定要保證 預(yù)訓(xùn)練模型文件 的存

    2024年02月06日
    瀏覽(24)
  • 探索單元測試和 E2E 測試:提升軟件質(zhì)量的關(guān)鍵步驟(下)

    探索單元測試和 E2E 測試:提升軟件質(zhì)量的關(guān)鍵步驟(下)

    ?? 前端開發(fā)工程師(主業(yè))、技術(shù)博主(副業(yè))、已過CET6 ?? 阿珊和她的貓_CSDN個人主頁 ?? 牛客高級專題作者、在牛客打造高質(zhì)量專欄《前端面試必備》 ?? 藍(lán)橋云課簽約作者、已在藍(lán)橋云課上架的前后端實戰(zhàn)課程《Vue.js 和 Egg.js 開發(fā)企業(yè)級健康管理項目》、《帶你從入

    2024年01月20日
    瀏覽(40)
  • Cypress 做 e2e 測試,如何在獲得某個 checkbox 后先判斷它是否被 check 然后再更改它的狀態(tài)?

    比如如果這個 checkbox 已經(jīng)被 check 了,就不做操作,否則將它 check。 我們假設(shè)這個 checkbox 的 data-testid 屬性是 VendorCodeCheckbox-0-test-id 。Cypress 的代碼如下: 注意,對于不同的前端框架,尋找組件的邏輯可能不同。

    2024年02月11日
    瀏覽(22)
  • 【測試與自動化】介紹-框架-Jest-覆蓋率-異步代碼-e2e-Vue測試

    【測試與自動化】介紹-框架-Jest-覆蓋率-異步代碼-e2e-Vue測試

    了解什么是軟件測試,以及自動化方式的測試 什么是軟件測試? 定義: 在規(guī)定的條件下對程序進(jìn)行操作,以發(fā)現(xiàn)程序錯誤,衡量軟件質(zhì)量,并對其是否能滿足設(shè)計要求進(jìn)行評估的過程。 目的: 促進(jìn)目標(biāo)鑒定軟件的正確性、完整性、安全性和質(zhì)量。 本質(zhì): 其實是對軟件的

    2024年02月16日
    瀏覽(18)
  • 【前沿技術(shù)RPA】 一文學(xué)會用UiPath實現(xiàn)PDF自動化

    【前沿技術(shù)RPA】 一文學(xué)會用UiPath實現(xiàn)PDF自動化

    ??作者簡介:博主是一位.Net開發(fā)者,同時也是RPA和低代碼平臺的踐行者。 ??個人主頁:會敲鍵盤的肘子 ??系列專欄:UiPath ??專欄簡介: UiPath在傳統(tǒng)的RPA(Robotic process automation)的基礎(chǔ)上,增加了See(AI通過計算機視覺閱讀用戶的計算機屏幕)和Think(通過機器學(xué)習(xí)來發(fā)現(xiàn)

    2024年02月02日
    瀏覽(23)
  • 如何用Postman做接口自動化測試?一文帶你學(xué)會

    如何用Postman做接口自動化測試?一文帶你學(xué)會

    什么是自動化測試 把人對軟件的測試行為轉(zhuǎn)化為由機器執(zhí)行測試行為的一種實踐。 例如GUI自動化測試,模擬人去操作軟件界面,把人從簡單重復(fù)的勞動中解放出來 本質(zhì)是用代碼去測試另一段代碼,屬于一種軟件開發(fā)工作,已經(jīng)開發(fā)完成的用例還必須隨著被測試對象的改變而

    2024年04月22日
    瀏覽(27)
  • 接口自動化測試要做什么?一文3個步驟帶你成功學(xué)會!

    接口自動化測試要做什么?一文3個步驟帶你成功學(xué)會!

    先了解下接口測試流程: 1、需求分析 2、Api文檔分析與評審 3、測試計劃編寫 4、用例設(shè)計與評審 5、環(huán)境搭建(工具) 6、執(zhí)行用例 7、缺陷管理 8、測試報告 了解了 接口測試的工作流程 ,那\\\"接口自動化測試\\\"怎么弄?只需要在上篇文章的基礎(chǔ)上再梳理下就可以。為更好理解

    2024年02月08日
    瀏覽(26)
  • 學(xué)會自動化必備工具-Selenium-再想著入坑自動化測試吧

    學(xué)會自動化必備工具-Selenium-再想著入坑自動化測試吧

    隨著近些年IT行業(yè)的發(fā)展,軟件測試人才的需求越來越大,也有很多小伙伴在考慮入坑,而軟件測試中,收入相對較高的就是自動化了,所以這次就專門為大家簡單介紹下自動化測試的必備工具Selenium。 Selenium是一款基于Web應(yīng)用程序的開源測試工具 ,直接運行在瀏覽器中,支

    2024年01月23日
    瀏覽(34)
  • 零基礎(chǔ)學(xué)會用Airtest-Selenium對Firefox進(jìn)行自動化測試

    零基礎(chǔ)學(xué)會用Airtest-Selenium對Firefox進(jìn)行自動化測試

    本文將詳細(xì)介紹如何使用AirtestIDE驅(qū)動Firefox測試,以及脫離AirtestIDE怎么驅(qū)動Firefox(VScode為例)。 看完本文零基礎(chǔ)小白也能學(xué)會Firefox瀏覽器自動化測試?。?! 對于Web自動化測試,目前AirtestIDE支持chrome瀏覽器和Firefox2種瀏覽器,關(guān)于如何驅(qū)動chrome瀏覽器,之前我們的推文已經(jīng)做

    2024年02月08日
    瀏覽(25)
  • 【自動化測試入門】用Airtest - Selenium對Firefox進(jìn)行自動化測試(0基礎(chǔ)也能學(xué)會)

    【自動化測試入門】用Airtest - Selenium對Firefox進(jìn)行自動化測試(0基礎(chǔ)也能學(xué)會)

    本文將詳細(xì)介紹如何使用AirtestIDE驅(qū)動Firefox測試,以及脫離AirtestIDE怎么驅(qū)動Firefox(VScode為例)??赐瓯疚牧慊A(chǔ)小白也能學(xué)會Firefox瀏覽器自動化測試?。?! 對于Web自動化測試,目前AirtestIDE支持chrome瀏覽器和Firefox2種瀏覽器,今天我們重點聊一下,如何使用AirtestIDE驅(qū)動Firef

    2024年02月07日
    瀏覽(27)

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

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

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

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

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包