測試常見問題合集


面筋分類匯總-測開向

測試面筋合集

目錄

======================================================================

1-測試基礎知識

  • 測試概述:重要性、分類、常見方法等

  • 測試應該什么時候介入

  • 軟件測試的基本流程

    • 測試需求分析;測試計划;測試設計;測試執行;測試評估。(有點不靠譜的感覺..)
  • 測試階段與對應的文檔

    • 單元測試:詳細設計文檔
    • 集成測試:概括設計文檔
    • 系統測試:系統設計文檔
  • 軟件測試的生命周期:

    • V模型:與軟件開發階段呼應
      • 軟件開發:需求分析-->概要設計-->詳細設計-->編碼階段
      • 軟件測試:單元測試-->集成測試-->系統測試-->驗收測試
    • 從基本流程的角度講:
      • 需求階段:測試人員了解需求, 對需求進行分解, 得出測試需求
      • 計划階段:根據需求編寫測試計划 / 測試方案
      • 設計階段:測試人員適當的了解設計, 對於設計測試用例是很有幫助的, 測試人員搭建測試用例框架, 根據需求和設計編寫一部分測試用例
      • 編碼階段:測試人員一般是不需要編碼的, 但已經編碼的模塊, 專業的白盒測試人員可以計划執行單元測試, 完善, 細化測試用例以及調整測試計划和方案
      • 測試階段:測試階段是軟件測試人員最為重要的工作階段, 根據測試用例和計划執行測試, 在執行的過程中記錄, 管理缺陷, 測試完成后編寫測試報告
      • 運維階段:測試人員需要參加項目的實施工作. 測試人員對項目產品的業務和操作非常了解, 加上測試人員的溝通表達能力一般都比較強, 所以測試人員可以參加用戶使用軟件的培訓, 在試運行項目時收集問題並及時反饋給相關負責人.
  • 軟件測試的方法

    • 黑盒白盒灰盒;靜態動態。
    • 從是否關心軟件內部結構和具體實現的角度划分,測試方法主要有白盒測試和黑盒測試。
    • 白盒測試方法主要有代碼檢査法、語句覆蓋、判定覆蓋、條件覆蓋、判定/條件覆蓋、條件組合覆蓋和路徑覆蓋。
    • 黑盒測試方法主要包括等價類划分法、邊界值分析法、錯誤推測法、因果圖法、判定表驅動法、正交試驗設計法、功能圖法、場景法等。
  • 黑盒白盒測試

    • 注:邊界值測試 -- 既可以用於黑盒,又可以用於白盒。
    • 地鐵售票找零功能:選擇因果圖最宜。
  • 單元測試的策略

    • 邏輯覆蓋
    • 循環覆蓋
    • 同行評審
    • 桌前檢查
    • 代碼走查
    • 代碼評審
    • 靜態數據流分析
  • 單元測試的主要技術手段

    • mock:對代碼中某些不容易獲取的對象創建虛擬對象來測試
    • stub:樁函數是代替某些被調用了但是沒有編寫代碼,一般再增量迭代自底向上的過程中不用編寫。再自頂向下的過程中需要編寫
    • 驅動函數:調用被測函數,給被測函數傳參
    • 注:GUI測試是系統測試手段。
  • 軟件測試階段

    • 單元測試階段、集成測試階段,系統測試階段,驗收測試階段。
  • 功能測試與性能測試的區別]()

  • 比較壓力測試、負載測試、性能測試

  • 軟件測試的測試用例思路

  • 做好測試用例設計工作的關鍵

  • 測試的維度/游戲的測試維度。

  • 測試工具總結

  • 自動化測試原理與框架

  • 自動化測試的應用場景,並簡述一個完整的自動化測試流程

    • 自動化測試:在一定的框架下,去開發一些自動化測試腳,本來實現手工測試所做不到的事情。
    • 自動化測試主要有兩個方面的作用:
      • 一是模擬手工測試中重復且繁瑣的步驟
      • 一是模擬手工測試中無法實現的測試,如性能測試中的並發或窮舉等,比如抽獎計算概率的測試。
    • 自動化測試在游戲測試中主要的應用:
      • 模擬重復且繁瑣的手工測試;模擬手工測試無法或難以實現的性能測試、接口測試、窮舉測試;UI測試等。
    • 自動化測試流程:
      • 分析自動化測試需求,一般在手工測試之后開始;
      • 根據項目的特點、選擇合適的自動化測試工具,並搭建測試環境
      • 測試用例設計和開發:設計測試用例;或提取手工測試的測試用例,轉化為自動化測試用例
      • 開發自動化軟件測試框架和測試腳本
      • 執行:通過工具、代碼實現自動化的構造輸入、自動檢測輸出結果是否滿足預期
      • 生成自動測試報告
      • 持續改進、腳本優化
  • 驅動模塊和樁模塊

  • varchar(256) 變為 varchar(1024)測試

  • 在一個產品的周期中,你會怎么安排測試工作

  • App測試和Web測試的區別

