精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

如何使用Cypress執(zhí)行組件測試

開發(fā) 測試
本文介紹了如何在 Cypress 的幫助下設(shè)置 React 組件和測試 React 組件。
本文介紹了如何在 Cypress 的幫助下設(shè)置 React 組件和測試 React 組件。

在本文中,我將解釋以下內(nèi)容:

  • 如何設(shè)置 React 組件。
  • 如何在 Cypress 的幫助下測試 React 組件。

什么是組件測試?

組件測試,也稱為單元測試或模塊測試,是一種軟件測試技術(shù),涉及測試軟件應(yīng)用程序的單個單元或組件。這些單元通常與應(yīng)用程序的其余部分隔離并單獨(dú)測試以確保它們按預(yù)期運(yùn)行。

為執(zhí)行組件開發(fā)人員通常會創(chuàng)建測試用例,以執(zhí)行被測組件的各種功能。這些測試用例可以自動化,這使得重復(fù)運(yùn)行它們變得更加容易,并確保即使在對代碼進(jìn)行更改后組件也能正常測試,運(yùn)行。

用于組件測試的Cypress?

Cypress 是一種前端測試工具,允許開發(fā)人員為 Web 應(yīng)用程序編寫和運(yùn)行測試。Cypress 的一個方面是組件測試,它涉及獨(dú)立于應(yīng)用程序的其余部分測試單個組件。這有助于識別特定組件的問題,并在將其集成到更大的應(yīng)用程序之前確保其正常工作。

在使用 Cypr進(jìn)行組件測試時,開發(fā)人員可以編寫以各種方式與單個組件交互的測試腳本。例如,他們可以模擬用戶輸入,測試組件在不同條件下的呈現(xiàn)和行為,并驗(yàn)證組件是否產(chǎn)生了預(yù)期的輸出ess 。

端到端測試與組件測試

端到端測試

端到端測試,也稱為集成測試,從頭到尾測試整個系統(tǒng),模擬真實(shí)場景和用戶交互。這種類型的測試用于確保系統(tǒng)的所有組件按預(yù)期一起工作,并且系統(tǒng)滿足其功能和非功能要求。

組件測試

組件測試,也稱為單元測試,單獨(dú)測試系統(tǒng)的各個組件或單元。這種類型的測試用于確保每個單獨(dú)的組件都按預(yù)期工作,并且系統(tǒng)滿足其功能和非功能要求。組件測試通常比端到端測試更快、更簡單,并且可以揭示單個組件中的問題。

以下是端到端測試與組件測試之間的一些比較:

為什么我們需要組件測試?

組件測試是一種測試,側(cè)重于測試軟件應(yīng)用程序的各個組件,使其與其他組件隔離開來。它是軟件開發(fā)過程的重要組成部分,因?yàn)樗兄诖_保應(yīng)用程序的每個組件都正常工作并滿足為其設(shè)置的要求。

組件測試很重要的原因有幾個:

  • 它有助于在開發(fā)過程的早期識別和修復(fù)缺陷,從長遠(yuǎn)來看可以節(jié)省時間和資源。
  • 它允許開發(fā)人員單獨(dú)測試應(yīng)用程序的組件,這可以更容易地識別所發(fā)現(xiàn)的任何問題的根本原因。
  • 它可以通過確保每個組件正常工作并滿足所需的規(guī)范來提高應(yīng)用程序的整體質(zhì)量。
  • 它可以通過在與應(yīng)用程序的其余部分集成之前識別單個組件的問題來降低集成問題的風(fēng)險。

總的來說,組件測試是軟件開發(fā)過程的重要組成部分,因?yàn)樗兄诖_保應(yīng)用程序的各個組件正常工作并滿足所需的規(guī)范,從而可以提高應(yīng)用程序的整體質(zhì)量并降低出現(xiàn)問題的風(fēng)險部署應(yīng)用程序時。

組件測試的優(yōu)勢

組件測試有多種優(yōu)點(diǎn),下面將對其中一些進(jìn)行說明。

隔離:通過隔離測試單個組件,開發(fā)人員可以更輕松地識別和修復(fù)問題,而不必調(diào)查和調(diào)試多個組件之間的復(fù)雜交互。

