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

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

UI 自動(dòng)化測(cè)試實(shí)戰(zhàn)(二)| 測(cè)試數(shù)據(jù)的數(shù)據(jù)驅(qū)動(dòng)

2022-11-01 14:22 作者:愛(ài)測(cè)軟件測(cè)試  | 我要投稿


數(shù)據(jù)驅(qū)動(dòng)就是通過(guò)數(shù)據(jù)的改變驅(qū)動(dòng)自動(dòng)化測(cè)試的執(zhí)行,最終引起測(cè)試結(jié)果的改變。簡(jiǎn)單來(lái)說(shuō),就是參數(shù)化在自動(dòng)化測(cè)試中的應(yīng)用。

測(cè)試過(guò)程中使用數(shù)據(jù)驅(qū)動(dòng)的優(yōu)勢(shì)主要體現(xiàn)在以下幾點(diǎn):

1.提高代碼復(fù)用率,相同的測(cè)試邏輯只需編寫(xiě)一條測(cè)試用例,就可以被多條測(cè)試數(shù)據(jù)復(fù)用,提高了測(cè)試代碼的復(fù)用率,同時(shí)提高了測(cè)試代碼的編寫(xiě)效率。

2.異常排查效率高,測(cè)試框架依據(jù)測(cè)試數(shù)據(jù),每條數(shù)據(jù)生成一條測(cè)試用例,用例執(zhí)行過(guò)程相互隔離。如果其中一條失敗,不會(huì)影響其他的測(cè)試用例。

3.代碼可維護(hù)性高,清晰的測(cè)試框架利于其他測(cè)試工程師閱讀,提高代碼的可維護(hù)性。

數(shù)據(jù)量小的測(cè)試用例可以使用代碼的參數(shù)化來(lái)實(shí)現(xiàn)數(shù)據(jù)驅(qū)動(dòng),數(shù)據(jù)量大的情況下建議大家使用一種結(jié)構(gòu)化的文件(例如 YAML,JSON 等)來(lái)對(duì)數(shù)據(jù)進(jìn)行存儲(chǔ),然后在測(cè)試用例中讀取這些數(shù)據(jù)。

Pytest 提供了@pytest.mark.parametrize裝飾器來(lái)進(jìn)行參數(shù)化,可以使用參數(shù)化來(lái)實(shí)現(xiàn)數(shù)據(jù)驅(qū)動(dòng)。代碼如下:

上面的代碼首先使用@pytest.mark.parametrize裝飾器,傳遞了兩組數(shù)據(jù),測(cè)試結(jié)果顯示有兩條測(cè)試用例被執(zhí)行,而不是一條測(cè)試用例。也就是 Pytest 會(huì)將兩組測(cè)試數(shù)據(jù)自動(dòng)生成兩個(gè)對(duì)應(yīng)的測(cè)試用例并執(zhí)行,生成兩條測(cè)試結(jié)果。

當(dāng)測(cè)試數(shù)據(jù)量大的情況下,可以考慮把數(shù)據(jù)存儲(chǔ)在結(jié)構(gòu)化的文件中。從文件中讀取出代碼中所需要格式的數(shù)據(jù),傳遞到測(cè)試方法中執(zhí)行。這里推薦大家使用 YAML 類型的文件來(lái)存儲(chǔ)測(cè)試數(shù)據(jù)。YAML 使用動(dòng)態(tài)字段進(jìn)行結(jié)構(gòu)化,它以數(shù)據(jù)為中心,比 Excel、CSV、JSON、XML 等更適合做數(shù)據(jù)驅(qū)動(dòng)。

下面,我們將上面參數(shù)化的兩組數(shù)據(jù)存儲(chǔ)到 YAML 文件中,創(chuàng)建一個(gè) data/searchdata.yml 文件,代碼如下:

上面的代碼定義了一個(gè) yaml 格式的數(shù)據(jù)文件 searchdata.yml ,文件中定義了一個(gè)列表,列表中有兩組數(shù)據(jù),最后生成的是這樣的數(shù)據(jù)格式:[[“alibaba”, “BABA”, 200],[“JD”, “JD”, 20]] 。

下一步將測(cè)試用例中參數(shù)化的數(shù)據(jù)改造成從 searchdata.yml 文件中讀取,代碼如下:

上面的代碼,只需要使用 yaml.safe_load() 方法,就來(lái)讀取 searchdata.yml 文件中的數(shù)據(jù),分別傳入到用例 test_search() 方法中完成數(shù)據(jù)的輸入與結(jié)果的驗(yàn)證。而如果使用 Excel、CSV 文件格式進(jìn)行數(shù)據(jù)的存儲(chǔ),需要先從 Excel 文件中讀取數(shù)據(jù),再解析成需要的格式。而使用 YAML 則完全省去了這個(gè)過(guò)程。

以上,關(guān)于其他環(huán)節(jié)的數(shù)據(jù)驅(qū)動(dòng),在后續(xù)章節(jié)分享。


UI 自動(dòng)化測(cè)試實(shí)戰(zhàn)(二)| 測(cè)試數(shù)據(jù)的數(shù)據(jù)驅(qū)動(dòng)的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
西充县| 喀喇| 朝阳市| 东乌| 梁平县| 仪征市| 兴文县| 扬州市| 波密县| 缙云县| 天峨县| 广德县| 本溪| 保定市| 泸溪县| 龙胜| 乌拉特后旗| 越西县| 伊吾县| 鞍山市| 庄河市| 宜宾县| 杭锦后旗| 南川市| 商城县| 潢川县| 景洪市| 扶余县| 祁阳县| 沅陵县| 双流县| 石阡县| 三台县| 全州县| 肇庆市| 喀喇沁旗| 永川市| 东安县| 娄烦县| 平定县| 藁城市|