======================================================================

2-測試非技術類問題

  • 沖突解決辦法

  • 如果UI和開發消極怠工,怎么辦

  • 如果開發認為測試出來的問題不是bug,怎么辦

  • 所有的軟件缺陷都能修復嗎?所有的軟件缺陷都要修復嗎?

  • leader出錯,同伴不配合怎么辦

  • 開發人員老是犯一些低級錯誤怎么解決

  • 軟件測試與軟件開發的對比

    • 為什么想做測試、為什么不選研發?測試與開發本質區別
  • 測試主要運用哪種語言

    • Python和java
  • 你認為測試工程師的核心能力/關鍵能力/基本能力是什么

    • 兩方面:業務能力+技術能力,連接產品和研發,所以是很有難度的。
    • 技術能力:計算機專業知識,編程能力、軟件測試相關知識,自動化工具的使用,領域知識;
    • 業務能力:溝通表達、自學、耐心、測試思維,能抓重點,考慮問題全面深入、堅持原則等
    • 測試方法基礎理論(測一個杯子等)
  • 對測試職位的理解、對測試工作有什么期望、職業規划

    • 軟件測試的意義:盡早、盡量用最少的測試發現盡可能多的問題,以保證軟件產品的質量。
    • 什么是測試工程師?
      • 以軟件開發為例,宏觀上說測試工程師就是軟件質量的把關者,在一個軟件開發流程中測試人員要與開發人員一起對軟件的研發進行負責,軟件進行質量把關,開發進行功能實現,相輔相成。
      • 測試又分為傳統的測試工程師和測試開發工程師,測試開發工程師(以下簡稱測開)就要在上述的基礎上最少在掌握一門腳本語言,兩門及以上更好,腳本語言包括但不局限於Python,golang,shell等等因為測試開發工程師其實是造輪子的,換言之就是開發測試用的各種工具;測試工程師對代碼要求較測開低一些,但不是一竅不通(我面試的時候都會遇到代碼問題),不懂代碼層次的問題的話其實就不好進行測試分析這個后面再解釋為什么。
    • 測試開發工程師的工作職責和內容
      • 測試工程師簡單點說就是找bug,然后反饋給開發人員,不要小看這個工作。
      • 首先很明顯的bug開發人員有時候自己就能找到,測試人員要有比開發人員更加全面的想法才能找到深層次的問題點,
      • 其次,要端正一個態度就是測試人員不是一個電腦小白,相反國外頂級的測試開發工程師同時也是頂級的開發工程師甚至更厲害,所以作為一個測試工程師一定要有繼續學習的精神和心態,然后明白測試工程師要會寫測試用例,要會使用自動化工具,甚至白盒測試工程師要懂代碼,要具備廣闊的知識面。
  • 開發測試工程師的工作職責和內容:

    • 軟件測試的意義,是盡早、盡量用最少的測試發現盡可能多的問題,以保證軟件產品的質量。從宏觀上說,在整個軟件開發生命周期中,測試工程師就是軟件質量的把關者,要與開發人員一起對軟件的研發進行負責,軟件進行質量把關,開發進行功能實現,測試保證軟件產品的質量。開發測試工程師在傳統的軟件測試的基礎上,加入了更多對自動化測試和開發測試工具等要求,以及對測試人員代碼能力的要求。
  • 技術向的晉升路線

    • 初級測試工程師:測試計划、測試文檔、測試執行、結果整理等,門檻不高。
    • 測試開發工程師:核心-編程能力、自動化能力。
    • 測試架構師:在整個測試架構上參與和管理測試,更強調測試流程管理和質量監管,以及白盒測試能力,對測試工具和平台的開發等
  • 2年內的工作規划以及目標

    • 半年-1年:重點是快速學習測試相關的知識和基本技能,如測試計划、測試文檔、測試執行、結果整理等,並對軟件測試行業有一個大致的了解和把握,在此基礎上,快速學習公司項目中用到的相關自動化測試工具,並不斷提高編程和腳本開發能力。
    • 1年-2年:不斷強化自動化測試能力,並形成系統的知識體系;同時不斷提高編程能力,力求對公司項目有整體的認識,最好可以作為項目的小負責人,可以帶領小團隊。
      之后的發展,可以從測試開發架構師或測試經理等方向發展。
  • 測開相關的反問

    • 部門主要工作內容
      • 剛去的話,可能不太熟悉業務,會不會有人給一個相對清晰的指導,比如說,要通過做哪些事,達到什么目的,這樣類似的清晰規划。
    • 問進度:一般多久能有后續消息?
    • 問學習建議:針對這個崗位,我需要重點補充哪方面的知識?

