⑴ 軟體測試自動化測試面試題
第一題:我認為需要在測試前需要先寫好測試計劃,其中最重要的是本次測試使用的測試方法、使用的測試工具、測試環境。人員方面需要進行人員及進度的安排,每個測試階段後的輸出工件,還要有風險評估。在測試前將這些准備工作做到位,這樣在測試的時候就會比較有條理。
第二題:控制測試質量,我認為最好是做好測試用例的設計,這樣可以對測試的覆蓋率進行控制。
補充:如果時間充裕的話可以在設計用例後對其進行評審,這樣可以提高測試質量。不過這個在實際的工作當中一般實現不了。。。。
下面列出的是網上的一個軟測筆試題,好多單位在筆試的時候都會下來作為筆試題,我至少遇到兩次了,其他的筆試題還有,但不一一列出了。
一、判斷題(每題1分,12 分,正確的√,錯誤的╳)
1.軟體測試的目的是盡可能多的找出軟體的缺陷。()
2.Beta 測試是驗收測試的一種。()
3.驗收測試是由最終用戶來實施的。()
4.項目立項前測試人員不需要提交任何工件。()
5.單元測試能發現約80%的軟體缺陷。()
6.代碼評審是檢查源代碼是否達到模塊設計的要求。()
7.自底向上集成需要測試員編寫驅動程序。()
8.負載測試是驗證要檢驗的系統的能力最高能達到什麼程度。()
9.測試人員要堅持原則,缺陷未修復完堅決不予通過。()
10.代碼評審員一般由測試員擔任。() 1
11.我們可以人為的使得軟體不存在配置問題。()
12.集成測試計劃在需求分析階段末提交。()
二、不定項選擇題(每題2 分,10分)
1.軟體驗收測試的合格通過准則是:()
A. 軟體需求分析說明書中定義的所有功能已全部實現,性能指標全部達到要求。
B. 所有測試項沒有殘餘一級、二級和三級錯誤。
C. 立項審批表、需求分析文檔、設計文檔和編碼實現一致。
D. 驗收測試工件齊全。
2.軟體測試計劃評審會需要哪些人員參加?()
A.項目經理
B.SQA 負責人
C.配置負責人
D.測試組
3.下列關於alpha 測試的描述中正確的是:()
A.alpha 測試需要用戶代表參加
B.alpha 測試不需要用戶代表參加
C.alpha 測試是系統測試的一種
D.alpha 測試是驗收測試的一種
4.測試設計員的職責有:()
A.制定測試計劃
B.設計測試用例
C.設計測試過程、腳本
D.評估測試活動
5.軟體實施活動的進入准則是:()
A.需求工件已經被基線化
B.詳細設計工件已經被基線化
C.構架工件已經被基線化
D.項目階段成果已經被基線化
三、填空題(每空1分,24 分)
1.軟體驗收測試包括(正式驗收測試)、(非正式驗收測試和Alpha測試)、(Beta測試)三種類型。
2.系統測試的策略有功能測試、(性能測試)、(負載測試)、(壓力測試)、易用性測試、(容量測試)、(強度測試)、 (兼容性測試又稱)、(本地化測試)、(BVT測試)、(裸機測試)、(安全性測試)、()、(容錯性測試)、(恢復測試)、()等15 種方法。
3.設計系統測試計劃需要參考的項目文檔有(需求規格說明書)、()和迭代計劃。
4.對面向過程的系統採用的集成策略有()、()兩種。
5.通過畫因果圖來寫測試用例的步驟為、、、及把因果圖轉 換為狀態圖共五個步驟。
四、簡答題(共37分)
1. 階段評審與同行評審的區別。(4 分)
2 . 什麼是軟體測試。(3 分)
答:通過人工或自動化手段對系統進行測試,目的是為了驗證系統是否滿足預定功能或者是為了弄清楚實際結果與預期結果之間的差別。
3 . 簡述集成測試的過程。(5 分)
答:將通過單元測試的單元模塊按照設計要求組合起來再進行測試。重點檢查程序介面處是否有問題。
過程:首先進行集成測試的測試計劃測試設計測試開發測試用例執行測試評估,並且進行全程的缺陷跟蹤。
4 . 怎樣做好文檔測試?(4 分)
答:文檔測試要注意一下幾點:文檔的讀者群、文檔的術語、文檔的正確性、文檔的完整性、文檔的一致性、文檔的易用性、樣例與示例、文檔的語言
5. 白盒測試有那幾種方法?(6 分)
答:白盒測試方法分為:靜態測試和動態測試
靜態測試方法:①編碼標准與准則 ②走查 ③審查 ④評審
動態測試方法:①語句覆蓋 ②判定覆蓋 ③條件覆蓋 ④判定-條件覆蓋 ⑤條件組合覆蓋 ⑥路徑覆蓋
⑦條件組合+路徑覆蓋
6. 系統測試計劃是否需要同行評審,為什麼?(4 分)
答:系統測試計劃需要進行同行評審,因為如果對一個系統長時間進行測試可能會出現測試疲勞甚至出現
對系統的免疫現象,因此可以進行同行評審,減少對相同系統的疲勞測試。
7. Alpha 測試與beta 測試的區別。(4 分)
8 . 比較負載測試、容量測試和強度測試的區別。(6 分)
9 . 測試結束的標準是什麼?(3 分)
⑵ 一個購物網站一套自動化測試腳本大概要花多長時間寫完
這 很難說啊,看你的代碼能力和網站的復雜度,以及是否有現成的框架可供使用
如果有框架,代碼稍微好點,差不多兩周到一個月吧
如果沒有,1個月以上吧
⑶ 零基礎學習軟體測試需要多長時間
零基礎學習軟體測試需要花費多久時間,主要是看你是採用哪種方式學習。
學習軟體測試一般有兩種方式:自學和培訓。
一、零基礎自學的話,花的時間是比較長的。因為會跟你個人的時間安排以及學習能力有關系。自學時遇到問題比較容易走彎路。想要達到理想的學習效果,找到滿意的工作的話,可能會在半年以上,甚至更久。
二、參加線下培訓,有專業老師按照大綱進行系統授課,在學習中遇到技術問題能夠快速得到解決,一般需要4-5個月左右的時間。
比如蝸牛學院的測試開發課程就是4-5個月左右。從周一到周六,每周足足六天課程排滿,晚自習強行上到八點半。配合實體項目,全程無休息,緊張而充實。從通用核心技術,到系統測試,再到測試開發,最後自主開發測試框架,從底層原理再到高級應用,無所不包,涵蓋全部測試開發核心技術,滿足企業核心技術需求。
從長遠發展的角度考慮,不要太在乎時間,把知識學扎實了才有競爭力。
⑷ 如何通宵跑自動化腳本
給你個合集吧,原來我在道具服時用的。你要的這些都有,望採納為滿意答案哦~
⑸ 介面自動化測試流程是怎樣的
介面自動化:
如果是那種http協議的介面
那麼第一種,使用eclipse
自己封裝下httpclient
,然後自己寫java腳本進行介面測試
這種要麻煩點
第二種,使用jmeter工具,這個是專門針對http介面的進行性能以及介面測試工具
⑹ 在實際介面測試中,介面測試工作的詳細開展方式是怎麼樣的
在實際工作中,介面的展現形式不是固定。但是市場上,最多的還是HTTP協議的介面測試。
基於HTTP協議的介面測試,工作開展方式類似於這樣:
項目立項階段 -> 項目經理、產品經理、測試經理、CEO等人員參與
需求階段 -> 產品經理根據項目,輸出需求規則說明書,產品說明書;然後需求評審
項目排期 -> 項目經理根據產品功能,確定開發、測試、上線計劃的時間節點
研發階段 -> 輸出概要設計和詳細設計文檔,並且各個角色根據文檔設計系統架構、資料庫、配置文件;並開始編寫業務功能的代碼
測試階段 -> 單元測試、集成測試、系統測試、驗收測試(介面測試屬於集成測試)
發布上線 -> 上線問題驗證和維護
測試階段的細節:
測試工作的開展,與公司對測試流程的管理和把控有很大關系,不同的公司,把控力度都不一樣。在標準的測試流程裡面,我們需要編寫測試用例,但是有的公司甚至測試用例都不用寫,對測試質量的控制,停留在「測試人員的責任心和技術水平」上。
如果是一個有前後端的項目,那麼介面測試流程是這么開展的:
1. 後端開發人員完成代碼編寫,輸出介面文檔
2. 前端開發和後端開發進行前後端聯調,打通主幹流程;聯調結束後,後端開發人員提測介面
3. 介面測試人員,根據後端開發的提測的介面,按照介面文檔在【測試環境】進行介面測試。此時前端開發人員在並行開發前端頁面
4. 此時,由於項目中,前端開發、後端介面都在同時進行,所以會出現測試和前端開發的進度問題:
前端開發完成、介面測試完成:這是最理想的情況,此時手工功能測試介入測試,介面測試人員進入驗收測試。
前端開發完成、介面測試未完成:此時手工功能測試也會介入測試,與介面測試並行測試;(PS:如果功能測試結束了,介面測試依然未完成,那麼手工功能和介面一起進入驗收測試。)
前端開發未完成、介面測試已完成:手工功能測試無法介入。
5. 【測試環境】的介面測試結束後,介面測試人員需要在【驗收環境】進行驗收回歸測試
6. 【驗收環境】執行通過後,介面測試人員,可以把介面自動化腳本,利用持續集成技術,集成到平台中,進行持續的校驗。
7. 最後發布上線後,一般介面測試人員不需要介入生產環境的介面測試。但是少數情況下,介面測試人員,也需要在生產環境進行介面測試(不建議)
了解了嗎?如果想晉升,或者是學習軟體測試的最新知識,歡迎來看黑馬程序員視頻庫內容,有最新的軟體測試學習內容哦!
⑺ 介面自動化測試流程是什麼
了解了介面測試是什麼之後,怎麼做介面測試呢?介面測試的流程其實和功能測試流程類似:介面測試計劃-介面測試用例-介面測試執行-介面測試報告。測試用例設計的依賴對象主要是需求說明書和介面文檔。
介面測試因其不是針對普通用戶,而是針對的另外一個系統組件,所以不能直接測試,需要使用工具測試,比如服務端http介面測試,常用的工具有jmeter、postman、httpclient等。用工具測試,所以目標就是准備要測試數據測試腳本後直接執行即可, 在進行測試執行編寫時,有如下的原則:
1.不同的介面參數覆蓋不同的業務場景;
2.在後台構造合適的數據來滿足介面的測試用例;
3.根據介面的返回值,斷言其是否返回期望結果,並查看資料庫驗證;
4.測試用例涉及多個步驟的,應對涉及的步驟都驗證;
5.刪除測試過程中產生的結果,確保每個用例執行前都是一個清潔的環境
⑻ 使用python做介面自動化測試容易嗎
為什么要做介面自動化測試?
在當前互聯網產品迭代頻繁的背景下,回歸測試的時間越來越少,很難在每個迭代都對所有功能做完整回歸。但介面自動化測試因其實現簡單、維護成本低,容易提高覆蓋率等特點,越來越受重視。
為什么要自己寫框架呢?
使用Postman調試通過過直接可以獲取介面測試的基本代碼,結合使用requets + unittest很容易實現介面自動化測試的封裝,而且requests的api已經非常人性化,非常簡單,但通過封裝以後(特別是針對公司內特定介面),可以進一步提高腳本編寫效率。
一個現有的簡單介面例子
下面使用requests + unittest測試一個查詢介面
介面信息如下
請求信息:
Method:POST
URL:api/match/image/getjson
Request:
{
"category": "image",
"offset": "0",
"limit": "30",
"sourceId": "0",
"metaTitle": "",
"metaId": "0",
"classify": "unclassify",
"startTime": "",
"endTime": "",
"createStart": "",
"createEnd": "",
"sourceType": "",
"isTracking": "true",
"metaGroup": "",
"companyId": "0",
"lastDays": "1",
"author": ""
}
Response示例:
{
"timestamp" : xxx,
"errorMsg" : "",
"data" : {
"config" : xxx
}
Postman測試方法見截圖:
測試思路
1.獲取Postman原始腳本
2.使用requests庫模擬發送HTTP請求**
3.對原始腳本進行基礎改造**
4.使用python標准庫里unittest寫測試case**
原始腳本實現
未優化
該代碼只是簡單的一次調用,而且返回的結果太多,很多返回信息暫時沒用,示例代碼如下
import requests
url = "http://cpright.xinhua-news.cn/api/match/image/getjson"
querystring = {"category":"image","offset":"0","limit":"30","sourceId":"0","metaTitle":"","metaId":"0","classify":"unclassify","startTime":"","endTime":"","createStart":"","createEnd":"","sourceType":"","isTracking":"true","metaGroup":"","companyId":"0","lastDays":"1","author":""}
headers = { 'cache-control': "no-cache", 'postman-token': "e97a99b0-424b-b2a5-7602-22cd50223c15"
}
response = requests.request("POST", url, headers=headers, params=querystring)
print(response.text)
優化 第一版
調整代碼結構,輸出結果Json出來,獲取需要驗證的response.status_code,以及獲取結果校驗需要用到的results['total']
#!/usr/bin/env python#coding: utf-8'''
unittest merchant backgroud interface
@author: zhang_jin
@version: 1.0
@see:http://www.python-requests.org/en/master/
'''import unittestimport jsonimport tracebackimport requests
url = "http://cpright.xinhua-news.cn/api/match/image/getjson"
querystring = { "category": "image", "offset": "0", "limit": "30", "sourceId": "0", "metaTitle": "", "metaId": "0", "classify": "unclassify", "startTime": "", "endTime": "", "createStart": "", "createEnd": "", "sourceType": "", "isTracking": "true", "metaGroup": "", "companyId": "0", "lastDays": "1", "author": ""
}
headers = { 'cache-control': "no-cache", 'postman-token': "e97a99b0-424b-b2a5-7602-22cd50223c15"
}#Post介面調用
response = requests.request("POST", url, headers=headers, params=querystring)#對返回結果進行轉義成json串
results = json.loads(response.text)#獲取http請求的status_codeprint "Http code:",response.status_code#獲取結果中的total的值print results['total']#print(response.text)
優化 第二版
介面調用異常處理,增加try,except處理,對於返回response.status_code,返回200進行結果比對,不是200數據異常信息。
#!/usr/bin/env python#coding: utf-8'''
unittest merchant backgroud interface
@author: zhang_jin
@version: 1.0
@see:http://www.python-requests.org/en/master/
'''import jsonimport tracebackimport requests
url = "http://cpright.xinhua-news.cn/api/match/image/getjson"
querystring = { "category": "image", "offset": "0", "limit": "30", "sourceId": "0", "metaTitle": "", "metaId": "0", "classify": "unclassify", "startTime": "", "endTime": "", "createStart": "", "createEnd": "", "sourceType": "", "isTracking": "true", "metaGroup": "", "companyId": "0", "lastDays": "1", "author": ""
}
headers = { 'cache-control': "no-cache", 'postman-token': "e97a99b0-424b-b2a5-7602-22cd50223c15"
}try: #Post介面調用
response = requests.request("POST", url, headers=headers, params=querystring) #對http返回值進行判斷,對於200做基本校驗 if response.status_code == 200:
results = json.loads(response.text) if results['total'] == 191: print "Success" else: print "Fail" print results['total'] else: #對於http返回非200的code,輸出相應的code raise Exception("http error info:%s" %response.status_code)except:
traceback.print_exc()
⑼ 軟體測試面試 叫我寫一個自動化測試用例,能夠實現24小時自動測試,怎麼寫啊,這個我不懂呢,大俠們幫幫忙
1、首先,明確測試的產品和需求,例如:是一個web界面測試還是CLI測試;需求是對界面進行一個操作還是進行一系列的配置
2、明確測試產品和需求之後,然後就是選擇測試工具或者直接用腳本進行介面的調用
3、然後就是回放進行測試,而24小時的話,你只需加一個循環操作,在循環操作里加一個if判斷,如果時間到達24h,則break出循環即可。
總之,一個自動化測試用例,其是是對一個手工測試用例的腳本化,也可以說是程序化,然後加一些自己的邏輯判斷,就可以實現24H自動化測試了
看看有沒有幫上你~