面試小記--軟件測試概念

一、軟件測試的方法

(1)按是否查看程序內部結構分爲:

  • 白盒測試:通過程序源代碼進行測試而不是使用用戶界面(研究裏面的源代碼和程序),白盒測試的測試方法有:代碼檢查法、靜態結構分析法、靜態質量度量法、邏輯覆蓋法、基本路徑測試法、域測試、符號測試、Z路徑覆蓋、程序變異。
  • 黑盒測試:又被稱爲功能測試,看不到源代碼是通過使用整個軟件的各個功能來進行測試的(只關心輸入和輸出結果),黑盒測試常用的方法有:邊界值、等價類、錯誤推測法、功能分解法、因果圖、判定表、正交試驗法、場景法。
    (2)按是否運行程序分爲:
  • 靜態測試(static testing):指不實際運行被測軟件,而只是靜態地檢查程序代碼、界面或文檔可能存在的錯誤的過程。
  • 動態測試(dynamic testing):指實際運行被測程序,輸入相應的測試數據,檢查輸出結果和預期結果是否相符的過程。
    (3)按階段劃分:
  • 單元測試:指對軟件中的最小可測單元進行檢查和驗證
  • 集成測試:單元測試的下一階段,指將通過測試的單元模塊組裝成系統或子系統,再進行測試,重點測試不同模塊的接口部分。
  • 系統測試:是整個系統的運行以及與其他軟件的兼容性
  • 驗收測試:指的是在系統測試後期,以用戶測試爲主
    (4)迴歸測試:指開發修復bug後,需要再次重新測試,保證bug已修復並且沒有引入新的bug
    (5)冒煙測試:指在對一個新版本進行大規模測試前,先驗證喜下軟件基本功能是否正常
    (6)隨機測試:指測試中所有數據都是隨機生成的,其目的是模擬用戶真實操作
二、b/s和c/s架構測試區別:
  • b/c(brower/server)結構:即客戶端瀏覽器、服務器;客戶端主要通過瀏覽器訪問,因此側重點爲“客戶端操作系統版本、客戶端瀏覽器版本、客戶端配置”,還需要關注鏈接測試、表單測試、腳本測試、activeX控件測試
  • c/s(client/server)結構:即客戶端、服務器;需要安裝客戶端來訪問系統,側重點爲客戶端安裝測試、客戶端升級測試、客戶端與服務器連接測試、服務器端數據測試、客戶端可維護性測試
三、一個測試工程師應該具備哪些素質和技能:
  • 掌握基本測試基礎理論
  • 測試工具使用(postman、jmeter、SQL等)
  • 可熟練閱讀需求規格說明書等文檔
  • 以用戶的角度看待問題
  • 自動化測試技能--編碼能力、工具、自動化框架(python接口/UI)
  • 性能測試工具使用(jmeter),性能測試流程
  • 良好的溝通能力(與開發/產品)
四、軟件測試基本相關概念:

(1)缺陷測試報告的組成:編號、標題、版本號、錯誤嚴重級別、錯誤重新步驟、測試環境、附件、開發人員、執行狀態
(2)軟件測試的目的:儘可能早的找出軟件缺陷,並確保其得以修復。
(3)軟件測試一般分爲5個階段:單元測試、集成測試、確認測試、系統測試、驗收測試。
(4)軟件測試一般從什麼時候開始介入:軟件測試應該在需求分析階段就要介入,軟件缺陷存在放大趨勢,缺陷發現的越晚,修復花費的成本就越大。
(5)缺陷的生命週期:新增--提交--確認--分配--修復--驗證--關閉
(6)爲什麼要寫測試用例:便於維護、避免重複、便於跟蹤統計、便於用戶自測
(7)爲什麼要在一個團隊中開展軟件測試工作:因爲沒有經過測試的軟件很難在發佈之前知道該軟件的質量,這個時候就需要在團隊中開展軟件測試工作。在測試過程中發現軟件存在的問題,及時告知開發人員修改,保證軟件質量。

五、數據庫delete、drop、truncate差別:
  • drop:刪除整個表的數據及結構
  • delete:可以刪除整個表也可以只刪除表中某一條數據(可回滾,效率低)
  • truncate:只能刪除整個表的數據(也可稱爲截斷表)不可回滾,效率高。
六、Linux常用查詢語句:
  • 三種查看server.log的文件內容:tail、cat、tac、head、echo
  • 編輯start.sh文件,查看文件前10行內容和後十行內容
    vim start.sh
    head -n 10 start.sh
    tail -n 10 start.sh
  • 刪除temp.conf文件:rm -rf temp.conf (-f 表示強制刪除/-r 表示遞歸刪除可刪除子目錄及文件)
  • 查看後臺所有Java進程:ps -ef|grep java 或者 ps aux|grep java
  • 結束進程:kill+進程編號 結束不掉就用kill -s 9 進程編號
  • 將start.sh文件改爲可執行權限:chmod u + x filename.sh,語法格式爲:chmod [who] [opt] [mode] 文件名或目錄名
    who:代表對象
    u:表示文件所有者
    g:表示同組用戶
    o:表示其他用戶
    a:表示所有用戶
    opt:代表操作,可以爲“+”表示添加某個權限、“-”表示取消某個權限、“=”表示賦予某個權限
    mode:“r”表示可讀、“w”表示可寫、“x”表示可執行。
  • 檢查端口是否被佔用:netstart -nat|grep“:80” 後面是listen狀態說明正在使用,也可以用:netstart -an|grep 80;
  • 查看端口是被哪個程序使用:netstart -apn|grep 8080
  • 強制終止名詞中包含test的進程:kill -9 ‘ps aux|grep ‘test’’
  • mysql允許的最大連接數:show variables like ‘%max_connections%’
  • mysql展示所有進程:show full processlist
  • 查看cpu佔用率:top -bn l -i -c
  • df -h:刪除比較大的無用文件
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章