======================================================================

3-測試用例設計

測試用例組成

  • 主要構成:測試環境+測試內容+輸入+預計輸出+實際輸出
  • 具體分為9個方面:用例編號/測試項/測試標題/用例屬性/重要級別/預置條件/測試輸入/操作步驟/預期結果/實際輸出
    • 一般情況下分為以上幾項可根據公司要求進行增刪

測試用例模塊

  • 功能:

    • 針對系統的功能需求展開測試,主要結合黑盒測試的思想。
    • 對於既需要用戶使用,又需要管理者使用的,從兩方面進行測試。例如自動售貨機,管理員要上貨、定價等。
  • 性能:

    • 負載測試、壓力測試、耗電測試、資源占用(cpu,內存等)、網絡狀態、相應時間等。
    • 通過模擬業務壓力或用戶使用場景來測試軟件系統的性能是否滿足實際生產性能的要求
    • 涉及實物:高溫低溫、最大某某操作次數、
    • 用電物品:考慮電量
    • 電子物品:弱網、無網、網絡切換、打入電話等打斷操作、耗電量、多人並發、響應時間、點擊量、吞吐量等
  • 兼容:

    • 涉及實物:不同接口
    • 電子物品:移動端與電腦端、不同系統、與同類軟件的兼容,相同軟件不同版本的兼容,頁面類考慮不同瀏覽器..
  • 安全:

    • 涉及實物:考慮是否有毒、有害、破損情況下是否會對徒手用戶造成傷害;大中型機器是否有自動斷電的保險措施,是否有緊急制動的按鈕操作等;
    • 涉及賬戶:泄漏用戶信息、賬戶的盜號問題、游戲的外掛..
  • 界面:

    • 涉及實物:考慮物體的外觀、材質的,顏色,外形,重量,圖案是否合理,是否有異味。
    • 電子物品:布局合理清晰,設計風格是否一致,文字圖標是否正確清晰,半屏全屏切換、橫屏豎屏切換、界面清晰度、按鈕標簽進度條的可識別性...
  • 易用性:

    • 操作是否對用戶友好、按鈕快捷鍵進度條等是否易用、圖像清晰度、錯誤操作時是否有有效的提示信息引導...
  • 交互性:

    • 針對多人軟件如社交軟件,相同好友消息、共同操作的交互
  • 文檔:

    • 產品說明書對產品的參數和使用規則描述是否詳細。
  • 等。

考查點

  • 注意跨天的測試,即僅限當天完成的動作,頁面停留到第二天時能否正常操作的問題。

    • 例如,簽到功能,簽到頁面停留到第二天時,再點擊簽到算第二天的。
    • 例如:ATM一天只能取一萬元,取了8000后,頁面停留到第二天,又從1萬元的限額開始算,可以取10000元。

APP相關問題

