資料庫測試面試常見問題及答案
以下是一些經常被要求的,針對新手和經驗豐富的測試人員的SQL 面試問題。
1) 資料庫測試到底是什麼?
資料庫測試也稱為後端測試。
資料庫測試可以分為四種類型。
資料完整性測試
資料的有效性測試
資料庫的效能
函式、過程和觸發器測試
2) 在資料庫測試中,我們需要定期驗證什麼?
通常,在 DB 測試中會檢查以下專案 -
檢查約束條件
欄位維度的驗證
保留的技術
應用程式欄位的大小與資料庫欄位的大小匹配
基於效能問題的索引
3) 什麼是資料驅動測試?
資料驅動測試使用資料表來測試多個數據。這允許它同時簡單地替換來自多個位置的引數。
4) 定義連線並描述連線的不同形式。
連線用於顯示兩個或多個表,並且有許多型別的連線。
自然連線
內部連線
外部連線
交叉連線
外部連線再次被分離 -
左外部連線
右外部連線
5) 什麼是索引,以及索引的多種型別?
索引是新增到列的資料庫物件。它們被定期訪問以快速檢索資料。索引有多種形式,包括 -
B 樹索引
點陣圖索引
聚簇索引
覆蓋索引
非唯一索引
唯一索引
6) 測試人員在測試儲存過程時會採取哪些操作?
測試人員將檢查儲存過程的標準格式以及儲存過程中指定的更新、連線、索引和刪除等欄位。
7) 在資料庫測試期間,您如何知道觸發器是否被觸發?
您可以透過訪問公共審計日誌來了解觸發器是否被觸發。審計日誌中可以看到觸發了哪些觸發器。
8) 在資料庫測試中,資料載入測試的步驟是什麼?
要測試資料載入,必須採取以下操作。
應識別資料來源。
必須知道目標資料。
應驗證源和目標的相容性。
在 SQL 企業管理器中開啟正確的 DTS 包後,啟動 DTS 包。
必須將目標列與資料來源進行比較。
應計算目標和源中的行數。
修改源中的資料後,檢查更改是否反映在目標中。
檢查空值和垃圾字元。
9) 如何在 QTP 中測試 SQL 查詢,而不使用資料庫檢查點?
我們可以透過在 VBScript 中構建指令碼操作來連線到資料庫並測試查詢和資料庫。
10) 您能否解釋如何在 QTP 中使用 SQL 查詢?
在使用輸出資料庫檢查點和資料庫檢查時,您必須在 QTP 中選擇 SQL 手動查詢選項。選擇手動查詢選項後,輸入“select”查詢以從資料庫獲取資料,並將預測值與實際值進行比較。
11) 如何編寫資料庫測試的測試用例?
編寫測試用例類似於功能測試。您必須首先了解應用程式的功能需求。然後,您必須確定開發測試用例的引數,例如
寫出您想要測試的目標。
輸入方法:指定您希望使用的操作或輸入方法。
資料庫中應如何顯示是預期的。
12) 您在資料庫測試中使用了哪些 SQL 語句來維護和更改測試表?
使用諸如SELECT、INSERT、UPDATE和DELETE 之類的表操作命令,而使用諸如ALTER TABLE、CREATETABLE和DELETE TABLE之類的表管理語句。
13) 如何測試資料庫操作和觸發器?
為了測試資料庫過程和觸發器,必須瞭解其輸入和輸出引數。使用 EXEC 命令執行過程並分析表的行為。
在解決方案資源管理器中,開啟資料庫專案。
現在,從“檢視”選單中,選擇“資料庫架構”。
使用架構,轉到專案資料夾。檢視選單
右鍵單擊要測試的專案,然後從彈出選單中選擇“建立單元測試”選項。
之後,建立一個新的語言測試專案。
選擇 a) 插入單元測試或 b) 建立新測試後,單擊“確定”。
將使用“專案配置”對話方塊配置任何需要配置的專案。
所有設定完成後,單擊“確定”。
14) 如何從捕獲 AUT(被測應用程式)實際功能的需求中構建測試用例?
要從需求中開發測試用例,您必須首先根據功能全面分析需求。之後,您考慮相關的測試用例設計方法,例如等價劃分、黑盒設計、因果圖等,來開發測試用例。是的,標準描述了 AUT 的具體功能。
15) DBMS 到底是什麼?
DBMS 是資料庫管理系統的縮寫;有幾種型別的 DBMS。
網路模型
層次模型
關係模型
16) DML 到底是什麼?
DML 是資料操縱語言的縮寫,用於使用模式物件處理資料。SQL 是它的一個子集。
17) DCL 命令到底是什麼?DCL 使用的兩種型別的命令是什麼?
DCL 是資料控制語言的縮寫,用於控制資料。
DCL 命令分為兩種型別 -
授予 - 使用此命令,使用者可以訪問資料庫。
撤銷 - 此命令阻止使用者訪問資料庫。
18) 白盒測試和黑盒測試有什麼區別?
黑盒測試是在響應特定輸入時評估軟體的輸出。此測試通常用於檢查程式是否滿足使用者的需求。如果執行此測試,則沒有預期的特定功能結果。
白盒測試用於確保軟體的程式碼和邏輯正確。此測試由程式設計師執行,他們熟悉系統的邏輯流程。
19) QTP 使用什麼標準來評估測試結果?
測試完成後,QTP 將提供一份報告。此報告將顯示測試期間發現的檢查點、系統訊息和錯誤。在檢查點發現的任何不匹配項都將在測試結果框中顯示。
20) 描述 QTP 測試過程。
QTP 測試過程包括以下步驟 -
建立具有對映的使用者介面(圖形使用者介面)檔案:識別要測試的 GUI 專案。
建立測試指令碼:編寫測試指令碼。
除錯測試:應執行除錯測試。
應進行測試:應執行測試用例。
檢視結果:結果顯示測試是成功還是失敗。
報告檢測 - 如果測試失敗,則報告檢測檔案中將記錄失敗的原因。
21) 什麼是負載測試,你能舉幾個例子嗎?
負載測試用於評估系統的反應。當負載超過使用者模式時,就會發生壓力測試。負載測試包括下載大量的大檔案、在一臺計算機上執行多個應用程式、向伺服器傳送大量電子郵件以及連續地向印表機分配許多作業。
22) 如何手動測試資料庫?
手動測試資料庫需要驗證後端的資料,以確定前端新增的資料是否會影響後端,反之亦然,例如刪除、更新、插入等等。
23) RDBMS 代表什麼,SQL 使用的關鍵 RDBMS 有哪些?
RDBMS 代表關係資料庫管理系統 (Relational Database Management Systems),它使用 SQL,一些 SQL 使用的最著名的 RDBMS 包括 Sybase、Oracle、Access、Ingres、Microsoft SQL Server 等。
24) 什麼是效能測試,效能測試的瓶頸是什麼?
透過效能測試來確定計算機系統的速度。它包含定量測試,例如反應時間測量。效能測試的問題在於,您始終需要訓練有素且經驗豐富的專業人員,並且您使用的裝置成本很高。
25) DDL 到底是什麼,它的命令有哪些?
DDL 用於開發人員指定資料庫結構。DDL 是資料定義語言 (Data Definition Language) 的縮寫。DDL 命令包括建立、截斷、刪除、更改、註釋和重新命名等。
26. CMMI 到底是什麼,不同級別的 CMM 有什麼區別?
能力成熟度模型整合 (Capability Maturity Model Integration,CMMI) 是一個系統開發、培訓和評估模型,適用於軟體工程中的眾多業務操作。
企業可以實現五個級別的 CMM 成熟度:
初始級 - 由於此階段的企業缺乏經過驗證的方法和設定,因此預算和時間表常常超出。
可重複級 - 在此階段,企業已經建立了基本策略和規則來控制成本和安排時間,並且能夠在將來為類似專案執行相同的操作。
已定義級 - 在此階段,所有流程都經過精心安排並以清晰統一的格式教授。
已管理級 - 在此階段,組織比在已定義級別時更加成熟。這裡使用統計和其他定量方法來參與流程。
最佳化級 - 組織透過使用現代技術進步來共同努力提高成果。