開發測試工具的一點心得
前言
工作中經常會遇到許多測試工具提高效率,許多人也是為了這個目的開發各種工具,但是真正能提升效率的工具又有多少?這是一個值得深思問題!又有多少人僅僅只是為了晉升,一旦離職,這樣的工具就會爛尾,直到沒有人瞭解,也就徹底消失在視野中。
最近恰好再做一個工具,在編寫的過程中也遇到了許多問題,解決的過程中學習到了許多東西,分享出來,供大家參考。
首先線推薦給大家(QA們)推薦些書籍,這些書籍是關於產品和運營的,運營推薦健《超級運營術》(同學推薦,理由是這本書廢話最少),產品推薦《人人都是產品經理》(入手了還沒有讀完)。為什麼要推薦這些書籍,最重要的原因是,我們的工具也是產品,需要遵循產品與運營的理念。
我是如何做工具的
運營的三大核心是:傳遞價值、建立生態、創新玩法。
我們就依賴於這三個方向進行我們的工具設計。
傳遞價值
價值才是工具的核心,我們的目標是為了提升測試的效率。能解決問題才是最核心的價值。這裡我用了一個”最核心”來描述價值,是因為它僅僅是核心價值,還有其他價值需要我們關心。
解決問題是基於我們的方案,要做工具的人都是已經有了解決方案的,所以這裡我們並不重點講述這裡。最核心的價值都已經展示了出來。
接下來要說說我們的工具的使用問題,這裡引入兩個成本:學習成本和使用成本。
學習成本是指學習一個工具所需要的時間,工具好用,但是我們要學習1天,才能用來使用,這種成本是不是有些高?
使用成本是指我們要使用這個工具的準備階段及使用階段的時間。例如使用一個mock系統,我們如何接入mock系統,如何快速模擬結果。是否可以用最快的時間去完成。
有了這兩個成本我們在設計的時候就要考慮工具的幾個方面:
1.接入方式
2.互動
接入方式需要基於技術手段實現,我們沒有牛逼的技術,但是我們可以先通過最簡單的方式去實現出來,接著去學習更高大上的技術,對系統進行升級。
互動可能是許多開發者最忽視的部分,前面提到我們的工具也是產品,作為技術人員,你是否喜歡一個人性化的工具來幫助你的工作?
互動設計的好處有多個方面。
一是學習成本的降低,頁面設計具有引導性,我們就不需要額外去學習工具如何使用了。
二是功能的完善,從你想怎麼使用工具角度去思考你該有哪些功能,使用成本就會降低,最簡單的例子就是mock工具帶有示例返回資料格式和資料樣本,我就不需要藉助其他手段去填寫我們想要的結果。
當我們這些事情都做完了,我們的系統已經很完善,如果再和其他工具做一個競品分析,我們可以發現自己工具的優點,同時可以學習其他工具長處。
建立生態
這個觀念和我之前的想法一致,沒想到自己的想法是有依據的。仔細想想qunar的工具,多如牛毛,每個工具都有自己的一套資料收集系統,這些工具是不是冗餘了,如果有一個公共的工具做了這件事情,我們就不需要再去獨自開發相關的功能,我們的開發成本也進行了降低。工具之間也有了聯絡,但是這裡的聯絡我不是指依賴。應為好的工具應該開源出去,讓更多的人去使用。
創新玩法
什麼是創新玩法,在運營上可以通過各種活動去提高使用者活躍度。在工具上我們又如何創新玩法呢?
這裡我想說的新玩法是工具傻瓜式使用,儘量給使用者做選擇題,而不是解答題,你考試的時候是不是更喜歡選擇題,即使不會也可能蒙對,這樣我們的學習成本和使用成本都降低了。
我在設計mock系統的時候最開始想的是各種牛逼的匹配規則,但是與開發交流了一下,發現他們不關心你的匹配多牛逼,只關心使用是否方便。所以現在我一直堅信我所要開發的工具都是傻瓜工具。最簡單的才是最合理的!
以上是我在最近做工具中的一點心得,希望大家能夠開發出各種真正具有價值,並且易使用、易維護的工具。同時也歡迎大家指正我的不足。
感謝燚斌、士超、孝航、蒙叔對我的幫助,走在用心去做可交付的成果的道路上。。。