五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

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

入門篇_編寫測(cè)試用例

2023-03-04 15:23 作者:慧測(cè)  | 我要投稿

Playwright 斷言是專門為動(dòng)態(tài) Web 設(shè)計(jì)的。檢查會(huì)自動(dòng)重試,直到滿足必要條件。Playwright 內(nèi)置自動(dòng)等待功能,意味著它會(huì)等待元素可操作后再執(zhí)行操作。Playwright 提供了一個(gè) expect 函數(shù)來(lái)編寫斷言。

看一下下面的示例測(cè)試,了解如何使用定位器和基于 Web 的斷言來(lái)編寫測(cè)試用例。

斷言(Assertions)

Playwright 提供了 expect 函數(shù),它會(huì)等待滿足期望的條件。

這段代碼使用Playwright提供的expect函數(shù),對(duì)當(dāng)前頁(yè)面進(jìn)行斷言。其中,斷言的條件是頁(yè)面的標(biāo)題中包含"Playwright"這個(gè)子字符串。使用了Python內(nèi)置的re模塊創(chuàng)建了一個(gè)正則表達(dá)式對(duì)象,作為期望標(biāo)題的參數(shù)。

定位器(Locators)

定位器是 Playwright 自動(dòng)等待和重試的核心。定位器代表在任何時(shí)刻在頁(yè)面上查找元素的方法,并用于對(duì)元素執(zhí)行操作,如.click、.fill 等。

這段代碼通過(guò) get_by_role 函數(shù)創(chuàng)建一個(gè)名為 get_started 的定位器(locator)。該定位器被用來(lái)查找網(wǎng)頁(yè)上 role 屬性為 link,name 屬性為 Get started 的元素。

測(cè)試隔離(Test Isolation)

Playwright Pytest 插件基于測(cè)試裝置的概念,例如傳遞到您的測(cè)試中的內(nèi)置頁(yè)面裝置。由于瀏覽器上下文,頁(yè)面在測(cè)試之間被隔離,這相當(dāng)于一個(gè)全新的瀏覽器配置文件,每個(gè)測(cè)試都會(huì)獲得一個(gè)全新的環(huán)境,即使在單個(gè)瀏覽器中運(yùn)行多個(gè)測(cè)試也是如此。

這段代碼導(dǎo)入了Playwright的同步API中的Page類,然后定義了一個(gè)名為test_basic_test的測(cè)試函數(shù),它的參數(shù)是一個(gè)Page對(duì)象。在測(cè)試中,可以使用Page對(duì)象進(jìn)行頁(yè)面操作和斷言檢查,例如,通過(guò)調(diào)用goto()方法導(dǎo)航到一個(gè)URL,或者通過(guò)調(diào)用expect()方法執(zhí)行斷言檢查。由于該測(cè)試函數(shù)期望接收一個(gè)Page對(duì)象,因此可以使用Playwright Pytest插件來(lái)自動(dòng)地創(chuàng)建和銷毀瀏覽器上下文和頁(yè)面對(duì)象,從而使測(cè)試更加簡(jiǎn)單易用。

使用測(cè)試鉤子(Using Test Hooks)

您可以使用各種固定裝置在測(cè)試之前或之后執(zhí)行代碼,并在它們之間共享對(duì)象。例如,具有自動(dòng)使用功能的范圍function固定裝置的行為類似于 beforeEach/afterEach。具有module自動(dòng)使用功能的作用域固定裝置的行為類似于 beforeAll/afterAll,它在所有測(cè)試之前和之后運(yùn)行。

這段代碼演示了如何使用 Pytest 和 Playwright 來(lái)自動(dòng)化測(cè)試一個(gè) Web 應(yīng)用程序。 @pytest.fixture 裝飾器用于定義一個(gè)測(cè)試用例之前和之后要執(zhí)行的代碼塊。 scope = "function" 表示該代碼塊將在每個(gè)測(cè)試函數(shù)運(yùn)行之前和之后運(yùn)行一次。 autouse=True 表示該代碼塊將自動(dòng)使用,而無(wú)需在測(cè)試函數(shù)中顯式調(diào)用。

在此示例中,before_each_after_each 代碼塊使用了一個(gè) page 對(duì)象,該對(duì)象表示一個(gè)瀏覽器頁(yè)面。它通過(guò) Page 類從 playwright.sync_api 模塊導(dǎo)入。page.goto 方法用于在每個(gè)測(cè)試用例之前訪問(wèn)網(wǎng)頁(yè)。使用 yield 關(guān)鍵字來(lái)告訴 Pytest 執(zhí)行測(cè)試用例代碼,然后再繼續(xù)執(zhí)行 afterEach 代碼塊。

test_main_navigation 測(cè)試用例函數(shù)接受一個(gè)名為 page 的參數(shù),該參數(shù)是 before_each_after_each 代碼塊返回的 page 對(duì)象。expect(page).to_have_url("https://playwright.dev/") 用于檢查頁(yè)面的 URL 是否與指定的 URL 匹配,這是使用 Playwright 提供的 expect 函數(shù)實(shí)現(xiàn)的。


每天晚上來(lái)學(xué)習(xí)

視頻號(hào)直播進(jìn)行中


入門篇_編寫測(cè)試用例的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
会宁县| 墨脱县| 方山县| 乐至县| 上虞市| 石台县| 云浮市| 遂川县| 卓尼县| 宜兰市| 五寨县| 安新县| 罗山县| 临西县| 三都| 屏南县| 瑞金市| 衢州市| 青浦区| 吉水县| 铜川市| 昭觉县| 桐梓县| 渝中区| 那坡县| 信丰县| 遵义市| 梅河口市| 兴海县| 正宁县| 简阳市| 石嘴山市| 天等县| 衢州市| 新兴县| 北京市| 绥宁县| 东乡| 京山县| 临潭县| 区。|