可重用性:通過徹底測試各個組件,開發(fā)人員可以確保它們正常運(yùn)行并且可以在系統(tǒng)的其他部分中重用。

更快的調(diào)試:組件測試允許開發(fā)人員快速識別問題的根源,而不是必須搜索整個系統(tǒng)才能找到它。

及早發(fā)現(xiàn)問題:通過在開發(fā)過程的早期測試組件,開發(fā)人員可以在問題變得更加困難和耗時之前發(fā)現(xiàn)問題。

成本效益:組件測試是一種成本效益高的系統(tǒng)測試方法,因?yàn)樗试S開發(fā)人員測試系統(tǒng)的較小部分,這將減少耗時和成本。

模塊化:通過測試單個組件,開發(fā)人員可以構(gòu)建更易于維護(hù)、更新和擴(kuò)展的模塊化程度更高的系統(tǒng)。

更好的測試覆蓋率:通過測試單個組件,開發(fā)人員可以確保系統(tǒng)的每個部分都經(jīng)過徹底測試,這有助于提高整體測試覆蓋率。

預(yù)先請求

  1. 節(jié)點(diǎn)已安裝。
  2. 比。代碼 已安裝。

出于演示目的,我們使用 counter react 組件并使用 Cypress Version 12.4.0測試組件。

創(chuàng)建示例 React 組件以開始使用 Cypress

本節(jié)介紹如何設(shè)置Counter React 組件、安裝 Cypress 并將其與 React 集成,然后才能創(chuàng)建組件測試。

步驟1

在終端中運(yùn)行以下命令。

npx create - react - app my - new - sample - app

運(yùn)行上述命令后,如下圖所示:

第2步

進(jìn)入根目錄并運(yùn)行以下命令以啟動 React 應(yīng)用程序并安裝 Cypress。

cd my-new-sample-app
npm start
npm install cypress -D

npm start命令服務(wù)器啟動后。

步驟 3

運(yùn)行以下命令打開 Cypress。

npx cypress open OR yarn cypress open

步驟4

選擇“組件測試”。

步驟 5

選擇“組件測試”后,將打開以下屏幕。

從上面的屏幕中選擇“創(chuàng)建 React App”。

單擊下一步并等待依賴項安裝,一旦安裝了所有依賴項,屏幕將如下所示。

步驟 6

點(diǎn)擊繼續(xù)按鈕;下面的屏幕是打開的。

步驟 7

單擊上面屏幕中的繼續(xù)按鈕。

選擇您的瀏覽器,在我的例子中是 Chrome,然后單擊“在 Chrome 中開始組件測試”;屏幕在下面打開。

步驟 8

選擇“創(chuàng)建新規(guī)范”,輸入新規(guī)范的路徑,然后單擊“創(chuàng)建規(guī)范”。

單擊“確定”按鈕后。

下面是安裝 React App 后文件夾結(jié)構(gòu)的截圖。

步驟 9

在 src 文件夾中創(chuàng)建一個計數(shù)器組件并為其命名QAAutomationLabs.jsx

import { useState } from 'react'
export default function Counter({ initial = 0 }) {
const [count, setCount] = useState(initial)
return (
<div style={{
padding: 30
}}>
<button style={{ color: "black", backgroundColor: "green", margin: 10 }} aria-label="decrement" notallow={() => setCount(count - 1)}>
-
</button>
<span data-cy="counter">{count}</span>
<button style={{ color: "black", backgroundColor: "green", margin: 10 }} aria-label="increment" notallow={() => setCount(count + 1)}>
+
</button>
</div>
)
}

步驟 10

現(xiàn)在在組件文件夾下創(chuàng)建“QAAutomationLabs.cy.js”。在這里,我們有一個單一的測試來確保我們的組件安裝。

import { mount } from 'cypress/react'
import Counter from '../../src/QAAutomationLab'
describe('<Counter>', () => {
it('mounts', () => {
cy.mount(<Counter ></Counter>)
})
})

步驟 11

運(yùn)行以下命令以運(yùn)行組件測試用例。并啟動以下內(nèi)容:

