大三的時(shí)候,一次計(jì)算機(jī)等級考試,由于考c,數(shù)據(jù)庫,都沒過,就報(bào)了個(gè)四級軟件測試工程師。抱著試試看的態(tài)度學(xué)了一個(gè)月做了幾套題,就拿下了一個(gè)四級證書。當(dāng)時(shí)想的是,這都行,水分有點(diǎn)大吧……
本來想找一份網(wǎng)站開發(fā)的工作,技術(shù)不夠硬,一直在北京飄著飄著啊。通過一個(gè)學(xué)姐,得到了一個(gè)軟件測試面試的機(jī)會。于是半只腳踏入了軟件測試的大門,因?yàn)槲椰F(xiàn)在剛開始寫測試用例,還沒有真正的融入到團(tuán)隊(duì)中去。
實(shí)習(xí)生,直接領(lǐng)導(dǎo)給我安排了一個(gè)實(shí)習(xí)計(jì)劃,嚴(yán)格按照實(shí)習(xí)計(jì)劃執(zhí)行。首先就是看公司軟件的手冊,要了解產(chǎn)品,知道軟件的基本操作流程,不會了就問帶我的師傅。就這樣學(xué)了一個(gè)禮拜,不同于用一款軟件,在用的過程中要去思考,這個(gè)功能為什么有,這個(gè)功能要實(shí)現(xiàn)什么。忘了說了,現(xiàn)在產(chǎn)品做的是功能測試,比較簡單,所以分到了這個(gè)組里。一周之后帶我的師傅檢查了一下我的學(xué)習(xí)成果,具體操作、實(shí)現(xiàn)軟件的一些功能,然后就幾個(gè)主要的功能點(diǎn)以及一些需要特別注意的關(guān)鍵詞,給我做了詳細(xì)的講解。
然后給我了兩個(gè)功能界面,讓我寫一些測試用例,開始感覺沒什么可寫的,這兩個(gè)功能實(shí)現(xiàn)起來很容易的。第一天試著寫了幾個(gè),然后拿給師傅看,因?yàn)椴恢缽哪姆矫嫒胧郑m然看了一些以前的測試用例,但是親手寫還是第一次,所以有些拿不準(zhǔn)。
就這樣,寫了幾天的測試用例,一個(gè)功能點(diǎn)一個(gè)功能點(diǎn)的細(xì)分。寫的差不多了,就開始看一些技術(shù)類的博客,尤其是軟件測試中功能測試用例的寫法。看著博客中提到的一些東西,對比自己寫的測試用例,看看是不是滿足要求。就這樣自己一點(diǎn)一點(diǎn)的修改。
其實(shí)壓力還是蠻大的,由于要測試的系統(tǒng)需要測試多個(gè)不同的數(shù)據(jù)庫,以及不同的操作系統(tǒng)是軟件的執(zhí)行,而我只懂一點(diǎn)的msql,對linux一竅不通。所以有了各種學(xué)習(xí)目標(biāo),但是還是沒有清晰的目標(biāo)。努力吧,既然踏入了這個(gè)行業(yè),就要努力的去汲取知識,不斷學(xué)習(xí),不斷進(jìn)步!
軟件測試在整個(gè)軟件周期中的重要性,它存在于整個(gè)項(xiàng)目周期,在項(xiàng)目開始之初需求調(diào)研的時(shí)候就開始了,在形成需求規(guī)格說明書的時(shí)候就需要針對文檔進(jìn)行測試。這個(gè)環(huán)節(jié)在后續(xù)整個(gè)項(xiàng)目中占了很大的比重,能主導(dǎo)整個(gè)項(xiàng)目的走向,成敗與否全在于開始階段的決策。
體會一:軟件測試的真正意義在于發(fā)現(xiàn)錯(cuò)誤,而不在于驗(yàn)證軟件是正確的。
再嚴(yán)密的測試也不能完全發(fā)現(xiàn)軟件當(dāng)中所有的錯(cuò)誤,但是測試還是能發(fā)現(xiàn)大部分的錯(cuò)誤,能確保軟件基本是可用的,所以在后續(xù)使用的過程中還需要加強(qiáng)快速響應(yīng)的環(huán)節(jié)。結(jié)合軟件測試的理論,故障暴露在最終客戶端之前及時(shí)主動的去發(fā)現(xiàn)并解決。這一點(diǎn)就需要加強(qiáng)研發(fā)隊(duì)伍的建設(shè)。
體會二:在系統(tǒng)性能測試方面需要重視。
經(jīng)過這次培訓(xùn)中多個(gè)案例的講解,讓我了解到系統(tǒng)在上線之后會有很多不能預(yù)知的性能問題,需要在上線之前實(shí)現(xiàn)進(jìn)行模擬,以規(guī)避風(fēng)險(xiǎn),包括大數(shù)據(jù)量訪問,高并發(fā)數(shù)等等。
當(dāng)然也有很多應(yīng)對手段,沒有哪種手段可稱為最完美,只有最合適的,需要靈活掌握,綜合運(yùn)用以達(dá)到最優(yōu)程度,這是個(gè)很值得研究的領(lǐng)域。
下面是本人的幾點(diǎn)想法:
想法一:加強(qiáng)系統(tǒng)上線前的性能測試。
目前我們在項(xiàng)目建設(shè)過程中對性能壓力測試的重視程度還不太高,廠家也很少有雇傭第三方的測試機(jī)構(gòu)。而是在現(xiàn)網(wǎng)進(jìn)行試用,遇到問題再解決,可能會產(chǎn)生滯后問題,影響客戶使用。希望以后能在性能測試方面提高重視程度,加大人力投入,以保證系統(tǒng)上線后能夠穩(wěn)定運(yùn)行。
想法二:適當(dāng)介入相關(guān)項(xiàng)目研發(fā)
對于快速響應(yīng)這塊,我們不能一味依賴廠家,而希望自己就能快速響應(yīng),及時(shí)將問題解決。這也是一個(gè)比較長遠(yuǎn)的問題,需要加強(qiáng)研發(fā)力量的投入。
我個(gè)人是做開發(fā)出身,有此類經(jīng)驗(yàn),當(dāng)時(shí)是在客戶現(xiàn)場,因?yàn)榱私庀到y(tǒng)內(nèi)部結(jié)構(gòu),能夠在第一時(shí)間排查解決客戶所反饋問題。
現(xiàn)在系統(tǒng)完全由廠家開發(fā),很難了解內(nèi)部結(jié)構(gòu),或許會造成后期維護(hù)困難。所以,是否應(yīng)該針對某些項(xiàng)目介入廠家研發(fā)工作,比如請廠家提供源代碼等相關(guān)要素,以增進(jìn)維護(hù)人員對系統(tǒng)的了解。
最后再次感謝公司提供的平臺,感謝領(lǐng)導(dǎo)的信任,讓我有機(jī)會得到更深層次的學(xué)習(xí)以及展示自己能力的機(jī)會,我也會盡我所能來完善工作的系統(tǒng),提高整體工作效率,為南方電網(wǎng)的發(fā)展建設(shè)提供更堅(jiān)實(shí),優(yōu)秀的支撐服務(wù)平臺。
在支付寶測試分析的角色和系統(tǒng)分析的角色是對應(yīng)的,只不過一個(gè)是測試類的另外一個(gè)是開發(fā)類的。系分下面會有相應(yīng)開發(fā),測分下面會有相應(yīng)的測試用例編寫和執(zhí)行人員。也就是說測試分析文檔是對測試執(zhí)行人員的一個(gè)指導(dǎo)(在我原來的理解方式上,覺得測試分析人員應(yīng)該是用例編寫人員;而在這里測試分析人員是從業(yè)務(wù)上去分析的,用例是用例執(zhí)行人員來寫并且執(zhí)行的)。
而通過這次的這次分析覺得自己的測分還存在以下的問題:
1、太關(guān)注開發(fā)的內(nèi)部實(shí)現(xiàn)邏輯。建議:將開發(fā)內(nèi)部實(shí)現(xiàn)邏輯看成一個(gè)黑盒子,測試分析要從這個(gè)黑盒子的輸入和輸出上去看開發(fā)內(nèi)部實(shí)現(xiàn)邏輯是不是有問題,而不應(yīng)該先去了解開發(fā)的實(shí)現(xiàn)邏輯然后按照他們的思路去分析。
2、分析文檔寫的過于詳細(xì),甚至將用例的步驟都寫了出來。建議:測試分析要從全局上去看問題,細(xì)節(jié)的東西即便是知道的,也要留給之后的用例編寫人員去了解(就像系分之后的開發(fā)需要去寫詳細(xì)設(shè)計(jì)的道理一樣),這樣后面的人才會自己主動去想問題。
3、分析文檔要考慮維護(hù)性問題,不要出現(xiàn)類似比如還款中狀態(tài)為“R”這種具體的數(shù)據(jù)內(nèi)容。因?yàn)槲业姆治鍪菍罄m(xù)用例編寫人員的一個(gè)指導(dǎo)性的文檔,所以如果側(cè)分這么寫很有可能導(dǎo)致用例也照著這么寫,其實(shí)不管側(cè)分和用例都不應(yīng)該具體寫到R這么細(xì)節(jié),否則的話開發(fā)稍作變動我們就要相應(yīng)變動我們的用例
4、沒有明確測試目的。review用例的時(shí)候,沒有提出每個(gè)用例需要明確一個(gè)測試目的,讓別人來看這個(gè)用例的時(shí)候能明白到底是怎么回事。
總結(jié):
1、以后寫測試分析文檔,依據(jù)僅僅是prd文檔,必須拋開開發(fā)實(shí)現(xiàn)邏輯部分(即不去看系分文檔),待測分出來之后,再去看系分文檔,互相看看彼此考慮的是否存在遺漏的地方。等到在寫用例的時(shí)候再讓寫用例的人和相應(yīng)的開發(fā)去互相明確更細(xì)節(jié)的東西。
2、寫用例我們目前都是僅僅做到對流程上的每個(gè)節(jié)點(diǎn)去單獨(dú)分析,細(xì)到看輸出的時(shí)候會關(guān)注到數(shù)據(jù)庫表的一個(gè)變化。但是除了以上部分,其實(shí)還少了對整體流程的關(guān)注,需要增加業(yè)務(wù)流程的各條路徑的一個(gè)覆蓋,在針對路徑的用例中不需要關(guān)注到數(shù)據(jù)庫表級那么細(xì)。
3、在做流程路徑覆蓋之前應(yīng)該畫一個(gè)路徑圖,這個(gè)圖的畫法考慮各個(gè)入口的不同分開畫流程圖,分別進(jìn)行路徑覆蓋。
這個(gè)暑假惠普派人到我們學(xué)校來開展軟件測試培訓(xùn)。老師說機(jī)會難得所以我就參加了,說實(shí)話每天在教師從早晨坐到下午,中間只有一個(gè)半小時(shí)休息時(shí)間,這樣還是相當(dāng)累人的。我們第一天開始就覺得這個(gè)簡直比平常上課還累啊。
不過 看到老師講得如此認(rèn)真,看到惠普如此強(qiáng)大,我看在座的學(xué)員都聽得非常認(rèn)真。所以向我這種上課從來不聽講的這回都聽得認(rèn)真得不得了,呵呵。
前兩天確實(shí)還是有點(diǎn)累,講的也是理論課,而且以前我們從來沒有接觸過測試這個(gè)行業(yè),所以聽得也嘿吃力。但是老師給我們講了不少他們的工作經(jīng)驗(yàn)和惠普這種世界五百強(qiáng)美國十強(qiáng)的企業(yè)文化,鄙人是深受教育啊。
后兩天我們每個(gè)人帶一個(gè)筆記本進(jìn)行上機(jī)操作了。我們的第一個(gè)任務(wù)就是安裝軟件,那個(gè)軟件好大啊 ,整整2個(gè)G。我們考啊考啊考了好久才考完。軟件叫QTP,就是惠普的快速測試專業(yè)版。確實(shí)是一個(gè)強(qiáng)大的軟件,呵呵 大家用了就曉得了!
有 了電腦自然好耍了,我們休息的 時(shí)候就上網(wǎng)啊,我看貓和老鼠都看得差不多了。不過那個(gè)軟件畢竟是大軟件,操作還是比較復(fù)雜,而且全英文版,對我這種英語水平的人確實(shí)有點(diǎn)難以接受a。不過 呢,我還是在老師的敬業(yè)精神鼓勵下學(xué)到了不少知識 受益匪淺啊,單詞也記到了不少!離六級又近了一步!!
四天的培訓(xùn)在今天就徹底的結(jié)束 了,下午老師給我們開 座談會,問我們有什么問題,結(jié)果呢我們一點(diǎn)問題都沒得。老師教得好啊 呵呵!我們沒得問題 老師又只有給我們說他的光輝歷史了撒 。什么當(dāng)年大學(xué)畢業(yè)了差點(diǎn)工作都沒找到啊,什么當(dāng)年英語學(xué)得最撇啊,還有找不到工作在網(wǎng)吧郁悶打游戲啊 呵呵。
我記得老師說得最有感情的一句話就是“社會是黑暗的啊”。我們對這句話都是深信不疑!所以以后呢,要好好努力啊,不管社會有 好黑暗你都能找到光明,生活就是如此,時(shí)間本就平凡。好好干好好干!
軟件測試在整個(gè)軟件周期中的重要性,它存在于整個(gè)項(xiàng)目周期,在項(xiàng)目開始之初需求調(diào)研的時(shí)候就開始了,在形成需求規(guī)格說明書的時(shí)候就需要針對文檔進(jìn)行測試。這個(gè)環(huán)節(jié)在后續(xù)整個(gè)項(xiàng)目中占了很大的比重,能主導(dǎo)整個(gè)項(xiàng)目的走向,成敗與否全在于開始階段的決策。
再嚴(yán)密的測試也不能完全發(fā)現(xiàn)軟件當(dāng)中所有的錯(cuò)誤,但是測試還是能發(fā)現(xiàn)大部分的錯(cuò)誤,能確保軟件基本是可用的,所以在后續(xù)使用的過程中還需要加強(qiáng)快速響應(yīng)的環(huán)節(jié)。結(jié)合軟件測試的理論,故障暴露在最終客戶端之前及時(shí)主動的去發(fā)現(xiàn)并解決。這一點(diǎn)就需要加強(qiáng)研發(fā)隊(duì)伍的建設(shè)。
經(jīng)過這次培訓(xùn)中多個(gè)案例的講解,讓我了解到系統(tǒng)在上線之后會有很多不能預(yù)知的性能問題,需要在上線之前實(shí)現(xiàn)進(jìn)行模擬,以規(guī)避風(fēng)險(xiǎn),包括大數(shù)據(jù)量訪問,高并發(fā)數(shù)等等。
當(dāng)然也有很多應(yīng)對手段,沒有哪種手段可稱為最完美,只有最合適的,需要靈活掌握,綜合運(yùn)用以達(dá)到最優(yōu)程度,這是個(gè)很值得研究的領(lǐng)域。
目前我們在項(xiàng)目建設(shè)過程中對性能壓力測試的重視程度還不太高,廠家也很少有雇傭第三方的測試機(jī)構(gòu)。而是在現(xiàn)網(wǎng)進(jìn)行試用,遇到問題再解決,可能會產(chǎn)生滯后問題,影響客戶使用。希望以后能在性能測試方面提高重視程度,加大人力投入,以保證系統(tǒng)上線后能夠穩(wěn)定運(yùn)行。
對于快速響應(yīng)這塊,我們不能一味依賴廠家,而希望自己就能快速響應(yīng),及時(shí)將問題解決。這也是一個(gè)比較長遠(yuǎn)的問題,需要加強(qiáng)研發(fā)力量的投入。
我個(gè)人是做開發(fā)出身,有此類經(jīng)驗(yàn),當(dāng)時(shí)是在客戶現(xiàn)場,因?yàn)榱私庀到y(tǒng)內(nèi)部結(jié)構(gòu),能夠在第一時(shí)間排查解決客戶所反饋問題。
現(xiàn)在系統(tǒng)完全由廠家開發(fā),很難了解內(nèi)部結(jié)構(gòu),或許會造成后期維護(hù)困難。所以,是否應(yīng)該針對某些項(xiàng)目介入廠家研發(fā)工作,比如請廠家提供源代碼等相關(guān)要素,以增進(jìn)維護(hù)人員對系統(tǒng)的了解。
最后再次感謝公司提供的平臺,感謝領(lǐng)導(dǎo)的信任,讓我有機(jī)會得到更深層次的學(xué)習(xí)以及展示自己能力的機(jī)會,我也會盡我所能來完善工作的系統(tǒng),提高整體工作效率,為南方電網(wǎng)的發(fā)展建設(shè)提供更堅(jiān)實(shí),優(yōu)秀的支撐服務(wù)平臺。
在支付寶測試分析的角色和系統(tǒng)分析的角色是對應(yīng)的,只不過一個(gè)是測試類的另外一個(gè)是開發(fā)類的。系分下面會有相應(yīng)開發(fā),測分下面會有相應(yīng)的測試用例編寫和執(zhí)行人員。也就是說測試分析文檔是對測試執(zhí)行人員的一個(gè)指導(dǎo)(在我原來的理解方式上,覺得測試分析人員應(yīng)該是用例編寫人員;而在這里測試分析人員是從業(yè)務(wù)上去分析的,用例是用例執(zhí)行人員來寫并且執(zhí)行的)。
而通過這次的這次分析覺得自己的測分還存在以下的問題:
1、太關(guān)注開發(fā)的內(nèi)部實(shí)現(xiàn)邏輯。建議:將開發(fā)內(nèi)部實(shí)現(xiàn)邏輯看成一個(gè)黑盒子,測試分析要從這個(gè)黑盒子的輸入和輸出上去看開發(fā)內(nèi)部實(shí)現(xiàn)邏輯是不是有問題,而不應(yīng)該先去了解開發(fā)的實(shí)現(xiàn)邏輯然后按照他們的思路去分析。
2、分析文檔寫的過于詳細(xì),甚至將用例的步驟都寫了出來。建議:測試分析要從全局上去看問題,細(xì)節(jié)的東西即便是知道的,也要留給之后的用例編寫人員去了解(就像系分之后的開發(fā)需要去寫詳細(xì)設(shè)計(jì)的道理一樣),這樣后面的人才會自己主動去想問題。
3、分析文檔要考慮維護(hù)性問題,不要出現(xiàn)類似比如還款中狀態(tài)為“R”這種具體的數(shù)據(jù)內(nèi)容。因?yàn)槲业姆治鍪菍罄m(xù)用例編寫人員的一個(gè)指導(dǎo)性的文檔,所以如果側(cè)分這么寫很有可能導(dǎo)致用例也照著這么寫,其實(shí)不管側(cè)分和用例都不應(yīng)該具體寫到R這么細(xì)節(jié),否則的話開發(fā)稍作變動我們就要相應(yīng)變動我們的用例
4、沒有明確測試目的。review用例的時(shí)候,沒有提出每個(gè)用例需要明確一個(gè)測試目的,讓別人來看這個(gè)用例的時(shí)候能明白到底是怎么回事。
總結(jié):
1、以后寫測試分析文檔,依據(jù)僅僅是prd文檔,必須拋開開發(fā)實(shí)現(xiàn)邏輯部分(即不去看系分文檔),待測分出來之后,再去看系分文檔,互相看看彼此考慮的是否存在遺漏的地方。等到在寫用例的時(shí)候再讓寫用例的人和相應(yīng)的開發(fā)去互相明確更細(xì)節(jié)的東西。
2、寫用例我們目前都是僅僅做到對流程上的每個(gè)節(jié)點(diǎn)去單獨(dú)分析,細(xì)到看輸出的時(shí)候會關(guān)注到數(shù)據(jù)庫表的一個(gè)變化。但是除了以上部分,其實(shí)還少了對整體流程的關(guān)注,需要增加業(yè)務(wù)流程的各條路徑的一個(gè)覆蓋,在針對路徑的用例中不需要關(guān)注到數(shù)據(jù)庫表級那么細(xì)。
3、在做流程路徑覆蓋之前應(yīng)該畫一個(gè)路徑圖,這個(gè)圖的畫法考慮各個(gè)入口的不同分開畫流程圖,分別進(jìn)行路徑覆蓋。