自動(dòng)化測(cè)試,UI測(cè)試和接口測(cè)試的基本概念以及指令

今天小楓跟大家介紹UI測(cè)試、接口測(cè)試、單元測(cè)試主要內(nèi)容

UI測(cè)試【Selenium】

UI測(cè)試是最接近軟件真實(shí)用戶使用行為的測(cè)試類(lèi)型。通常是模擬真實(shí)用戶使用軟件的行為,即模擬用戶在軟件界面上的各種操作,并驗(yàn)證這些操作對(duì)應(yīng)的結(jié)果是否正確。

這是最基本的一些Selenium的指令

```

#瀏覽器操作

#瀏覽器最大化

driver.maximize_window()

#設(shè)置瀏覽器寬和高

driver.set_window_size(400,800)

#控制瀏覽器前進(jìn)、后退

driver.forward()

driver.back()

#簡(jiǎn)單對(duì)象的定位

find_element_by_id()#----唯一

find_element_by_name()#----唯一

find_element_by_class_name()#class定位

find_element_by_xpath()#元素定位

find_element_by_css_selector()

#鼠標(biāo)事件

#ActionChains類(lèi)用來(lái)操作鼠標(biāo)事件

context_click()#------------------鼠標(biāo)右擊

double_click()#------------------鼠標(biāo)雙擊

click()#-----------------------------鼠標(biāo)點(diǎn)擊

click_and_hold()#---------------按住鼠標(biāo)左鍵不動(dòng)

move_to_element(目標(biāo)元素)#------------------------移動(dòng)到某個(gè)元素

move_by_offset(xoffset,yoffset)#--------------------移動(dòng)到某個(gè)坐標(biāo)

drag_and_drop(source,target)#------將元素從起點(diǎn)source移動(dòng)到終點(diǎn)target

drag_and_drop_by_offset(source,xoffset,yoffset)#-------按照坐標(biāo)移動(dòng)

release()# 在某個(gè)元素上釋放鼠標(biāo)

```

接口測(cè)試【API測(cè)試】

API測(cè)試,主要針對(duì)的是各模塊暴露的接口,通常采用灰盒測(cè)試方法。首先以黑盒方式設(shè)計(jì)如何調(diào)用API的測(cè)試用例,同時(shí)在測(cè)試執(zhí)行過(guò)程中統(tǒng)計(jì)代碼覆蓋率,然后根據(jù)代碼覆蓋率情況來(lái)補(bǔ)充更多、更有針對(duì)性的測(cè)試用例。

單元測(cè)試

單元測(cè)試,屬于白盒測(cè)試的范疇,通常由開(kāi)發(fā)工程師自己完成,越早發(fā)現(xiàn)缺陷其修復(fù)成本越低。

如果對(duì)軟件測(cè)試、接口測(cè)試、自動(dòng)化測(cè)試、面試經(jīng)驗(yàn)交流。感興趣可以加軟件測(cè)試交流:1140267353,還會(huì)有同行一起技術(shù)交流(免費(fèi)學(xué)習(xí)資料)。

```

#內(nèi)存的主要組成索引:

ONative Heap: Native#代碼分配的內(nèi)存,虛擬機(jī)和Adoid框架本身也會(huì)分配

ODalvik Heap: Java #代碼分配的對(duì)象

ODalvik Other:#類(lèi)的數(shù)據(jù)結(jié)構(gòu)和索引

0 so mmap: Native #代碼和常量

0 dex mmap: Java #代碼和常量

#內(nèi)存工具:

口Android Studio/Memory Monitor#觀察Dalvik內(nèi)存

0 dumpsys meminfo#觀察整體內(nèi)存

0 smaps#觀察整體內(nèi)存的詳細(xì)組成

0 Eclipse Memory Analyzer#詳細(xì)分析Dalvik內(nèi)存

```


?每種測(cè)試的優(yōu)缺點(diǎn)


一、UI自動(dòng)化測(cè)試

大家所在公司都屬于互聯(lián)網(wǎng)公司,最大的特點(diǎn)就是快——產(chǎn)品需要不停的迭代,迭代時(shí)間基本在15天左右。

UI自動(dòng)化測(cè)試的優(yōu)點(diǎn)是,能夠?qū)嶋H模擬真實(shí)用戶的行為,直接驗(yàn)證軟件的商業(yè)價(jià)值;缺點(diǎn)是用例的維護(hù)和執(zhí)行代價(jià)很大。另外,UI自動(dòng)化測(cè)試的穩(wěn)定性問(wèn)題,是長(zhǎng)期以來(lái)阻礙GUI測(cè)試發(fā)展的重要原因。

在快速迭代的情況下,頁(yè)面的改動(dòng)可能會(huì)很頻繁,而UI自動(dòng)化測(cè)試本身基于頁(yè)面元素,前端小小的改動(dòng)可能需要測(cè)試的大大改。

二、接口測(cè)試

相比于UI自動(dòng)化測(cè)試,接口測(cè)試更穩(wěn)定,更具有價(jià)值。

效率。接口測(cè)試是通過(guò)測(cè)試數(shù)據(jù)驗(yàn)證請(qǐng)求【request】與響應(yīng)【response】是否符合預(yù)期。因此,接口測(cè)試開(kāi)發(fā)和調(diào)試的效率會(huì)比ui自動(dòng)化測(cè)試高很多。

穩(wěn)定性。如果接口改動(dòng),那基本屬于業(yè)務(wù)重新設(shè)計(jì)。所以接口測(cè)試用例執(zhí)行的穩(wěn)定性很高。

實(shí)用性。UI自動(dòng)化測(cè)試驗(yàn)證的主要是頁(yè)面顯示,而接口測(cè)試驗(yàn)證的主要是數(shù)據(jù)。在當(dāng)前開(kāi)發(fā)水平下,功能測(cè)試基本可以完全驗(yàn)證頁(yè)面顯示的問(wèn)題,所以UI測(cè)試有點(diǎn)類(lèi)似于“這些沒(méi)問(wèn)題了,為了保證一直沒(méi)問(wèn)題,所以要寫(xiě)UI自動(dòng)化,每天去執(zhí)行”。接口測(cè)試則是對(duì)接口返回?cái)?shù)據(jù)的驗(yàn)證,開(kāi)發(fā)在開(kāi)發(fā)新的接口時(shí)涉及到接口互相的調(diào)用,中間難免出現(xiàn)比如數(shù)據(jù)類(lèi)型、key-value不匹配的情況,因此在實(shí)用性考慮,接口測(cè)試實(shí)用性更高。

三、單元測(cè)試

我們?cè)谧龇枪δ軠y(cè)試時(shí),可以利用UI自動(dòng)化測(cè)試,覆蓋產(chǎn)品主要或者說(shuō)關(guān)鍵流程(包含兼容性測(cè)試),也就是說(shuō)只要保證主要流程不出錯(cuò),剩下的即使有了問(wèn)題也不會(huì)影響產(chǎn)品的正常使用。把時(shí)間更多的放在接口測(cè)試用例的設(shè)計(jì)和實(shí)現(xiàn)上,保證數(shù)據(jù)的準(zhǔn)確性。單元測(cè)試則可以根據(jù)情況選擇時(shí)間分配。


以上僅供參考和借鑒,希望對(duì)你有所幫助!

小楓文章整理不易,歡迎各位朋友點(diǎn)贊!

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容