我眼中的測試工作
經常會聽到身邊有人抱怨,我做測試天天就是點鼠標,做功能測試,累死了,煩死了;想學學做自動化,性能方面的測試。
相信很多做測試工作的同學會有相同的感覺。
最近換了工作,面試了兩家公司,又對測試有了更進一步的認識。
首先,我覺得作為一名測試人員,有兩項很重要技能:測試點的發掘和豐富的測試手段,而測試點的發掘則是最重要的。下面就這兩個方面聊一聊我眼里邊的測試。
測試點的發掘:如果作為一名測試人員,不能發掘一個需求或系統需要測試的點,那么就不能算是一個合格的測試人員,那么該怎么去發掘出測試點呢?
關于測試點,業界有比較成熟的模型--軟件質量模型,供大家從不同的方面去分析需求或這系統需要測試的測試點。
從以上模型,基本可總結出需求或者系統需要測試的測試點。
比如給你一個需求或系統,首先要考慮的就是,這個需求或者系統是要做什么的(功能),是不是安全(功能),好不好用(易理解性)等。
只有發掘了測試點,測試工作才有依據,所以大家一定不要舍本逐末。
再者就是豐富的測試手段這個技能了。
這個技能是建立在測試點的發掘的技能之上的,不然沒法開展測試工作。
對于以上所說的,功能測試就是點擊鼠標,又累又煩躁,這點我認同。所以想去做自動化或者性能測試。
什么是自動化?
自動化就是用程序自動執行的方式,替代人工去執行測試用例,去除重復的勞動,節省一些回歸時候的人力成本。
舉個列子來說吧。
某個人認為整天點鼠標是在浪費生命,不行去點擊鼠標了,就想到了把點擊鼠標的事情交給自動化來實現,這個時候,同事大家所說的自動化,就是基于GUI的UI自動化,即用代碼去默認鍵盤,鼠標和系統的交互,通過這樣的方式來完成測試。
接下來,大家會面臨一個問題,互聯網隨時都在變化,你的需求和系統也在隨時變更(我也討厭變更,哈哈),不停的改版,你會發現原來的UI自動化代碼也得跟著變化或者經常找不到頁面元素(穩定性令人抓狂),不停的去維護已經寫好的代碼,甚至有時候要重構你的UI自動化代碼,成本很高,投入產出比不理想,那這個時候該怎么辦呢?
向后挖!
GUI所展示的數據都是以后服務端的API接口返回的,經過瀏覽器的渲染,以GUI(圖形用戶接口)的形式展現給用戶,那么我們為什不對系統的API進行測試呢,可以避免掉系統界面的頻繁變更和找不到頁面元素的問題,QA也能更早的介入測試,保證接口的質量。所以可以對接口進行自動化測試。
再往后,我們就可以接觸到代碼,可以對代碼進行自動化白盒測試。
對性能測試來說也是一個道理。
拿loadrunner做性能測試來說吧。
其實loadrunner做性能測試,就是直接通過接口來做的性能測試。通過模擬API請求。然后開啟很多進程或者線程,同時去模擬API調用,借此對服務器形成壓力。
根據系統結構圖,我們知道需要優化各個組件的配置,設置一些合適的參數,這就要求我們了解這些配置是干什么用的。
對代碼來說,可以對服務進行代碼級別的性能測試。
對數據庫來說,可能要審查一下sql語句,數據表的字段,大小,索引是否合適等。以后會寫這方面的文章。
在發掘測試點的基礎上,再去豐富自己的測試手段,再能在測試上走的更遠。
posted on 2014-06-30 18:42 順其自然EVO 閱讀(218) 評論(0) 編輯 收藏 所屬分類: 測試學習專欄