登錄相關問題

  • 用戶登錄界面的測試
    • 登錄測試?弱網測試,無網測試怎么做?
    • 如何測試用戶登錄界面
    • 測試中如何模擬網絡環境不好的條件 fiddler
    • 如何測試一個登陸案例
    • 給你一個QQ登錄界面 有一個登錄按鈕一個自動記住密碼的復選框 賬號密碼輸入框,你怎么設計測試用例?
    • 對抖音的界面進行測試

頁面相關問題

聊天相關問題

發帖相關問題

  • 一個發帖功能(可以發文字、圖片、定位),你會測試哪些方面 功能測試,網絡測試,平台測試

視頻播放器相關測試

  • 視頻播放器測試點
    • 愛奇藝等視頻APP,抖音等短視頻APP,微信的小視頻,等等
    • 測試朋友圈發布視頻功能,如果有一部分用戶反饋APP的視頻加載不出來,你會從哪里方面去定位問題
    • 然后問我如果想要上新一個新尺寸的視頻,我會想要測試什么。

小程序相關問題

  • 一個手機小程序,只能輸入1-100的數字,還有一個提交按鈕,設計測試用例

  • 怎么測試小程序的並發性的

微信相關問題

  • 微信聊天發送的測試

  • 測試微信朋友圈

    • 朋友圈功能:

      • 下拉朋友圈(刷新;查看完整的相冊封面);發朋友圈(圖片文字;僅文字);朋友圈點贊;朋友圈評論(給博主評論和好友間互動)。
    • 微信下拉朋友圈

    • 測試微信朋友圈的點贊功能

      • 為微信的點贊功能設計測試用例,假如點贊了但是點贊數沒有加一,可能報錯在哪里?
      • 網絡良好的情況下,發現數據傳輸過程出現404的情況,你認為是什么問題。
    • 測試微信朋友圈評論功能

      • 類似問題:給抖音的評論功能設計測試用例

各個APP的搜索框問題

微博相關問題

  • 測試微博的刷新功能

二維碼相關

游戲相關

實物操作相關

======================================================================

4-問題查找

  • Android中造成APP閃退的原因總結

    • 弱網絡情況下,服務端響應不及時,可能倒是閃退。(網絡異常引起的)
    • 應用版本太低,會導致不兼容,造成閃退。(有些API在老版本中有,在新版本中沒有,造成對象為空引起閃退)
    • APP的SDK和手機的系統不兼容。
    • 緩存垃圾過多:由於安卓系統的特性,如果長時間不清理垃圾文件。會導致越來越卡,也會出現閃退情況。
    • 設計不合理,1個接口,拉取的數據量太大,請求結果會很慢,且占用大量內存,APP會閃退(比如,我們現在做的記錄儀,進入相冊列表時候,要拉取所有圖片,拉取太慢了,就閃退了)
    • 不同APP間切換,交互測試,可能會出現閃退。
    • 權限問題。
  • 頁面很卡的原因分析

    • 帶寬不足、硬件配置低、CPU或者是內存被占滿。
    • http請求次數太多。
    • 接收數據時間過長,如下載資源過大。
    • JS腳本過大,阻塞了頁面的加載。
    • 網頁資源過多、接受數據時間長、加載某個資源慢。
    • DNS解析速度。
  • 頁面加載慢的原因分析

    • 帶寬不足、硬件配置低、CPU或者是內存被占滿。
    • http請求次數太多。
    • 接收數據時間過長,如下載資源過大。
    • JS腳本過大,阻塞了頁面的加載。
    • 網頁資源過多、接受數據時間長、加載某個資源慢。
    • DNS解析速度。
  • web頁面空白有哪些原因

  • 測試工具loadrunner,postman,selenium用來測什么

    • loadrunner:性能測試工具,通過模擬成千上萬個用戶實施並發操作,測試系統的性能,並且提供詳細的測試結果分析,協助用戶查找問題
    • postman:接口測試,一款功能強大的網頁調試與發送網頁HTTP請求的Chrome插件
    • selenium:Web應用程序測試的工具
  • 分析一下少量聯通用戶反映刷抖音無法顯示原因

參考鏈接

END


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM