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

自動(dòng)化測(cè)試面試真題(附答案)

這篇具有很好參考價(jià)值的文章主要介紹了自動(dòng)化測(cè)試面試真題(附答案)。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

一、編程語(yǔ)法題
1 python 有哪些數(shù)據(jù)類型
python 數(shù)據(jù)類型有很多,基本數(shù)據(jù)類型有整型(數(shù)字)、字符串、元組、列表、
字典和布爾類型等
2 、怎么將兩個(gè)字典合并
調(diào)用字典的 update 方法,合并 2 個(gè)字典。
3 json.l python 如何將 json 寫(xiě)到文件里?
oads() 是將字符串傳化為字典
json.load()是將文件打開(kāi)從字符串轉(zhuǎn)換成數(shù)據(jù)類型
json.dumps () 是將字典轉(zhuǎn)化為字符串
json.dump()是將數(shù)據(jù)類型轉(zhuǎn)換成字符串并存儲(chǔ)在文件中
4 、 __init__ __new__ 區(qū)別?
·__new__是在實(shí)例創(chuàng)建之前被調(diào)用的,因?yàn)樗娜蝿?wù)就是創(chuàng)建實(shí)例然后返回該
實(shí)例對(duì)象,是個(gè)靜態(tài)方法。
·
__init__是當(dāng)實(shí)例對(duì)象創(chuàng)建完成后被調(diào)用的,然后設(shè)置對(duì)象屬性的一些初始值,
通常用在初始化一個(gè)類實(shí)例的時(shí)候。是一個(gè)實(shí)例方法。
5 、什么是可變、不可變類型?
·可變數(shù)據(jù)類型:列表 list 和字典 dict;
·不可變數(shù)據(jù)類型:整型 int、浮點(diǎn)型 float、字符串型 string 和元組 tuple
6 mysql 注入點(diǎn),用工具對(duì)目標(biāo)站直接寫(xiě)入一句話,需要哪些條件?
mysql 寫(xiě)入一句話需要具備
1.secure-file-priv='',即:my.ini 文件,打開(kāi)找到 secure-file-priv 參數(shù)
改空
2.當(dāng)前用戶具備 root 權(quán)限
3.已獲取到應(yīng)用程序的絕對(duì)路徑,且目錄可以進(jìn)行文件寫(xiě)入操作。 7 、 python 深淺拷貝的區(qū)別
對(duì)于不可變數(shù)據(jù)來(lái)說(shuō)深淺拷貝的結(jié)果一致會(huì)重新創(chuàng)一個(gè)數(shù)據(jù)的副本。淺拷貝對(duì)于
可變類型來(lái)說(shuō)只會(huì)拷貝其元素的引用。
深拷貝對(duì)于可變?cè)貋?lái)說(shuō)會(huì)遞歸的整個(gè)重新創(chuàng)建一個(gè)原數(shù)據(jù)的副本。
8 python 為什么使用 *args **kwargs
如果我們不確定要往函數(shù)中傳入多少個(gè)參數(shù),或者我們想往函數(shù)中以列表和元組
的形式傳參數(shù)時(shí),那就使要用*args;如果我們不知道要往函數(shù)中傳入多少個(gè)關(guān)
鍵詞參數(shù),或者想傳入字典的值作為關(guān)鍵詞參數(shù)時(shí),那就要使用**kwargs。args
和 kwargs 這兩個(gè)標(biāo)識(shí)符是約定俗成的用法,你當(dāng)然還可以用*bob 和**billy,
但是這樣就不太專業(yè)。
9 、重寫(xiě)和重載有什么區(qū)別?
重寫(xiě):用在類的繼承當(dāng)中。子類對(duì)父類的同名方法,進(jìn)新重寫(xiě)。在子類同名方法
內(nèi)部,如果要延用父類的方法,可以使用 super 調(diào)用。
重載:用在類當(dāng)中,對(duì)于同一個(gè)方法名,支持不同類型的參數(shù),支持不同數(shù)量的
參數(shù)。由于 python 的函數(shù)本身就對(duì)參數(shù)不作類型限定,也有*args 和**kwargs
支持不定長(zhǎng)參數(shù)。
10 、 python 實(shí)現(xiàn) get 數(shù)據(jù)庫(kù)的表?你是怎么實(shí)現(xiàn)的?
python 當(dāng)中對(duì)于不同數(shù)據(jù)庫(kù),都有不同的第三庫(kù)來(lái)實(shí)現(xiàn)連接和數(shù)據(jù)庫(kù)操作。
比較熟悉的是對(duì) mysql 的操作。使用的是 pymysql 這個(gè)第三方庫(kù)。第一步是建立
數(shù) 據(jù) 庫(kù) 連 接 ; 第 二 步 調(diào) 用 execute 方 法 執(zhí) 行 sql 語(yǔ) 句 , 第 三 步 使 用
fetchone,fetchall,fetchmany 去獲取不同條數(shù)的結(jié)果。
11 、對(duì)象 ( 實(shí)例 ) 方法,類方法,靜態(tài)方法的定義有何不同?分別適用于什么場(chǎng)
景?
python 中,類中定義的普通函數(shù)就是對(duì)象方法,對(duì)象方法中的第一個(gè)形參一般
會(huì)定義為`self`,表示調(diào)用的對(duì)象本身,當(dāng)對(duì)象調(diào)用對(duì)象方法時(shí)會(huì)被隱式的傳遞
給這個(gè)形參。所以當(dāng)函數(shù)需要用到對(duì)象或?qū)ο蟮膶傩詴r(shí)一般會(huì)將其定義為對(duì)象方
法。
類方法定義時(shí),需要使用裝飾器`classmethod`進(jìn)行裝飾,類方法中的第一個(gè)形
參一般會(huì)定義為`cls`,表示類本身。當(dāng)對(duì)象調(diào)用或類調(diào)用類方法時(shí),類會(huì)被隱
式的傳遞給這個(gè)形參。所以當(dāng)函數(shù)需要用到類或者類的屬性時(shí)一般會(huì)將其定義為
類方法。
靜態(tài)方法定義時(shí),需要使用裝飾器`staticmethod`進(jìn)行裝飾,其他與普通函數(shù)沒(méi)
有區(qū)別。一般會(huì)將一些與對(duì)象和類無(wú)關(guān)的工具函數(shù)定義為靜態(tài)方法,方便調(diào)用。 12 、 SQL 連表查詢,去重查詢,查詢重復(fù)的數(shù)據(jù)?
連表查詢:SELECT 字段 1,字段 2,字段 3,…… FROM 表名 1 INNER JOIN 表名 2
ON 關(guān)聯(lián)條件;
去重查詢:SELECT distinct ...;
查詢重復(fù)的數(shù)據(jù):select 列名 from 表名 group by 列名 having count(列
名) > 1;
13 、 python 的單例模式?
單例模式是:確保類有且只有一個(gè)對(duì)象被創(chuàng)建
為唯一對(duì)象提供訪問(wèn)點(diǎn),令其可被全局訪問(wèn)
控制共享資源的并行訪問(wèn)
具體實(shí)現(xiàn)方式可以通過(guò)模塊導(dǎo)入、裝飾器、控制 __new__方法 等等。
14 、什么是 PEP 8 ?
EP 8 代表 Python Enhancement Proposal,它可以定義為幫助我們提供有關(guān)如
何編寫(xiě) Python 代碼的指南的文檔。 它基本上是一組規(guī)則,指定如何格式化
Python 代碼以獲得最大的可讀性。 它由 Guido van Rossum、Barry Warsaw 和
Nick Coghlan 于 2001 年編寫(xiě)
15 PO 模式的封裝原則有哪一些?
公共方法表示頁(yè)面提供的服務(wù)。 比如把登錄封裝成 login 方法,搜索操作封裝
成 search 方法,
注冊(cè)操作封裝成 register 方法。
- 盡量不要暴露頁(yè)面的內(nèi)部,比如頁(yè)面的 HTML, 頁(yè)面的上下結(jié)構(gòu)
- 一般不做斷言,做到頁(yè)面邏輯和測(cè)試邏輯的分離。
- 方法返回 self 或者其他 PageObjects,也可以是元素屬性等。
- 不需要封裝整個(gè)頁(yè)面行為,用到什么邏輯封裝什么邏輯
- 同一操作如果出現(xiàn)不同結(jié)果,可以用不同的方法表示。比如登錄成功有跳轉(zhuǎn),
登錄失敗報(bào)錯(cuò),登錄未授權(quán), 二、編碼題:
1 、冪的遞歸,計(jì)算 x n 次方,如: 3 4 次方 為 3*3*3*3=81
# 遞歸的方式
def mi(x, n):
if n == 0:
return 1
else:
return x*mi(x, n-1)
print(mi(3, 4))
非遞歸的方式:
def mix(x,n):
result = 1
for count in range(n):
result *= x
return result
print(mi(3,4))
2 、統(tǒng)計(jì)列表(
list )中每個(gè)元素出現(xiàn)的次數(shù)
# 統(tǒng)計(jì)列表(
list)中每個(gè)元素出現(xiàn)的次數(shù)
lista = [1, 2, 3, 4, 12, 22, 15, 44, 3, 4, 4, 4, 7, 7, 44, 77, 100]
new_dict = {}
for item in lista:
if item not in new_dict.keys():
new_dict[item] = lista.count(item)
print(new_dict) 3 、 ['abc13','abv89'] 這種列表,打印最大長(zhǎng)度的共同的前綴,列表元素個(gè)數(shù)不
確定
def test_str(iterable):
return_str=''
for i in zip(*iterable):
if len(set(i))==1:
return_str +=i[0]
else:
break
print(return_str)
return return_str
4 、對(duì) list 去重并找出列表 list 中的重復(fù)元素
from collections import Counter #引入 Counter
a = [1, 2, 3, 3, 4, 4]
b = dict(Counter(a))
print(b)
print ([key for key,value in b.items() if value > 1]) #只展示重復(fù)元素
print ({key:value for key,value in b.items() if value > 1}) #展現(xiàn)重復(fù)
元素和重復(fù)次數(shù)
5 、已知一個(gè)隊(duì)列 [1, 3, 6, 9, 7, 3, 4, 6]
1. 按從小到大排序
2. 按從大大小排序
3. 去除重復(fù)數(shù)字
a = [1, 3, 6, 9, 7, 3, 4, 6]
# 1.sort 排序,正序
a.sort()
print(a)
# 2.sort 倒敘
a.sort(reverse=True)
print(a)
# 3.去重
b = list(set(a))
print(b) 6 、任選語(yǔ)言完成雙向冒泡排序算法程序(
[8,6,4,3,9,1,2,5,7] 升序)
def bubble_sort(arry):
length = len(arry)
si = 0
ei = length - 1
while si < ei:
flage = False
if arry[si] > arry[si + 1]:
arry[si], arry[si + 1] = arry[si + 1], arry[si]
for i in range(si + 1, ei):
if arry[i] > arry[i + 1]:
arry[i], arry[i + 1] = arry[i + 1], arry[i]
flage = True
if arry[i] < arry[i - 1]:
arry[i], arry[i - 1] = arry[i - 1], arry[i]
ei -= 2
if arry[ei] < arry[ei - 1]:
arry[ei], arry[ei - 1] = arry[ei - 1], arry[ei]
for j in range(ei - 1, si, -1):
if arry[j] < arry[j - 1]:
arry[j], arry[j - 1] = arry[j - 1], arry[j]
flage = True
if arry[j] > arry[j + 1]:
arry[j], arry[j + 1] = arry[j + 1], arry[j]
si += 2
if not flage:
break
return arry
if __name__ == '__main__':
res = bubble_sort([8, 6, 4, 3, 9, 1, 2, 5, 7])
print(res) 三、自動(dòng)化基礎(chǔ)能力評(píng)估:
1 、 python 列表和字典的區(qū)別,列表和元組的區(qū)別?
列表是有序的,字典是無(wú)序的。列表通過(guò)索引獲取、字典通過(guò) key 獲取。
列表是可變的,可以修改、添加、刪除其中的元素,但是元組是不可變的,不能
修改、添加、刪除其中的元素。
對(duì)于一個(gè)元素的元組,必須要在元素后加逗號(hào),而列表不需要。
2 、 Python 用到的庫(kù)
單元測(cè)試框架:unittest pytest
操作 mysql 數(shù)據(jù)庫(kù): pymysql
http 請(qǐng)求庫(kù):requests
web 自動(dòng)化:selenium
處理日志:logging
json 數(shù)據(jù)提取和 json 文件讀寫(xiě):json,jsonpath
pyyaml:yaml 文件讀寫(xiě)
3 、 unittest pytest 區(qū)別?
·pytest 是第三方庫(kù),基于 unittest 的擴(kuò)展框架,比 unittest 更簡(jiǎn)潔,高效
·pytest 有豐富的插件系統(tǒng)
·pytest 的夾具使用更加靈活
·pytest 可以很方便的過(guò)濾用例
4 、 python 當(dāng)中如何操作數(shù)據(jù)庫(kù) ?
·
python 中不同的數(shù)據(jù)庫(kù),都有對(duì)應(yīng)的第三方庫(kù)。比如 mysql 數(shù)據(jù)庫(kù)有 pymysql
庫(kù),oracle 數(shù)據(jù)庫(kù)有 cx_Oracle
·安裝成功第三方庫(kù)后,代碼中將包導(dǎo)進(jìn)來(lái) ·接下來(lái)就是連接數(shù)據(jù)庫(kù),提供數(shù)據(jù)庫(kù)的服務(wù)器地址、端口號(hào)、訪問(wèn)的用戶名和
密碼、數(shù)據(jù)庫(kù)名稱,通過(guò)調(diào)用對(duì)應(yīng)的方法去連接
·連接成功之后,調(diào)用執(zhí)行 sql 語(yǔ)句的方法去操作數(shù)據(jù)庫(kù)
·操作完成之后,釋放數(shù)據(jù)庫(kù)連接
5 、 jemeter postman 實(shí)現(xiàn)多接口關(guān)聯(lián)測(cè)試 ? 怎么做關(guān)聯(lián) ?
6 、接口自動(dòng)化的斷言怎么做
7 、如果需要用自動(dòng)化測(cè)刪除接口,斷言怎么做
8 、做自動(dòng)化的過(guò)程中如何處理驗(yàn)證碼
·讓開(kāi)發(fā)屏蔽驗(yàn)證碼,邀請(qǐng)開(kāi)發(fā)處理,在測(cè)試環(huán)境,預(yù)發(fā)和正式環(huán)境恢復(fù)
·讓開(kāi)發(fā)設(shè)置一個(gè)萬(wàn)能驗(yàn)證碼,使用復(fù)雜的其他人無(wú)法猜到的驗(yàn)證碼
·基于圖像識(shí)別,破解驗(yàn)證碼
9 、自動(dòng)化測(cè)試用例如何編寫(xiě)
自動(dòng)化測(cè)試本質(zhì)是測(cè)試,是用自動(dòng)化手段,替代部分手工測(cè)試。
·自動(dòng)化測(cè)試用例,源自功能測(cè)試用例,都應(yīng)包含前置/后置,步驟,斷言。
·自動(dòng)化用例設(shè)計(jì)原則,與功能用例一致。
·自動(dòng)化用例需要自行解決:環(huán)境依賴問(wèn)題。比如手工測(cè)試時(shí),遇到前置條件不
滿足,手工去準(zhǔn)備前置條件再測(cè)試。
·自動(dòng)化用例斷言要明確:將手工測(cè)試看到的期望效果,轉(zhuǎn)成代碼。
·自動(dòng)化用例需要考慮重復(fù)執(zhí)行不受影響。
·考慮好以上 5 點(diǎn),使用工具或者代碼的測(cè)試框架編寫(xiě)即可。
10 、 pytest 的前置實(shí)現(xiàn)有哪幾種方式?
11 Appium 都有哪些啟動(dòng)方式
12 、 web ui 自動(dòng)化中顯式等待、隱式等待有什么區(qū)別
相同點(diǎn): ·都是智能等待,在一定時(shí)間范圍內(nèi)不斷查找元素,一旦找到立刻執(zhí)行后續(xù)代碼,
沒(méi)找到就會(huì)一直查找到超時(shí)為止
不同點(diǎn):
顯式等待:顯示等待是單獨(dú)針對(duì)某個(gè)元素,設(shè)置一個(gè)等待時(shí)間,設(shè)置一個(gè)查詢間
隔時(shí)間,在等待時(shí)間內(nèi)會(huì)按照設(shè)置的間隔時(shí)間對(duì)該元素進(jìn)行查找,超過(guò)設(shè)置的等
待時(shí)間尚未出現(xiàn)則拋異常;顯示等待必須在每個(gè)需要等待的元素前面進(jìn)行聲明
隱式等待:隱式等待是全局的是針對(duì)所有元素,設(shè)置一個(gè)等待時(shí)間,在設(shè)置的等
待時(shí)間內(nèi),程序會(huì)不停檢測(cè)頁(yè)面元素是否全部加載完成,加載完成則繼續(xù)向下,
超過(guò)設(shè)置的等待時(shí)間尚未出現(xiàn)則拋異常;隱式等待只需要聲明一次,聲明之后對(duì)
整個(gè) drvier 的生命周期都有效不用重復(fù)聲明;程序會(huì)一直等待整個(gè)頁(yè)面加載完
13、 有沒(méi)有遇到元素定位不到情況?如何處理的?
14、·頁(yè)面加載元素過(guò)慢,加等待時(shí)間
15、·頁(yè)面有 frame 框架頁(yè),需要先跳轉(zhuǎn)入 frame 框架再定位
16、·可能該元素是動(dòng)態(tài)元素,定位方式要優(yōu)化,可以使用部分元素定位或通過(guò)
父節(jié)點(diǎn)或兄弟節(jié)點(diǎn)定位。
17、·可能識(shí)別了元素,但是不能操作,比如元素不可用,不可寫(xiě)等。需要使用
js 先把前置的操作完成,
18、·元素定位的表達(dá)式寫(xiě)錯(cuò)了。
19 、請(qǐng)盡可能多的列出自動(dòng)化的元素定位方式,以及你最喜歡的定位方式?
web 自動(dòng)化的定位方式:
1、通過(guò) id:find_element_by_id
2、通過(guò) name 屬性:find_element_by_name
3、通過(guò) class 屬性:find_element_by_name
4、通過(guò)標(biāo)簽名:find_element_by_tag_name
5、通過(guò)文本定位鏈接標(biāo)簽:find_element_by_link_text
6、通過(guò)文本部分匹配,定位鏈接標(biāo)簽:find_element_by_partial_link_text 7、通過(guò) xpath 定位:find_element_by_xpath
8、css 選擇器定位:find_element_by_css_selector
最常用的:id,xpath 和 css 這三種
20 、如果同一個(gè)瀏覽器打開(kāi)兩個(gè)窗口,要用 selenium 里面哪個(gè)指令進(jìn)行切換?
1,窗口切換, 2, iframe 切換, 3,alert 切換
21 、 App 自動(dòng)化有做過(guò)嗎?知道用到哪些技術(shù)框架嗎?
做過(guò),app 自動(dòng)化主要使用的開(kāi)源框架 appium,結(jié)合測(cè)試框架 pytest,還有 PO
設(shè)計(jì)思想,共同搭建了 app 自動(dòng)化測(cè)試框架。
22 、 ui 自動(dòng)化出現(xiàn)的異常,以及出現(xiàn)這些異常后你是如何處理的?
元素定位失敗異常,處理方式為檢查元素定位表達(dá)式,添加等待;
定位超時(shí)異常,檢查定位方式,檢查是否有 iframe ;
元素?zé)o法交互,檢查是否定位到正確元素。
23 、什么 PO 模式,什么是 page factory ?
·PO 模式是 page object model 的縮寫(xiě),顧名思義, 是一種設(shè)計(jì)模式,把每個(gè)
頁(yè)面當(dāng)成一個(gè)頁(yè)面對(duì)象,頁(yè)面層寫(xiě)定位元素方法和頁(yè)面操作方法,實(shí)現(xiàn)腳本的
page 和真實(shí)的網(wǎng)站頁(yè)面 Map 起來(lái),一對(duì)應(yīng)起來(lái)
·PO 模式業(yè)務(wù)代碼和測(cè)試代碼被分開(kāi),降低耦合性維護(hù)成本低,減少代碼冗余 18 、簡(jiǎn)述 selenium 的原理
selenium 涉及到三個(gè)組件的通訊,分別是
- 瀏覽器
- webdriver
- client
client 負(fù)責(zé)通過(guò)對(duì)應(yīng)的編程語(yǔ)言函數(shù)發(fā)送請(qǐng)求給 webdriver
client 其實(shí)并不知道瀏覽器是怎么工作的,但是 driver 知道,在 selenium 啟
動(dòng)以后,driver 其實(shí)充當(dāng)了服務(wù)器的角色,跟 client 和瀏覽器通信,client
根據(jù) webdriver 協(xié)議發(fā)送請(qǐng)求給 driver,driver 解析請(qǐng)求,并在瀏覽器上執(zhí)行
相應(yīng)的操作,并把執(zhí)行結(jié)果返回給 client。這就是 selenium 工作的大致原理。
19 、 UI 自動(dòng)化測(cè)試用例在運(yùn)行過(guò)程中經(jīng)常會(huì)出現(xiàn)不穩(wěn)定的情況,也就是說(shuō)這次
可以通過(guò),下次就沒(méi)有辦法通過(guò)了,如何去提升用例的穩(wěn)定性?
1. 界面上無(wú)法預(yù)測(cè)的彈框。頁(yè)面上經(jīng)常會(huì)根據(jù)用戶行為推送或者彈出動(dòng)態(tài)的信
息,比如版本更新,消息通知,推薦產(chǎn)品等等,當(dāng)這些彈框出現(xiàn)以后,原來(lái)的頁(yè)
面元素會(huì)被遮擋,無(wú)法被定位,此時(shí)可能會(huì)造成自動(dòng)化測(cè)試腳本運(yùn)行錯(cuò)誤。
2. 頁(yè)面元素的動(dòng)態(tài)變化;主要有兩方面的變化,第一方面,前端需求經(jīng)常發(fā)生
變化導(dǎo)致前端代碼頻繁修改,當(dāng)前端頁(yè)面變化以后可能會(huì)造成之前的元素?zé)o法被
定位;第二方面,頁(yè)面可能會(huì)根據(jù)用戶的狀態(tài)和等級(jí)展示不同的頁(yè)面,或者是這
一次訪問(wèn)的數(shù)據(jù)和下一次會(huì)不同。
3. 隨機(jī)的頁(yè)面延遲造成控件識(shí)別失敗;受限于網(wǎng)絡(luò)環(huán)境和設(shè)備狀態(tài),自動(dòng)化代
碼每次運(yùn)行時(shí)可能會(huì)產(chǎn)生隨機(jī)的超時(shí)處理。
4. 測(cè)試數(shù)據(jù)變更。ui 測(cè)試每個(gè)用例的測(cè)試步驟會(huì)有很大的區(qū)別,他們不能共享
同一套代碼邏輯,當(dāng)測(cè)試數(shù)據(jù)變更時(shí),如果不能及時(shí)更新自動(dòng)化代碼,會(huì)造成腳
本執(zhí)行出錯(cuò)等問(wèn)題。 四、自動(dòng)化項(xiàng)目實(shí)戰(zhàn)能力評(píng)估:
1 、介紹一下你的自動(dòng)化測(cè)試框架?
我的框架主要根據(jù)分層思想設(shè)計(jì)了幾個(gè)獨(dú)立模塊:
模塊一:主要存放通用業(yè)務(wù)代碼,比如接口訪問(wèn),數(shù)據(jù)庫(kù)操作,excel 操作,等
模塊二:主要負(fù)責(zé)用例收集和用例執(zhí)行,生成測(cè)試報(bào)告。
模塊三:主要負(fù)責(zé)存放測(cè)試用例數(shù)據(jù)。通常是使用 excel, yaml, 等通用數(shù)據(jù)格
式。
模塊四:主要存放測(cè)試用例方法和測(cè)試邏輯相關(guān)代碼。這里會(huì)調(diào)用模塊一種的通
用方法。
2 、講一下在工作中怎么做的自動(dòng)化測(cè)試?
a. 根據(jù)自動(dòng)化測(cè)試特性整理需求
b. 根據(jù)優(yōu)先級(jí),和公司人員狀況制定自動(dòng)化測(cè)試計(jì)劃
c. 制定自動(dòng)化測(cè)試執(zhí)行方案
d. 自動(dòng)化測(cè)試用例設(shè)計(jì)或從功能測(cè)試用例中挑選適合的用例
e. 自動(dòng)化腳本的開(kāi)發(fā)
f. 自動(dòng)化測(cè)試執(zhí)行,生成報(bào)告
4 、自動(dòng)化測(cè)試框架至少包含哪些核心模塊。
- 基礎(chǔ)方法
- 數(shù)據(jù)驅(qū)動(dòng)
- PO 分層
- 接口分層
- 接口數(shù)據(jù)管理
- 異常處理 - 工具包
- 配置
- 日志收集
- 測(cè)試報(bào)告
5 、框架中的接口參數(shù)傳遞怎么做的?是否有優(yōu)化,第三庫(kù)有沒(méi)有用到,方法是
什么?
框架當(dāng)中接口參數(shù)傳遞主要涉及 2 部分:一是數(shù)據(jù)生成或者提取,二是替換。在
框架當(dāng)中,數(shù)據(jù)從響應(yīng)結(jié)果提取用的 jsonpath,提取表達(dá)式直接寫(xiě)在 excel 當(dāng)
中,提取之后存儲(chǔ)到變量類 Data 當(dāng)中,作為它的類屬性。
替換時(shí),則直接訪問(wèn) Data 類的類屬性,將其值拿到并替換。在 excel 中要替換
的標(biāo)志為#value#。因?yàn)闀?huì)存在有多個(gè)要替換的值,所以用正則表達(dá)式來(lái)查找到
所有要替換的標(biāo)識(shí),然后全部替換。
用到的第三方庫(kù)的話,一個(gè)是 jsonpath,一個(gè)是 re
6 、拿到一個(gè)項(xiàng)目,怎么衡量這個(gè)項(xiàng)目做接口自動(dòng)化還是 UI 自動(dòng)化?
1、不管什么項(xiàng)目都可以做接口自動(dòng)化
2、偏公司內(nèi)部人員使用的管理平臺(tái)無(wú)需做 UI 自動(dòng)化,對(duì)外用戶的可以考慮做
UI 自動(dòng)化
7 、框架的數(shù)據(jù)庫(kù)驗(yàn)證在你 excel check_sql 放的是什么,你如何做的比對(duì)?
check_sql 中存放的是一個(gè)列表,列表的成員是字典,字典有 3 個(gè) key,一個(gè)是
sql 語(yǔ)句,第二個(gè)是期望結(jié)果,第三個(gè)是 sql 的查詢方式(查詢總條數(shù)/查詢值)
在收到響應(yīng)結(jié)果以后,會(huì)遍歷 check_sql 中的列表,將每一個(gè)字典取出來(lái),執(zhí)行
sql 語(yǔ)句查詢結(jié)果 ,并與期望結(jié)果做比較。
8 、自動(dòng)化測(cè)試中,測(cè)試用例的執(zhí)行是怎么讓他按照你寫(xiě)的用例一條一條執(zhí)行
的?
在我的項(xiàng)目接口自動(dòng)化中,我是用的 pytest 框架。
一個(gè)接口的用例,我的用例數(shù)據(jù)是寫(xiě)在 excel 當(dāng)中,在編寫(xiě)時(shí)就是按照順序?qū)懙模?
從 excel 讀取出來(lái)使用數(shù)據(jù)驅(qū)動(dòng) 方式就是按照 excel 中的順序;
多個(gè)接口的用例,因?yàn)槲沂且粋€(gè)接口一個(gè) py 測(cè)試文件,所以我在 py 測(cè)試文件命
名中用 00-99 數(shù)字按順序編寫(xiě)的。 9.Login 這些用例數(shù)據(jù)是在哪里取的? excel 嗎?用到什么方法?什么第三方
庫(kù)?
10 、自動(dòng)化測(cè)試中,測(cè)試用例的執(zhí)行是怎么讓他按照你寫(xiě)的用例一條一條執(zhí)行
的?
在我的項(xiàng)目接口自動(dòng)化中,我是用的 pytest 框架。
一個(gè)接口的用例,我的用例數(shù)據(jù)是寫(xiě)在 excel 當(dāng)中,在編寫(xiě)時(shí)就是按照順序?qū)懙模?
從 excel 讀取出來(lái)使用數(shù)據(jù)驅(qū)動(dòng) 方式就是按照 excel 中的順序;
多個(gè)接口的用例,因?yàn)槲沂且粋€(gè)接口一個(gè) py 測(cè)試文件,所以我在 py 測(cè)試文件命
名中用 00-99 數(shù)字按順序編寫(xiě)的。
具體公司的業(yè)務(wù):業(yè)務(wù)怎么開(kāi)展 項(xiàng)目的介紹? ( 或者簡(jiǎn)單介紹最熟悉的項(xiàng)目介紹: )
主要考察 2 個(gè)方面:一是表達(dá)能力和業(yè)務(wù)的熟悉度。二是做的項(xiàng)目復(fù)雜度如何,是否能勝任復(fù)
雜項(xiàng)目的測(cè)試工作。
一般是根據(jù)自己的業(yè)務(wù)來(lái)回答。最好是能講出有挑戰(zhàn)性有難度或者復(fù)雜的業(yè)務(wù)場(chǎng)景。面試官不一
定聽(tīng)得懂,但是他覺(jué)得復(fù)雜挺難的就可以。

