第一篇:軟件測試應該遵循的基本原則
軟件測試應該遵循的基本原則
軟件測試應遵循的基本原則:
(1)所有的測試都應追溯到用戶需求。
軟件測試的目標在于揭示錯誤。從用戶角度來看,最嚴重的錯誤是那些導致程序無法滿足需求的錯誤。
(2)應當把“盡早地和不斷地進行軟件測試”作為軟件測試者的座右銘。
應該在測試工作真正開始前的較長時間內就進行測試計劃。測試計劃可以在需求模型一完成就開始,詳細的測試用例定義可以在設計模型被確定后立即開始。因此,所有測試應該在任何代碼被產生前就進行計劃和設計。
(3)pareto原則:測試發現的錯誤中80%很可能起源于20%的模塊中。
當某個功能出問題,其對用戶的影響有多大?然后根據風險大小確定測試的優先級。優先級高的測試,優先得到執行,一般來講,針對用戶最常用的20%功能(優先級高)的測試會得到完全執行,而低優先級的測試(另外用戶不經常用的80%功能)就不是必要的,如果時間或經費不夠,就暫時不做或少做。
(4)完全測試是不可能的,測試需要終止。
測試無法顯示軟件潛在的缺陷,“測試只能證明軟件存在錯誤而不能證明軟件沒有錯誤”。最初的測試通常把焦點放在單個程序模塊上,進一步測試的焦點則轉向在集成的模塊簇中尋找錯誤,最后在整個系統中尋找錯誤。在測試中不可能運行路徑的每一種組合。然而,充分覆蓋程序邏輯,并確保程序設計中使用的所有條件是有可能的。
(5)應由獨立的第三方來構造測試。
第三方測試最大的特點在于它的專業性、獨立性、客觀性和公正性。對于軟件開發商來說,經過第三方測試機構的測試,不僅可以通過專業化的測試手段發現軟件錯誤,幫助開發商提升軟件的品質,而且可以對軟件有一個客觀、科學的評價,有助于開發商認清自己產品的定位。對于行業主管部門以及軟件使用者來說,由于第三方測試機構獨立公正的地位,可以對被測試的軟件有一個客觀公正的評價,幫助用戶選擇合適、優秀的軟件產品。
(6)充分注意測試中的群集現象。
測試后程序殘存的錯誤數目與該程序中已發現的錯誤數目或檢錯率成正比。不要在某個程序段中找到幾個錯誤就誤認為該程序段就沒有錯誤而不再測試,相反應該對錯誤群集的程序段進行重點測試。
(7)盡量避免測試的隨意性。
測試計劃應包括:所測軟件的功能,輸入和輸出,測試內容,各項測試的進度安排,資源要求,測試資料,測試工具,測試用例的選擇,測試的控制方法和過程,系統的配置方式,跟蹤規則,調試規則,以及回歸測試的規定等以及評價標準。
(8)兼顧合理的輸入和不合理的輸入數據。
(9)應長期保留測試用例,直至系統廢棄。
妥善保存測試計劃,測試用例,出錯統計和最終分析報告,為維護等提供方便。
(10)程序修改后要回歸測試
修改程序后,應該重新進行測試以確認修改沒有引入新的錯誤或導致其他代碼產生錯誤。
第二篇:馬克思主義基本原課程總結
《馬克思主義基本原理概論》課程小結
目前概論課普遍存在教學內容和教學方法陳舊的現象,枯燥、乏味、沒有新鮮感的教學過程影響著教學效果。所以,在備課的過程中,針對藝術類學生的特點,我花了大量的時間研究案例教學。在案例教學的實踐中,雖然經歷過幾次小小的挫折,但在學生們的鼓勵下,我堅持了下來,受益匪淺。
總結經驗如下:
1、教學中盲目堆積案例。為了活躍課堂氣氛,吸引學生聽課,在《社會基本矛盾及其運動規律》授課過程中穿插了很多案例,而每個案例都講不透徹。最后下課后,學生只記得講了什么有趣案例,而沒有記住授課的內容,以致本末倒置。這樣使用案例,表面上熱熱鬧鬧,實際上空空如也,達不到教學目的。
2、沒有真正發揮學生的主體作用。在案例教學的授課過程中,我作為教師仍處于傳授者的地位,從案例的介紹、問題的提出、分析的展開、結論的得出、所涉理論知識的深淺以及時間的把握等方面,均處于主導。真正讓學生來思考、分析、討論的情形并不多,反省一下,多為舉例教學。在這種情形下的課堂,學生仍是看熱鬧的外人,而沒有真正深入到案例中去。沒有積極的思考,當然就不可能有深切的體會和收獲。
基于個人對于案例教學的思考,形成了一篇名為《探析獨立學院思想政治理論課教學中案例選擇與解釋——以<馬克思主義基本原理概論課>為例》的論文,并獲得“六屆遼寧省高校青年德育工作者理論研討會征文比賽”二等獎。
僅此論文,作為總結的一部分,向領導匯報。
(一)原理教學引入案例教學法的必要性
1.可聽性:案例導入使抽象概念生動鮮活
馬克思主義基本原理是通過對具體知識的概括、總結與再思考的方式,達到對世界本質和一般規律的把握。靜態的基本原理是枯燥的,它們的具體作用體現在應用的過程中。為此,《原理》課必須以案例為鋪墊,使其生動化。比如在“矛盾普遍性與特殊性”一節講授中,教學案例是“南街村模式與華西村模式”的比較,不僅使學生看到中國新農村的美好前景,而且使學生能夠領悟建設中國特色的社會主義不能照搬別國的模式,不能一刀切,要允許多種經濟形式、多種管理方式、多種運行機制共同發展。又比如在“主要矛盾與次要矛盾”的問題上,選用關云長敗走麥城的典故。關羽并沒有真正接受諸葛亮的勸誡,他把孫權看成是同曹操一樣可惡的“碧眼小兒”;同時打擊曹、魏兩家,主次不分,全線出擊,最終醞成地失人亡的悲劇。這些案例的分析,學生聽得津津有味,增強了學習興趣。
2.通俗性:案例介紹加深學生對深奧理論的理解
學生不是專業的馬克思主義理論研究者,有些基本原理教師覺得容易理解,學生就是想不明白,這主要與他們的生活閱歷與思維方式有關。“案例教學法”能使抽象理論具體化、通俗化,減少學生的畏懼心理和死記硬背的習慣。比如“哲學”中所講的“屬人世界”,學生百思不得其解,尤其是理工科學生,他們所認
為的世界就是基本粒子與場,不自覺地停留在機械唯物主義的層次上。授課中可以通過對“費爾巴哈生平”的分析,講清這位偉大的唯物主義哲學家為什么不能沖破歷史唯心主義牢籠。經過討論,使學生對機械唯物主義與歷史唯物主義有個比較清晰的區分,從而帶動一系列難點的解決。又比如,學生對“認識來源于實踐”感受不深,覺得很多成功來源于靈感和偶然。教學中選用摩爾根纂寫《古代社會》一書的案例,向同學說明,為什么生活在資本主義上升時期的摩爾根能寫出研究原始社會的一部杰作?這離不開他的親身實踐,他除了對歐、美許多未開化的原始部落進行調查、考察、分析外,還在印第安易洛魁部落居住了40年之久,對原始部落的經濟、社會組織、婚姻、家庭、習俗、宗教各方面都有了透徹的了解,掌握了豐富的第一手資料。而靈感和機遇的捕獲,往往是多次實踐的結果。這些都能引起學生思考與探究的興趣,從而有效克服了機械的思維模式。3.實用性:案例教學培養學生分析解決實際問題的能力 理論必須要滿足學生探索社會問題的需要、追求事業成功和日后人生幸福的需要,才能提高學生對它的認同感。如在講“絕對真理和相對真理”問題時,列舉人們對SARS、對甲型H1N1流感等的不斷認識,通過討論,使學生認識到人類始終處于追求真理的路上,學習是無止境的。在此過程中,學生獨立思考的能力得到提高,解決實際問題的能力也隨之增強。
有部分同學盡管對美國侵占伊拉克表示憤慨,但又認為美國在人權保護方面做得不錯。針對這一情況,在“人的本質與價值”這一章節的教學中,可以著重介紹阿布格萊布監獄美軍虐囚事件、美國政府在世界各地秘密設立的監獄以及美國國內的人權問題的大量案例,讓學生了解人權是基于人的自然屬性與社會屬性享有的和應當享有的各種基本權利。通過案例分析,深刻地揭露了美國人權政治雙重標準以及人權外交的實質。
對于學生希望成才的渴望,可以在“意識”相關章節的講授中,列舉通過主觀努力取得成功的偉人,如居里夫人等;也可以在人民群眾與杰出人物有關章節的講授中,列舉毛澤東、羅斯福等歷史人物,回答“什么是人才?如何成才?為什么人人都可以成才”的基本道理,受到同學的歡迎。
(二)案例選擇的基本原則 培養學生學習的興趣,對提高思想政治理論課的時效性起著重大作用。因此,在教學中應當把思想政治理論課中案例的典型性與新穎性、知識性與趣味性、相關性與輻射性相結合。這不僅是思想政治理論課教學任務的艱巨性、嚴肅性和教學過程的復雜性所決定的,更是由獨立學院學生生理、心理發展的特點決定的。
1.典型性與新穎性
典型性是案例選取最基本的原則,是指要以講授的知識為中心來選擇案例,使案例服務于講授的知識,而且被選案例要有舉一反
三、觸類旁通的作用。比如在講到“整個世界是一個相互聯系的統一整體”時,可以運用“六度空間理論”加以闡釋;在講授“事物的發展道路是曲折的,前途是光明的”,選擇詹姆士·琴納推廣種牛痘遇到的困難做作為案例。這類案例具有典型性,容易說明問題,案
例的分析和討論能夠有助于學生掌握基本的原理、處理事情的方法和原則等。但有些典型案例比較陳舊,過于“正統”,如,用塞翁失馬詮釋對立統一規律,用田忌賽馬詮釋質量互變規律,雖然典型,但這些故事學生們早就耳熟能詳。這個時候,就必須舉一些具有新穎性的例子。
什么是新穎性?一是新近的。對于那些新近發生在國內國際的新聞時事,那些最近發生在校園里和學生身邊的事情,大家都會關注。二是別人沒聽過的。教師的知識面一般來說比學生要寬,掌握的教學資源也比較多,應當發揮自己的特長,多舉一些學生不熟悉的新奇案例。
典型案例很能說明問題,但有時候不容易引起學生的興趣。新穎的案例能夠彌補典型案例的不足,為大家喜聞樂見,但未必具有廣泛的影響力。所以,應將二者結合起來。在案例的總體分配中,典型性案例和新穎性案例都應當占有一定的比例,二者不可有所偏廢。
2.知識性與趣味性
在案例的選擇和運用上,要將知識性與趣味性結合起來。首先,要注重知識性。只有讓學生在聽課的過程中潛移默化地了解更多知識,他們才會對課程和教師有較強的認同感。例如,在講“貨幣的本質”時就給學生舉世界文學史上“四大吝嗇鬼”(夏洛克、阿巴貢、潑留希金、葛朗臺)的例子,往往這個時候,學生都在做筆記。
其次,趣味性非常重要。選擇趣味性較強的案例,并以幽默詼諧的語言演繹出來,往往會收到事半功倍的效果。這種案例不一定要求很長,但一定要貼切。例如,在講授“資本”一節內容時,需要講清資本的本質屬性(資本是一種特殊的價值)、表現形式(資本表現為不同的物質形式)和基本特點(資本的運動性、增值性和返還性)。如果就理論講理論就顯得比較抽象,學生不易理解,記憶也不深刻。可以列舉孫悟空七十二變的故事,孫悟空雖然可以有不同的變化,但它本身是孫猴子,以此來比喻資本雖然可以在不同運動階段采取不同的物質形式,但它本質上是一種特殊的價值。為了說明資本循環過程中的增值性,可以列舉八十年代的流行歌曲《回娘家》里的一段歌詞,指出資本在循環運動中帶回的雖然不是“胖娃娃”,卻也帶回了“金娃娃”。通過講述案例,增強了趣味性,使學生對“資本”這個知識點能有比較形象的理解。
在知識性和趣味性結合的過程中,如果二者發生沖突,知識性為先。學生自然希望案例越有趣越好,但教師有自己的責任,而且案例過多,會沖淡課本知識,出現“喧賓奪主”的后果。
3.相關性與輻射性
所謂相關性,要求案例選取要與學生專業相關、與學生就業相關、與學生生活相關,即以選擇最貼近學生的事例為原則。如在講人生價值時,引入“北大才子賣肉”、“廣州碩士賣豬肉”和“大學生做村官”等事件,由于這一系列事件和大學生就業以及人生價值的實現有密切聯系,在學生中間獲得強烈反響,課堂討論的氣氛也十分活躍。
除了相關性之外,課堂教學所采用的案例一定要能夠給學生留有較大的思維空間,要有較強的輻射性,要能夠培養學生發散和創新的思維,從而提高他們的思維素質。如,在講授經濟和政治關系時,可以采用美國霸權主義的推行在世界范圍內帶來的后果,如科索沃戰爭、阿富汗戰爭和伊拉克戰爭等??引導學生要正確認識霸權主義。同學們從不同的角度出發進行激烈的爭論,提出許多很有見地的觀點,使學生和教師均受益非淺。
(三)案例解釋時應注意把握以下三對關系 1.教師講授和學生討論相結合以加強互動性
在傳統教學中,教師占有絕對的主導地位,學生是教學的客體,處于被動和服從地位。在案例教學法中,學生是教學的中心,強調學生在教學活動中的主體地位,鼓勵學生以主角的身份積極參與到教學活動中。在教學過程中,教師要創造良好的自由討論的氣氛和環境,簡要介紹案例的相關背景,在討論過程中對學生進行引導,使案例討論緊緊圍繞主題展開。
需要注意的是,學生們思想道德水平、認識問題分析問題的能力參差不齊,尤其是許多學生往往受現實陰暗面的影響較深,看問題往往具有較強的片面性和偏激性。他們過分關注社會腐敗的一面,懷疑和否定社會積極的一面。因此,教師在引導學生進行課堂討論和進行總結時,要能夠運用馬克思主義基本原理對學生提出的觀點進行論證或批判,以平等的態度與學生共同探討,堅持正面教育,以理服人,使學生能夠真正受到啟發,真正能夠解決思想中存在的種種困惑,切實提高學生運用馬克思主義基本原理觀察世界,分析問題的能力。
2.案例教學與理論講授相結合以凸顯科學性 案例教學固然很重要,但案例教學并不能完全取代理論教學。教師對相關原理的重點和難點進行適當講授,是教學中不能缺少的。案例中往往同時包含多個理論知識點,分析時比較復雜,難以理出頭緒,這就要求教師既要把理論知識講透,又要能指導學生運用理論去分析實際。所以,學生如果沒有必要的理論基礎作為鋪墊,案例討論就達不到理想的效果。在理論教學與案例教學的關系中,理論教學是案例教學的基礎,案例教學是理論教學的運用。因此,教師可適當地調整教學內容,精講知識;同時,根據理論教學的內容選擇合適的案例,使二者相輔相承達到良好的教學效果。課堂理論講授應當是誘導式和啟發式的,應該與案例討論結合起來。
3.授課方式與授課內容相結合以提高有效性
在教學中除了有好的案例之外,還必須恰當運用所選案例。運用案例進行教學,要根據不同的內容、不同的對象來決定運用方式,歸納起來大致有以下三種。
①引子懸念式:上課前用案例引出要講授的某一具體原理,給學生留下懸念,然后教師既可以結合案例講授理論,也可以讓學生聽完理論,自己去分析判斷案例,教師再做總結。
②簡單列舉式:是教師在系統講授了某一理論后,舉
一、兩個案例,用剛講過的理論去分析解剖,也可請學生先分析、發表意見,教師再做總結。這種方式
雖然層次不高,但靈活簡便,節約時間,適合于馬克思主義哲學各部分教學內容和學生人數較多的班級。
③課堂討論式:教師把選擇好的案例事先發給學生,并提出思考題,指定參考書目,由同學各自閱讀、分析、思考,并將分析的意見寫成發言提綱,在課堂上開展對案例的分析、討論和辯論。例如在講哲學對立統一規律時,引入取消中醫的觀點,請同學們分析評價。這種方式讓學生以主角的身份積極參與到教學活動中,使其在民主自由的氣氛中交流彼此的看法,學生學習的興趣大大提高。這種方式花費的時間和精力都比較多,適用于講授教學重點內容,并且在人數較少的班級應用容易取得好的效果。
案例教學法強調“授之漁而非授之魚”,對于思想政治理論課教師,不只是傳授學生課本的知識,更重要的是教導學生思考的過程,學生需要的不只是成堆的理論知識,更需要的是能夠活用理論知識的能力;教師應賦予學生思考及行動的自由,發展學生個人的分析能力,提高學生傾聽和溝通的能力,增進學生獨立思考的能力。總之,在獨立學院思想政治理論課教學中,對案例選擇與解釋的研究具有深遠的意義。
第三篇:測試新手應該怎么學習軟件測試
測試新手應該怎么學習軟件測試
對于測試新手來說,學好測試的理論知識是必須的,因為這些是你測試的基礎,千萬不要好高騖遠,別忘了一句話“磨刀不誤砍柴工”。舉個例子,如果你沒有學習測試理論基礎,老板讓你做一個測試基線,你知道怎么做嗎?就算是你知道基線是什么,那么你會做好一個基線嗎?
如果基礎沒打好,不要急著學習測試工具,因為工具其實是很好學的,無非就是點幾個按鈕,頂多是寫幾句腳本,進行一下腳本什么的優化。但是如果不會測試理論基礎,你用自動化工具做出來的結果你會分析嗎?自動化得出的結果不是最終的測試報告,這些需要測試人員再分析的,最終才能得出結果。再舉個例子,你用loadrunner測試出來了一堆數據,你能根據那些數據得出系統瓶頸嗎?不能,因為系統瓶頸的種類,分析方法,以及不同的系統要注意的瓶頸點不同,這些如果沒有扎實的理論基礎是很難分析出來的,因為它要綜合各個情況才能得出系統瓶頸的。
還有一點,那就是一定要學習一些其他的東西,因為測試是一個多學科的科學,你必須要懂得,至少了解linux系統,網絡技術、一門開發語言、CMM等內容。因為如果這些你不懂,老板讓你搭建一個linux的測試環境,你會嗎?讓你搭建VPN,你會嗎?
以上就是我總結的幾點內容,這些一定是不全的,后續我會繼續補充。但是我也就是想說一句話,學軟件測試看似簡單,其實做一名合格的軟件測試工程師很難。一定要有扎實的基礎、敏銳的洞察力以及廣泛的知識涵蓋面,測試軟件對我們來說也是極其重要的。
第四篇:軟件測試工程師應該具有的技能
軟件測試工程師應該具有的技能
發布: 2010-7-22 10:05 | 作者: 不詳 | 來源: 領測測試網采編 | 查看: 357次 | 進入軟件測試論壇討
論
軟件測試工程師應該具有的技能軟件測試
一名優秀的測試人才,有有那些技術呢?我認為要有如下幾點:
第一,測試人員必須掌握目前比較流行的語言,比如說C、C++、JAVA、C#、VB等等多種平臺下的一種或者多種語言,具備進行簡單應用開發的能力。這是做好測試的一個前提條件,也是一個基本功。
第二,對Windows、Linux、Unix等大型主流操作系統的使用和應用開發的熟練掌握,包括一些網絡的基礎知識。使學員具備快速進行應用系統部署和測試環境搭建的能力,這是一個基本功。
第三,目前大部分應用軟件都離不開數據庫,熟練掌握SQL Server、Oracle、DB2等一種或多種數據庫系統的使用,熟悉使用SQL語言,這是要具備的第三項能力。
第四,隨著信息技術的發展和各個領域的信息化程度越為越高,安全也提到越來越重要的位置上,沒有安全其他都無從談起。所以做為測試人員對信息安全知識的基本掌握也是做測試的一個基本功。
第五,必須深刻理解和熟練掌握軟件測試基礎理論與技術。首先是精通各種黑盒測試技術,能夠進行測試用例設計、測試執行、編寫缺陷報告;其次是熟悉軟件測試流程和測試過程管理,能夠編寫測試計劃,具備組織測試工作的能力;還有熟悉白盒測試技術,能夠手工或利用相關工具進行單元測試;最后還有測試管理相關知識的掌握,雖然這在企業里是對測
試組長和經理的要求,但是我們按照優秀軟件測試工程師來要求我們學員的,學員具備這一能力將來才有可能走上管理崗位。
第六,因為當前軟件測試要提高工作效率和進行性能等深入測試。故此目前在測試上一個很重要的方向是自動化測試,就是借助于測試工具來做測試,這個就像我們每天是走路上班還是開車上班一樣,汽車肯定會節約很多的時間,這就是工具的利用。對測試來說也是一樣,如果用工具就會達到事半功倍的效果。所以測試人員要掌握和熟練使用當前主流的功能、性能自動化測試工具以及測試管理工具,具備編寫測試腳本、進行功能和性能測試自動化測試的能力。
第七,軟件測試和軟件質量密切相關。對軟件測試員來講必須學會軟件質量分析技術,包括對軟件的分析和度量各種技術,包括軟件靜態和動態分析技術,以及編寫軟件質量報告和測試分析報告的能力等等。測試人員作為軟件開發過程中的一員,學員應該對企業的質量管理體系和項目管理應該熟悉,應該了解IS9000、CMM、CMMI項目管理等等知識。
第五篇:軟件測試工程師應該具備的職業素質
軟件測試工程師應該具備的職業素質
溝通能力
–理想的必須能夠與測試涉及到的所有人進行溝通,具有與技術人員(開發者)和非技術人員(客戶、管理人員)的交流能力。
移情能力
–和系統開發有關的所有人員(用戶、開發者、管理者)都處于一種既關心又擔心的狀態中。測試人員必須和每一類人打交道,因此需要對每一類人都具有足夠的理解和同情,從而將
測試人員與相關人員之間的沖突和對抗減少到最低程度。
技術能力–
一個測試人員必須既明白被測軟件系統的概念又要會使用工程中的那些工具,這需要有幾年以上的編程經驗,從而有助于對軟件開發過程的較深入理解。自信心–開發人員指責測試人員出了錯是常有的事,測試人員必須對自己的觀點有足夠的自信心。
外交能力
–當你告訴某人他出了錯時,就必須使用一些外交方法,機智老練和外交手法有助于維護與開發人員之間的協作關系。
幽默感
–在遇到狡辯的情況下,一個幽默的批評將是很有幫助的。
很強的記憶力
–理想的測試人員應該有能力將以前曾經遇到過的類似的錯誤從記憶深處挖掘出來,這一能力在測試過程中的價值是無法衡量的。
耐心–
一些工作需要難以置信的耐心,有時你需要花費驚人的時間去分離、識別和分派一個錯誤。
懷疑精神
–可以預料,開發人員會盡他們最大的努力將所有的錯誤解釋過去。測式人員必須聽每個人的說明,但他必須保持懷疑直到他自己看過以后。自我督促–
干測試工作很容易使你變得懶散,只有那些具有自我督促能力的人才能夠使自己每天正常地工作。
洞察力–
一個好的測試人員具有“測試是為了破壞”的觀點,捕獲用戶觀點的能力,強烈的質量追求,對細節的關注能
1.計算機專業技能
計算機領域的專業技能是測試工程師應該必備的一項素質,是做好測試工作的前提條件。盡管沒有任何IT背景的人也可以從事測試工作,但是一名要想獲得更大發展空間或者持久競爭力的測試工程師,則計算機專業技能是必不可少的。計算機專業技能主要包含三個方面:
l測試專業技能
現在軟件測試已經成為一個很有潛力的專業。要想成為一名優秀的測試工程師,首先應該具有扎實的專業基礎,這也是本書的編寫目的之一。因此,測試工程師應該努力學習測試專業知識,告別簡單的“點擊”之類的測試工作,讓測試工作以自己的專業知識為依托。
測試專業知識很多,本書內容主要以測試人員應該掌握的基礎專業技能為主。測試專業技能涉及的范圍很廣:既包括黑盒測試、白盒測試、測試用例設計等基礎測試技術,也包括單元測試、功能測試、集成測試、系統測試、性能測試等測試方法,還包括基礎的測試流程管理、缺陷管理、自動化測試技術等知識。l軟件編程技能
“測試人員是否需要編程?”可以說是測試人員最常提出的問題之一。實際上,由于在我國開發人員待遇普遍高于測試人員,因此能寫代碼的幾乎都去做開發了,而很多人則是因為做不了開發或者不能從事其它工作才“被迫”從事測試工作。最終的結果則是很多測試人員只能從事相對簡單的功能測試,能力強一點的則可以借助測試工具進行簡單的自動化測試(主要錄制、修改、回放測試腳本)。軟件編程技能實際應該是測試人員的必備技能之一,在微軟,很多測試人員都擁有多年的開發經驗。因此,測試人員要想得到較好的職業發展,必須能夠編寫程序。只有能給編寫程序,才可以勝任諸如單元測試、集成測試、性能測試等難度較大的測試工作。
此外,對軟件測試人員的編程技能要求也有別于開發人員:測試人員編寫的程序應著眼于運行正確,同時兼顧高效率,尤其體現在與性能測試相關的測試代碼編寫上。因此測試人員要具備一定的算法設計能力。依據作者的經驗,測試工程師至少應該掌握Java、C#、C++之類的一門語言以及相應的開發工具。l網絡、操作系統、數據庫、中間件等知識:
與開發人員相比,測試人員掌握的知識具有“博而不精”的特點,“藝多不壓身”是個非常形象的比喻。由于測試中經常需要配置、調試各種測試環境,而且在性能測試中還要對各種系統平臺進行分析與調優,因此測試人員需要掌握更多網絡、操作系統、數據庫等知識。
在網絡方面,測試人員應該掌握基本的網絡協議以及網絡工作原理,尤其要掌握一些網絡環境的配置,這些都是測試工作中經常遇到的知識。
操作系統和中間件方面,應該掌握基本的使用以及安裝、配置等。例如很多應用系統都是基于Unix、linux來運行的,這就要求測試人員掌握基本的操作命令以及相關的工具軟件。而WebLogic、Websphere等中間件的安裝、配置很多時候也需要掌握一些。
數據庫知識則是更應該掌握技能,現在的應用系統幾乎離不開數據庫。因此不但要掌握基本的安裝、配置,還要掌握SQL。測試人員至少應該掌握Mysql、MS Sqlserver、Oracle等常見數據庫的使用。
作為一名測試人員,盡管不能精通所有的知識,但要想做好測試工作,應該盡可能地去學習更多的與測試工作相關的知識。
2.行業知識
行業主要指測試人員所在企業涉及的行業領域,例如很多IT企業從事石油、電信、銀行、電子政務、電子商務等行業領域的產品開發。行業知識即業務知識,是測試人員做好測試工作的又一個前提條件,只有深入地了解了產品的業務流程,才可以判斷出開發人員實現的產品功能是否正確。
很多時候,軟件運行起來沒有異常,但是功能不一定正確。只有掌握了相關的行業知識,才可以判斷出用戶的業務需求是否得到了實現。
行業知識與工作經驗有一定關系,通過時間即可以完成積累。
3.個人素養[1]
作為一名優秀的測試工程師,首先要對測試工作有興趣:測試工作很多時候都是顯得有些枯燥的,因此熱愛測試工作,才更容易做好測試工作。因此,除了具有前面的專業技能和行業知識外,測試人員應該具有一些基本的個人素養,即下面的“五心”。
專心:主要指測試人員在執行測試任務的時候要專心,不可一心二用。經驗表明,高度集中精神不但能夠提高效率,還能發現更多的軟件缺陷,業績最棒的往往是團隊中做事精力最集中的那些成員。
細心:主要指執行測試工作時候要細心,認真執行測試,不可以忽略一些細節。某些缺陷如果不細心很難發現,例如一些界面的樣式、文字等。
耐心:很多測試工作有時候顯得非常枯燥,需要很大的耐心才可以做好。如果比較浮躁,就不會做到“專心”和“細心”,這將讓很多軟件缺陷從你眼前逃過。責任心:責任心是做好工作必備的素質之一,測試工程師更應該將其發揚光大。如果測試中沒有盡到責任,甚至敷衍了事,這將會把測試工作交給用戶來完成,很可能引起非常嚴重的后果。
自信心:自信心是現在多數測試工程師都缺少的一項素質,尤其在面對需要編寫測試代碼等工作的時候,往往認為自己做不到。要想獲得更好的職業發展,測試工程師們應該努力學習,建立能“解決一切測試問題”的信心。
“五心”只是做好測試工作的基本要求,測試人員應該具有的素質還很多。例如測試人員不但要具有團隊合作精神,而且應該學會寬容待人,學會去理解“開發人員”,同時要尊重開發人員的勞動成果——開發出來的產品。