絕大多數(shù)的應(yīng)用都跟數(shù)據(jù)緊密相關(guān),比如weixin,QQ,都需要存放大量的數(shù)據(jù)信息:聯(lián)系人信息、發(fā)送的信息、朋友圈信息等等。這些信息絕大多數(shù)是存放在關(guān)系型數(shù)據(jù)庫中。
因此,軟件測試工程師對數(shù)據(jù)庫的了解,是基本的要求。具體說來,測試工程師應(yīng)該具備哪些知識呢?我們從測試的各個環(huán)節(jié)來講吧。
首先,你需要了解軟件的需求。軟件的需求,涉及到數(shù)據(jù)的部分,比如字段的定義,類型,長度,特別是一致性(比如,一個用戶名,在輸入的時候用到,在打印輸出的地方也會用到,在其他聯(lián)系人的聯(lián)系信息中也會用到)。因此,在了解軟件需求的時候,我們需要一個“數(shù)據(jù)字典”,作為今后測試的基礎(chǔ)。
開始設(shè)計測試用例了,我們需要知道,如何獲得基礎(chǔ)的測試環(huán)境的預(yù)埋數(shù)據(jù)。比如,你想要測試存款功能,那么怎么獲得一個賬號呢?——從數(shù)據(jù)庫中查找。你需要了解:1)如何訪問數(shù)據(jù)庫,數(shù)據(jù)庫的配置信息;2)數(shù)據(jù)庫訪問的客戶端;3)sql語句;4)數(shù)據(jù)庫定義(就是你從那張表中查找數(shù)據(jù));5)如何把查詢出來的數(shù)據(jù)“取”到本地。對照數(shù)據(jù)字典,和需求,你還需要知道這些字段有那些限制,比如數(shù)據(jù)庫的限制是否和需求一致;也可以查看是否軟件的界面等符合數(shù)據(jù)字典的要求(一致性)。
此外,在設(shè)計檢查點的時候——特別是數(shù)據(jù)庫檢查點,必須要了解你的檢查點數(shù)據(jù)如何從數(shù)據(jù)庫中查找出來?有時候不是一個table能夠包含的,就需要多個表、甚至過濾、處理數(shù)據(jù)來比對。
然后,測試用例經(jīng)過了評審,需要執(zhí)行了。你需要知道如何準備測試環(huán)境,最重要的部分是準備測試的基準數(shù)據(jù)環(huán)境??赡苡脩魰o你一個現(xiàn)有的數(shù)據(jù)庫,那么需要你做數(shù)據(jù)清洗(可能),以保證客戶信息不被泄露;現(xiàn)有的數(shù)據(jù),可能存在的問題是很多邊界條件沒有數(shù)據(jù),因此還需要“造”很多數(shù)據(jù),這就需要你熟練使用create語句來創(chuàng)建數(shù)據(jù),包括使用ER圖工具來查看數(shù)據(jù)庫結(jié)構(gòu)。創(chuàng)建基礎(chǔ)的數(shù)據(jù)環(huán)境完成之后,我們就需要備份這個數(shù)據(jù)庫(打他base),你需要熟悉數(shù)據(jù)庫的備份命令——備份是為了恢復(fù),因為我們往往不會只測試一個輪次,起碼需要回歸。因此,還需要恢復(fù)數(shù)據(jù)庫的命令語句。
假設(shè)你要做自動化測試,那你要做的是把手工測試中的準備數(shù)據(jù)、數(shù)據(jù)庫檢查點,編寫成sql的語句,俗稱embed,潛入到腳本語言中。
從以上來看,我們需要熟練的掌握數(shù)據(jù)庫的知識,包括:數(shù)據(jù)字典、ER圖,查詢語句,創(chuàng)建數(shù)據(jù)的語句,以及如何在腳本中使用這些語句來訪問數(shù)據(jù)庫。
-
測試工程師
+關(guān)注
關(guān)注
6文章
124瀏覽量
12394
發(fā)布評論請先 登錄
相關(guān)推薦
評論