npx cypress open --component

在規(guī)格列表中,單擊QAAutomationLabs.cy.js并查看安裝在測試區(qū)域中的計數(shù)器組件。

使用 Cypress 測試計數(shù)器組件

現(xiàn)在讓我們使用 Cypress 測試這個計數(shù)器組件。

場景涵蓋:

  1. 當(dāng)我們通過單擊 (+) 圖標(biāo)進(jìn)行增量時的場景。
  2. 當(dāng)我們通過單擊 (-) 圖標(biāo)進(jìn)行遞減時的場景。

讓我們創(chuàng)建 Cypress 測試用例(it 塊)。

import Counter from "../../src/QAAutomationLab";
describe("<Counter>", () => {
const counterSelector = '[data-cy="counter"]';
const incrementSelector = "[aria-label=increment]";
const decrementSelector = "[aria-label=decrement]";
it("Two Time Increment then decrement the count ", () => {
cy.mount(<Counter ></Counter>);
//Two time Increment the Count
cy.get(incrementSelector).click();
cy.get(incrementSelector).click();
// Assert
cy.get(counterSelector).should("contain.text", 2);
//Do the decrement
cy.get(decrementSelector).click();

// Assert
cy.get(counterSelector).should("have.text", "1");
// Assert color
cy.get(decrementSelector)
.should("have.css", "color")
.and("eq", "rgb(0, 0, 0)");
// Assert background color
cy.get(decrementSelector)
.should("have.css", "background-color")
.and("eq", "rgb(0, 128, 0)");
});
it("Two Time decrement then Increment the count ", () => {
cy.mount(<Counter ></Counter>);
//Two time decrement the count
cy.get(decrementSelector).click();
cy.get(decrementSelector).click();
// Assert
cy.get(counterSelector).should("have.text", "-2");
//Then increment the count
cy.get(incrementSelector).click();
cy.get(counterSelector).should("have.text", "-1");
// Assert color
cy.get(decrementSelector)
.should("have.css", "color")
.and("eq", "rgb(0, 0, 0)");
// Assert background color
cy.get(decrementSelector)
.should("have.css", "background-color")
.and("eq", "rgb(0, 128, 0)");
});
});

運(yùn)行命令運(yùn)行以上測試用例

npx cypress open --component

輸出

下面是針對測試“計數(shù)器”組件執(zhí)行的測試用例的輸出。

總結(jié)

出于多種原因,組件測試與 Cypress 一起是有益的。它允許及早發(fā)現(xiàn)錯誤,提高代碼質(zhì)量,增加對代碼更改的信心,促進(jìn)重構(gòu),簡化集成測試,并且具有成本效益。

此外,通過為單個組件編寫測試,開發(fā)人員被迫考慮其代碼的設(shè)計和功能,這可以帶來更好的代碼質(zhì)量和可維護(hù)性。


責(zé)任編輯:華軒 來源: 今日頭條
相關(guān)推薦

2022-07-13 08:00:00

軟件測試回歸測試Cypress

2022-04-14 08:00:00

Cypress測試開發(fā)

2017-03-21 21:37:06

組件UI測試架構(gòu)

2021-08-02 12:04:39

測試測試框架Cypress

2010-09-09 21:34:06

2009-12-31 14:39:24

ADO測試程序

2019-01-29 09:00:44

PyHamcrest單元測試框架

2022-06-13 09:00:00

Selenium測試Web

2022-12-22 08:01:09

Vue測試庫測試

2025-01-27 11:52:23

2022-04-07 09:00:00

跨瀏覽器測試自動化服務(wù)異常

2022-07-18 09:01:58

React函數(shù)組件Hooks

2015-07-16 15:20:58

DockerDjango

2021-10-08 10:05:31

DorkifyGoogle Dork漏洞

2023-01-26 00:28:45

前端測試技術(shù)

2012-12-24 22:58:07

測試網(wǎng)絡(luò)測試

2024-12-31 11:28:14

2021-03-28 23:03:50

Python程序員編碼

2021-07-03 08:54:49

LinuxSysbench性能

2020-11-05 18:30:32

接口測試
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號