文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-480989.html

到了這里,關(guān)于自動(dòng)化測(cè)試面試真題(附答案)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

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

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

相關(guān)文章

  • 花2個(gè)月時(shí)間整理了3.5W字的自動(dòng)化測(cè)試面試題(答案+學(xué)習(xí)路線)!為了找到好工作,拼了!

    從5月初開(kāi)始找工作到現(xiàn)在,先后面試了阿里巴巴、字節(jié)跳動(dòng)、網(wǎng)易、快手的測(cè)試開(kāi)發(fā)崗。 大公司對(duì)于測(cè)試開(kāi)發(fā)的要求相比來(lái)說(shuō)高很多,要求掌握的知識(shí)點(diǎn)的廣度和深度層次也比較高,遂整理了這兩個(gè)月的面試題目文檔供大家參考,同時(shí)也是為了方便以后自己需要的時(shí)候刷一

    2024年02月09日
    瀏覽(22)
  • 2023年經(jīng)典【自動(dòng)化面試題】附答案

    2023年經(jīng)典【自動(dòng)化面試題】附答案

    一、請(qǐng)描述一下自動(dòng)化測(cè)試流程? 自動(dòng)化測(cè)試流程一般可以分為以下七步: 編寫(xiě)自動(dòng)化測(cè)試計(jì)劃; 設(shè)計(jì)自動(dòng)化測(cè)試用例; 編寫(xiě)自動(dòng)化測(cè)試框架和腳本; 調(diào)試并維護(hù)腳本; 無(wú)人值守測(cè)試; 后期腳本維護(hù)(添加用例、開(kāi)發(fā)更新版本)。 二、自動(dòng)化測(cè)試有誤報(bào)過(guò)bug嗎?產(chǎn)生誤

    2024年02月15日
    瀏覽(19)
  • 自動(dòng)化測(cè)試工具Selenium的語(yǔ)法續(xù).

    自動(dòng)化測(cè)試工具Selenium的語(yǔ)法續(xù).

    OK,那么上篇博客我們介紹了如何搭建基于Java+selenium的環(huán)境,并且使用selenium的一些語(yǔ)法給大家演示了如何進(jìn)行自動(dòng)化測(cè)試的案例,那么本篇博客我們來(lái)繼續(xù)學(xué)習(xí)selenium的一些其他的比較重要的語(yǔ)法,感謝關(guān)注,期待三連~ 目錄 一、定位一組元素 二、下拉框處理 三、上傳文件

    2024年02月10日
    瀏覽(32)
  • python ui自動(dòng)化測(cè)試元素定位常用語(yǔ)法

    第一部分是css樣式定位方法 選擇器 示例 示例說(shuō)明 CSS . class .intro 選擇所有class=\\\"intro\\\"的元素 1 # id #firstname 選擇所有id=\\\"firstname\\\"的元素 1 * * 選擇所有元素 2 element p 選擇所有p元素 1 element,element div,p 選擇所有div元素和p元素 1 element ? element div p 選擇div元素內(nèi)的所有p元素 1 element

    2024年02月13日
    瀏覽(33)
  • Web自動(dòng)化測(cè)試-Selenium語(yǔ)法入門(mén)到精通

    前言 說(shuō)到自動(dòng)化測(cè)試,就不得不提大名鼎鼎的Selenium。Selenium 是如今最常用的自動(dòng)化測(cè)試工具之一,支持快速開(kāi)發(fā)自動(dòng)化測(cè)試框架,且支持在多種瀏覽器上執(zhí)行測(cè)試。 Selenium學(xué)習(xí)難度小,開(kāi)發(fā)周期短。對(duì)測(cè)試人員來(lái)說(shuō),如果你編程經(jīng)驗(yàn)不足,python + Selenium 是個(gè)很好的選擇。語(yǔ)

    2024年02月11日
    瀏覽(25)
  • web UI 自動(dòng)化測(cè)試:Selenium 語(yǔ)法詳解 史上最全

    web UI 自動(dòng)化測(cè)試:Selenium 語(yǔ)法詳解 史上最全

    selenium主要是用來(lái)做自動(dòng)化測(cè)試,支持多種瀏覽器,爬蟲(chóng)中主要用來(lái)解決JavaScript渲染問(wèn)題。模擬瀏覽器進(jìn)行網(wǎng)頁(yè)加載 一、聲明瀏覽器對(duì)象 二、訪問(wèn)頁(yè)面并獲取網(wǎng)頁(yè)html 三、查找元素 單個(gè)元素 常用的查找方法 也可以使用通用的方法 四、元素交互操作-搜索框傳入進(jìn)行自

    2024年02月21日
    瀏覽(25)
  • Python 自動(dòng)化測(cè)試面試題目

    1、super 是干嘛用的?在 Python2 和 Python3 使用,有什么區(qū)別?為什么要使用 super?請(qǐng)舉例說(shuō)明。 答: super 用于繼承父類的方法、屬性。 super 是新式類中才有的,所以 Python2 中使用時(shí),要在類名的參數(shù)中寫(xiě) Object。Python3 默認(rèn)是新式類,不用寫(xiě),直接可用。 使用 super 可以提高代

    2024年02月04日
    瀏覽(17)
  • 面試中關(guān)于自動(dòng)化測(cè)試的認(rèn)識(shí)

    面試中關(guān)于自動(dòng)化測(cè)試的認(rèn)識(shí)

    目錄 一、什么是自動(dòng)化測(cè)試,自動(dòng)化測(cè)試的優(yōu)勢(shì)是什么? 二、什么樣的項(xiàng)目比較適合做自動(dòng)化測(cè)試,什么樣的不適合做自動(dòng)化測(cè)試? 三、在制定自動(dòng)化測(cè)試計(jì)劃的時(shí)候一般要考慮哪些點(diǎn)? 四、編寫(xiě)自動(dòng)化腳本時(shí)的一些規(guī)范? 五、做自動(dòng)化測(cè)試時(shí)關(guān)注的一些指標(biāo)? 六、自動(dòng)

    2024年02月16日
    瀏覽(19)
  • 軟件測(cè)試面試題——接口自動(dòng)化測(cè)試怎么做?

    面試過(guò)程中,也問(wèn)了該問(wèn)題,以下是自己的回答: 接口自動(dòng)化測(cè)試,之前做過(guò),第一個(gè)版本是用jmeter 做的,1 主要是將P0級(jí)別的功能接口梳理出來(lái),根據(jù)業(yè)務(wù)流抓包獲取相關(guān)接口,并在jmeter中跑通,2 是整理了項(xiàng)目上的所有接口,先將單個(gè)接口跑通,然后再編寫(xiě)不同的接口用

    2024年02月14日
    瀏覽(27)
  • Python自動(dòng)化測(cè)試【selenium面試題】

    Python自動(dòng)化測(cè)試【selenium面試題】

    一、selenium中如何判斷元素是否存在? expected_conditions模塊提供了16種判斷方法,以下方法是判斷元素存在DOM中: presence_of_element_located \\\"\\\"\\\" An expectation for checking that an element is present on the DOM of a page. This does not necessarily mean that the element is visible. 判斷元素存在DOM中,存在并不代表

    2024年01月20日
    瀏覽(11)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

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

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包