久久国产精品系列| 日韩少妇一区二区| 日本黄色片在线观看| 麻豆精品视频在线观看视频| xvideos亚洲人网站| 亚洲午夜精品一区| 黄色羞羞视频在线观看| 26uuu亚洲| 国产日本欧美视频| 国产无码精品在线播放| 欧美色图在线播放| 日韩免费一区二区| 成人在线看视频| 黄色一级大片在线免费看产| 国产精品入口免费| 国内精品视频久久| 中文字幕第17页| 97超碰免费在线| 中文字幕免费不卡在线| 99re国产| 中文字幕第一页在线播放| 综合精品一区| 亚洲日本成人女熟在线观看| 九九久久久久久| 免费一二一二在线视频| 中文字幕一区视频| 久久精精品视频| 精品人妻伦一二三区久久| 亚洲影院一区| 色综合男人天堂| 国产农村妇女精品一区| 国偷自产av一区二区三区| 欧美群妇大交群中文字幕| 欧美爱爱视频免费看| 亚洲性图自拍| 亚洲欧洲日韩综合一区二区| 欧美大陆一区二区| 欧美一级免费片| 国产精品一区二区你懂的| 国产精品999| 青青国产在线观看| 99精品视频一区二区| 天使と恶魔の榨精在线播放| 免费观看成人鲁鲁鲁鲁鲁视频| 久久人人爽人人爽爽久久| 99久久国产精| 日韩精品一区国产| 欧美日韩美女一区二区| 色欲av无码一区二区人妻| 青春草视频在线观看| 国产精品麻豆欧美日韩ww| 久久伊人一区| 外国精品视频在线观看 | 久热精品视频| 97久久精品国产| 久久人人爽人人爽人人| 你懂的视频一区二区| 久久精品国产成人| 日韩精品一区二区亚洲av性色| 国产欧美日韩免费观看| 国产视频久久久久久久| 成人免费无码大片a毛片| 国产调教精品| 日韩av在线一区| 亚洲精品理论片| 米奇777超碰欧美日韩亚洲| 日韩精品免费观看| 欧美熟妇一区二区| 精品欧美激情在线观看| 中文字幕日韩电影| 亚洲精品一区二区三区在线播放| 久久一区二区三区喷水| www.欧美精品一二三区| 日韩视频中文字幕在线观看| 你懂的成人av| 88xx成人精品| 欧美国产一级片| 精品系列免费在线观看| 国产在线日韩在线| www.国产视频| 91免费看片在线观看| 日本视频一区二区不卡| 在线观看免费黄色| 一区二区成人在线观看| 国产精品裸体瑜伽视频| 在线观看精品| 91精品久久久久久久久99蜜臂| 午夜性福利视频| 久久成人av| 俺也去精品视频在线观看| 麻豆一区产品精品蜜桃的特点| 亚洲国产一区二区三区高清| 日韩女优人人人人射在线视频| 一本色道久久综合熟妇| 国产不卡视频在线观看| 久久免费看av| 黄在线免费看| 精品人伦一区二区三区蜜桃网站| 亚洲高清在线免费观看| 91成人在线精品视频| 日韩精品在线视频| 成人自拍小视频| 国产精品婷婷| 91久久久久久久一区二区| 污视频在线免费| 国产精品的网站| 国产精品沙发午睡系列| 国产视频一区二| 亚洲美女在线观看| 国产精品久久久久久久精| 另类av一区二区| 99精彩视频| 爱久久·www| 舔着乳尖日韩一区| 亚欧精品在线视频| 精品国产成人| 97在线观看视频| 国产三级精品在线观看| 国产无一区二区| 蜜臀av无码一区二区三区| 伊人亚洲精品| 一区二区三区国产视频| 亚洲精品77777| 国产精品一品二品| 亚洲激情一区二区| 免费在线小视频| 精品国产乱码久久久久久闺蜜| 国产不卡在线观看视频| 先锋影音国产一区| 国产精品免费在线播放| 欧美videos极品另类| 色播五月激情综合网| 国产xxxx视频| 亚洲私拍自拍| 97久久天天综合色天天综合色hd| 在线免费av电影| 欧美三级电影网| 人妻少妇无码精品视频区| 野花国产精品入口| 国产综合18久久久久久| 欧美亚洲系列| 日韩你懂的电影在线观看| 性生交大片免费全黄| 免费黄网站欧美| 日韩欧美一区二区在线观看 | 欧美孕妇性xx| 欧洲av在线播放| 一区二区三区欧美激情| 樱花草www在线| 欧美在线视屏| 99国产视频| 久色国产在线| 亚洲第一天堂av| 色婷婷av国产精品| 91美女福利视频| 50路60路老熟妇啪啪| 亚瑟一区二区三区四区| 秋霞av国产精品一区| 欧洲成人av| 欧美在线观看一区二区| av手机在线播放| 久久se精品一区精品二区| 亚洲欧洲精品在线观看| 亚洲爽爆av| 美女啪啪无遮挡免费久久网站| 国产三级在线观看视频| 一区二区三区欧美久久| 无码人妻久久一区二区三区蜜桃 | 欧美精品免费在线| 国产77777| 五月激情综合网| 91视频在线网站| 久久国产婷婷国产香蕉| 香蕉视频免费版| 凹凸av导航大全精品| 性金发美女69hd大尺寸| 免费在线视频一级不卡| 欧美在线播放高清精品| 国产精品18在线| 国产风韵犹存在线视精品| 亚洲一区二区三区av无码| 亚洲激情播播| 国产一区二区视频在线观看| 18+激情视频在线| 日韩的一区二区| 国产精品51麻豆cm传媒| 亚洲柠檬福利资源导航| 国产黑丝在线观看| 蜜臀av一区二区| 国产精品videossex国产高清| 日韩av影院| 成人激情视频小说免费下载| 免费在线看电影| 国产一区二区黑人欧美xxxx| 国产老女人乱淫免费| 五月激情丁香一区二区三区| 人成免费在线视频| 成人免费高清在线| 2025韩国理伦片在线观看| 欧美激情视频一区二区三区在线播放| 久久久久久九九九九| 亚洲一区二区av| 欧美在线视频一二三| a篇片在线观看网站| 亚洲欧美日韩中文在线| 精品人妻伦一区二区三区久久| 色综合久久久久网| 久久久久黄色片| 欧美激情一区三区| 男男做爰猛烈叫床爽爽小说| 精品一区二区免费看| 久久久亚洲精品无码| 久久精品免费一区二区三区| 免费成人看片网址| 午夜免费欧美电影| 国产免费一区视频观看免费| 交100部在线观看| 欧美成人一二三| 成年人视频在线观看免费| 精品99999| 国产精品免费无遮挡| 在线视频观看一区| 啦啦啦免费高清视频在线观看| 亚洲人成小说网站色在线| 精品无码在线观看| 91美女视频网站| 亚洲熟女一区二区| 国产高清成人在线| 1314成人网| 久久99国产精品久久99| 国产一级特黄a大片免费| 免费视频一区| 成年人观看网站| 亚洲日本视频| 欧美一级片免费播放| 午夜电影亚洲| 91视频成人免费| 小小影院久久| 伊人情人网综合| 成人看的羞羞网站| 日韩片电影在线免费观看| 在线亚洲a色| 欧美日韩高清在线一区| 日韩美女国产精品| 蜜桃传媒视频麻豆一区 | 九一久久久久久| 艹b视频在线观看| 蜜桃视频一区二区三区在线观看| 茄子视频成人免费观看| 国产视频一区在线观看一区免费| 欧美乱大交xxxxx潮喷l头像| 激情综合亚洲| 成年人午夜免费视频| 韩日精品在线| 免费不卡av在线| 国产免费成人| 成人小视频在线看| 日日欢夜夜爽一区| 亚欧激情乱码久久久久久久久| 青青国产91久久久久久| 色婷婷一区二区三区av免费看| 麻豆91精品91久久久的内涵| 狠狠干狠狠操视频| 国产美女在线观看一区| 亚洲区 欧美区| eeuss鲁片一区二区三区在线观看| 中文字幕一区二区三区乱码不卡| 99天天综合性| 国产传媒国产传媒| 最新不卡av在线| 久久综合综合久久| 精品久久久久久久中文字幕| 伊人手机在线视频| 欧美曰成人黄网| 精品久久在线观看| 亚洲精品乱码久久久久久金桔影视 | 欧美性色aⅴ视频一区日韩精品| 中国a一片一级一片| 777久久久精品| 人妻无码中文字幕| 亚洲天堂久久av| 91香蕉在线观看| 18性欧美xxxⅹ性满足| 国产成人精品一区二三区在线观看| 国产精品一区二区三区成人| 国产一区二区av在线| 精品国产一区二区三区四区vr| 国产乱码精品一区二区三区四区| 五月天男人天堂| 一区二区三区福利| 亚洲小视频网站| av综合在线播放| 国产aaaaaaaaa| 亚洲午夜精品网| 中文字幕激情视频| 亚洲风情亚aⅴ在线发布| 国产乱子伦三级在线播放| 欧美精品制服第一页| 性欧美18~19sex高清播放| 国产在线精品播放| 日日狠狠久久偷偷综合色| 亚洲一区三区电影在线观看| 136国产福利精品导航网址| 一区二区三区 日韩| 不卡的av电影| 欧美做爰爽爽爽爽爽爽| 欧美日韩一区免费| 午夜精品久久久久久久第一页按摩| 亚洲男人天堂久| 色黄网站在线观看| 国产精品揄拍500视频| 日韩av系列| 国产精品入口芒果| 国产最新精品精品你懂的| 91精彩刺激对白露脸偷拍| 亚洲一区二区三区影院| 一级黄色片在线| 亚洲香蕉成视频在线观看| 6699嫩草久久久精品影院| 国产日产欧美精品| 国产麻豆精品久久| 欧美 国产 综合| 福利视频网站一区二区三区| 亚洲色图100p| 日本电影亚洲天堂一区| 亚洲aⅴ乱码精品成人区| 欧美日韩国产91| 99久久999| 一区二区三区我不卡| 日韩精品一二三四| 亚洲专区区免费| 欧美日韩性视频| 日韩在线一区二区三区四区| 久久69精品久久久久久国产越南| 欧美a视频在线| 亚洲国产精品一区在线观看不卡 | 久久久亚洲精选| 亚洲视频精选| 无码人妻精品一区二区三区99v| 老司机一区二区| 黄色av片三级三级三级免费看| 91国偷自产一区二区使用方法| 天堂在线中文| 2021国产精品视频| 四虎5151久久欧美毛片| 国产精品网站免费| 91一区一区三区| 国产在线观看黄色| 亚洲女人天堂网| 成人软件在线观看| 亚洲欧美日韩另类精品一区二区三区| 日韩av网站在线观看| 极品人妻videosss人妻| 欧洲一区二区三区免费视频| 成人在线高清视频| 国产精品主播视频| 99久久99视频只有精品| 欧美国产日韩另类| 一区二区三区国产| 免费看黄色一级视频| 91国产在线精品| 欧美人妖在线| 国产免费又粗又猛又爽| 中文字幕在线观看一区| 精品二区在线观看| 久久久综合av| 少妇精品久久久| 手机视频在线观看| 亚洲欧美激情在线| 日本免费一区视频| 国产99久久精品一区二区永久免费 | 欧美精品久久99久久在免费线| 久cao在线| 国产日韩一区二区| 久久蜜桃精品| 日韩福利小视频| 日韩电影免费观看中文字幕| 天天综合网站| 激情五月五月婷婷| 99精品视频在线观看| 亚洲熟妇av乱码在线观看| 久久五月情影视| 日本国产精品| 午夜激情av在线| 亚洲在线中文字幕| 欧美美女色图| 91久久精品国产91久久| 亚洲精选久久| 日韩av网站在线播放| 欧美成人一级视频| 四虎成人在线| 日韩精品在线观看av| 久久精品无码一区二区三区| 国产精品探花视频| 欧洲精品毛片网站| 午夜久久99| 日本xxxxxxxxx18| 日韩欧美不卡一区| 国产成人精品一区二区三区视频 | 欧美日韩久久不卡|