地火燎原
1、軟件工程技能你必須了解軟件軟件工程(設計、開發(fā)和簡單測試),應用,系統(tǒng),自動測試編程,及操作系統(tǒng),數(shù)據(jù)庫,網(wǎng)絡系統(tǒng)和協(xié)議的設計和使用。 2、交流技巧如果想確定軟件缺陷,你應當能夠指出什么時候的缺陷算是缺陷。 3、組織技能如果你在別人都頭腦發(fā)昏的時候保持清醒,你就可能是一個好的軟件測試工程師。在網(wǎng)絡時代軟件測試是一項有壓力的復雜性工作,但如果你能從這些紛繁中找到一種途徑,它就是一項回報豐厚的事業(yè)。 4、實踐技能當一個工作需要經(jīng)驗,而你又需要一個工作去豐富你的經(jīng)驗時該怎么辦?這并不完全是一個兩難的問題,你可能采用幾種方式去獲得實際經(jīng)驗。 5、態(tài)度除了技術水平,你需要理解和采取適當?shù)膽B(tài)度去做軟件測試。 我的建議是閱讀Roger Pressman的軟件工程:A Practitioner's Approach, fifth edition (職業(yè)入門,第五版,McGraw Hill, 2000年版)和 Glenford Myers的The Art of Software Testing(軟件測試藝術,John Wiley & Sons, 1979年版)。Pressman的書是一個對軟件工程原理的全面介紹。有很多關于軟件技巧、項目管理、要求分析和軟件設計等軟件工程方面的好書,但Pressman對這些方面在一本書里作了介紹。Glenford Myers不到二百頁,1979年發(fā)行,卻是軟件測試方面的圣經(jīng)。Myers定義及詮釋的測試方法論已成為軟件測試的基本模塊。 Myers還考查了軟件測試中的經(jīng)濟(缺陷的代價)和心理學方面(測試的目標就是發(fā)現(xiàn)失誤及不成功之處),以及主導軟件開發(fā)和測試的基本原則。
寒江之月
一、業(yè)務分析能力1.分析整體業(yè)務流程不了解整個公司的業(yè)務,根本就沒辦法進行測試2.分析被測業(yè)務數(shù)據(jù)了解整個業(yè)務里面所需的數(shù)據(jù)有哪些?哪些是需要用戶提供的?哪些是自己提供的?有哪些可以是假數(shù)據(jù)?有哪些必須是真數(shù)據(jù)?添加數(shù)據(jù)的時候可以用哪個庫?明白了整個軟件的數(shù)據(jù)庫架構,才能知道哪一個數(shù)據(jù)是從哪一個表里頭帶出來的,它的邏輯是什么,有沒有連帶關系。3.分析被測系統(tǒng)架構用什么語言開發(fā)的?用的是什么服務器?測試它的話需要用什么樣的環(huán)境進行測試?整體的測試環(huán)境是什么樣的?如果缺少了,需要進行環(huán)境搭建,架構搭建。一般去一家新公司之后,架構是搭建好的,了解它即可,熟悉之前的這些老員工們使用什么樣的架構去做的。4.分析被測業(yè)務模塊整個軟件有哪些模塊,比如說首頁面、注冊頁面、登錄頁面、會員頁面、商品詳情頁面、優(yōu)惠券頁面等等明白有多少個模塊需要測試,每個模塊之間的連帶關系,進而怎樣進行人員分工5.分析測試所需資源我需要幾臺計算機,需要幾部手機,手機需要什么樣的系統(tǒng),什么樣的型號。比如測一個網(wǎng)站的性能的時候,電腦的配置達不到測試并發(fā)5000人的標準,要么升級電腦的硬件配置,要么多機聯(lián)合,多機聯(lián)合時需要幾臺電腦,都需要提前籌劃。6.分析測試完成目標我的性能目標是什么樣的?我的功能目標是什么樣的?我要上線達到的上線標準是什么樣的?性能目標,比如我要達到并發(fā)5000人的時候,CPU占用率不能高于70%,內(nèi)存占用率不能高于60%,響應時間不能超過5秒功能目標,比如整體的業(yè)務流程都跑通,所有的分支流程都沒有問題,所有的接口都能夠互相調(diào)用,整體的UI界面沒有問題,兼容性沒有問題等把這些問題都弄清楚,測試的思路會非常的清晰二、缺陷洞察能力1.一般缺陷的發(fā)現(xiàn)能力至少你要滿足一般缺陷的發(fā)現(xiàn)能力,這個是最基本的,如果要連最簡單的一般的缺陷都發(fā)現(xiàn)不了的話,別說優(yōu)秀測試工程師了,你說你是測試我都不信2.隱性問題的發(fā)現(xiàn)能力在軟件的測試過程當中有一些缺陷藏的比較深,有的是性能方面的問題,有的是功能方面的問題,它需要有一些設定特定的條件的情況下才會出現(xiàn)這樣的問題。比如說買雙鞋必須選擇的是什么品牌,必須選擇是紅顏色,必須選擇44號,而且必須選擇用特定的支付方式才會出現(xiàn)這樣的bug的時候,那么這種就屬于特別隱性的bug,對于這樣的問題的發(fā)現(xiàn)能力一定要比別人更強,要找到一些別人可能發(fā)現(xiàn)不了的bug3.發(fā)現(xiàn)連帶問題的能力當發(fā)現(xiàn)了一個缺陷之后,能夠想到通過這個缺陷可能會引發(fā)其他哪個地方出現(xiàn)問題,這就叫做連帶的問題。而不是說發(fā)現(xiàn)這一個bug之后提了這一個就算完了,一定要有一個察覺,可能其他地方也存在這樣的問題。4.發(fā)現(xiàn)問題隱患的能力有些軟件里邊可能有一些操作模塊,或者是代碼寫的接口,表面上沒有什么問題,但是它是有隱患的,比如說這個接口寫的不穩(wěn)定,當他傳的數(shù)據(jù)有一些問題的時候,可能它最后返回的結果就是報錯就是報404或者報亂碼。5.盡早發(fā)現(xiàn)問題的能力如果你只能停留在界面級別的話,那你根本就沒有辦法達到盡早發(fā)現(xiàn)問題的這個能力你必須要等到前端人員把每個界面都做好了之后才能進入測試,而我能比你早一個月進入測試了,然后我比你結束測試時間快一個月,而你又比我晚一個月,那么咱倆的薪資一下就拉開了6.發(fā)現(xiàn)問題根源的能力需要知道這個缺陷它到底是由什么原因產(chǎn)生的,是屬于什么類型的缺陷,是ui前端人員做的問題,還是后臺接口人員做的問題?不僅要找到這個bug,還要知道這個bug產(chǎn)生的原因,這樣的測試人員是非常棒的,而且很是受人尊敬,提bug的方式也就不一樣了三、團隊協(xié)作能力1.合理進行人員分工2.協(xié)助組員解決問題3.配合完成測試任務4.配合開發(fā)重現(xiàn)缺陷5.督促項目整體進度6.出現(xiàn)問題勇于承擔四、專業(yè)技術能力1.掌握測試基礎知識2.嫻熟運用測試工具熟悉工具和熟練使用工具完全是兩個概念,熟悉工具基本上等同于不會,遇到過很多簡歷上寫會使用什么什么工具,都沒有實際能力。比如loadrunner只會一個簡單的錄制,增強一下腳本,覺得會用了,那知識會用了1/5,其他4/5 都不會。3.了解工具操作原理它是怎么樣給服務器發(fā)送請求的,是用什么樣的方式去發(fā)送請的,是用什么樣的方式去監(jiān)控的,它的操作原理是什么樣的,咱們要把這件事情搞清楚,這樣的話能有助于更好的去使用這些東西。包括一些請求的協(xié)議,每個協(xié)議代表什么意思,它是用來干什么的。4.自主完成測試任務一定要能夠自己完成一個獨立的內(nèi)容,獨立的工作,這件事情領導你交給我好了,放心我能給你搞定,要的是這樣的人5.找出問題出現(xiàn)原因找出缺陷的時候,不僅要看它的表面,還要看它的本質6.提供問題解決方案發(fā)現(xiàn)問題不是能力,發(fā)現(xiàn)問題并提出解決方案才是真的能力7.提供完整測試報告測試報告能夠說明你表達的清不清楚?領導能不能看懂?還有就是能不能夠把你整個測試的過程給它梳理得非常詳細,人家能夠通過你的報告,能夠了解到整個的項目的情況,而不是只了解一個片面的情況8.了解相關技術領域觸類旁通
小泥格格
自學有點難度,主要是缺少項目和有經(jīng)驗的人指點!一般的黑盒和自動化測試大致的培訓課程有:1 軟件測試基礎2 軟件測試方法、原則、策略3 軟件測試需求分析和計劃4 軟件測試用例設計5 軟件測試執(zhí)行6 bug跟蹤和管理7 軟件評審、度量和報告8 軟件配置管理、質量管理、風險管理9 數(shù)據(jù)庫的操作10 測試驅動開發(fā)11 自動化測試工具(主流的一些功能測試、性能測試以及管理工具)。。。。以下的參考資料是一些測試的書籍,你可以參考看看!
香雪海Jackie
第一步,測試基礎:
測試基礎是軟件測試最最最重要的部分,只要你是做測試,不管是什么測試,測試的基礎、理論知識都是必須學會的。大概就包括:測試計劃編寫、設計測試用例、編寫測試報告、編寫B(tài)UG報告單、跟蹤BUG修復情況、還需要良好的溝通能力、以及各種測試階段所使用的測試方法、單元測試、功能測試、集成測試、系統(tǒng)測試等。
第二步:學習腳本語言
如:python語言,當然python 是一門相對簡單的計算機語言,考慮長遠發(fā)展,需要了解C語言或者java。都說C語言最難,但是用得確實也多。
第三步:學習軟件測試工具
學習軟件測試工具并不難,只是需要我們?nèi)ハ到y(tǒng)的學習。比如性能測試工具loadrunner,自動化測試工具selenium、Appium,接口測試Jmeter、Postman等。雖然說工具不是萬能的但是工具能為我們提高工作效率,所以必須得會熟練的使用。最關鍵的一點,是要結合項目具體去操作,實踐出真知,理論知識在實際項目中才能得到鞏固。
第四步:計算機硬件知識
做過性能測試的都知道在性能測試過程中硬件性能也是一個非常重要的指標、CPU、內(nèi)存、IO、帶寬等等、如果你是做硬件測試的。那么就更不用說了。交換機、路由器、防火墻這些設備都需要有所了解。
第五步:數(shù)據(jù)庫測試
MySQL數(shù)據(jù)庫
MySQL簡介、命令行工具以及數(shù)據(jù)管理、MySQL數(shù)據(jù)查詢(條件、分組、聚合函數(shù)、排序、分頁、連接查詢、自關聯(lián)、子查詢)、內(nèi)置函數(shù)、項目練習、數(shù)據(jù)分表、Python操作MySQL。
Redis數(shù)據(jù)庫
Redis簡介、客戶端和服務器、數(shù)據(jù)類型(string、hash、list、set、zset)、各種數(shù)據(jù)類型操作、Python操作Redis、主從、集群。
第六步:項目實戰(zhàn)
最好參與真實項目的測試工作,積累真實項目的測試經(jīng)驗。
成為優(yōu)秀軟件測試員之提升條件,如果你想成為一個更優(yōu)秀的軟件測試員的話,除了上面那些,你也最好能夠具備開發(fā)語言即代碼編寫能力,雖然不會寫代碼也能做測試、但是如果你想做到高級測試工程師以上、那么代碼編寫能力就是必選項、如果不會寫代碼、那么你不可能成為高級測試。高級測試工程 師的一部分工作就是在寫測試工具。雖然測試也需要寫代碼但不需要和開發(fā)一樣那么精通某一門語言、可是測試卻需要了解很多門開發(fā)語言(舉一個簡單的例子:你 現(xiàn)在所在的項目從C++語言、2年后你換工作了、新公司的開發(fā)語言是Java或者是VB什么的)所以在開發(fā)語言中測試需要更廣的學習。
成為軟件測試員之必備條件,就是你一定要有良好的心態(tài)。心要靜、細心耐心、責任心。心靜不下來無法對bug展開發(fā)向思維及拓展想像。任何一個測試最先面對的心理壓力就是重復性的勞動。在你的測試生涯中,一定會碰見很多心理的考驗,自己對于質量心里沒有底、或者由于產(chǎn)品發(fā)布問題或者達到了測試瓶頸時候的困惑等。每個人都有自己的背景以及性格,往往對于測試來講,就是考驗心理素質的時候,這個時候就需要你自己不斷地去克服這些心理
濟南李大媽
市面上的培訓機構大大小小有幾百家,各種學校魚龍混雜在一起,很容易理解題主這樣害怕找到不良學校被坑騙的心情,所以,如何找到靠譜的培訓學校就尤為重要。建議在選擇時可以從以下幾個方面考慮:
1. 課程資源
基本上各個軟件測試課程表面上都是雷同的,大家都差不多,不過還要注意一點,看看該培訓機構的課程是否實時更新,以適合企業(yè)的最新要求。
2. 實戰(zhàn)項目
項目是選擇軟件測試培訓班的核心問題,如果沒有測試經(jīng)驗,光會測試方法是絕對不能成為一個優(yōu)秀的測試員的。
3. 師資力量
一個優(yōu)秀的老師才能帶出一班優(yōu)秀的學員,選擇軟件測試培訓機構要看看這些老師有沒有真正的企業(yè)任職經(jīng)驗和測試經(jīng)驗。
4,?就業(yè)保障
畢竟我們找學校的直接目的就是就業(yè),就業(yè)好了,學校才有好的口碑。
總之,要想不被不良學??域_,就要自己多上心,找學校不是小事,如果疏忽大意了,那最后吃虧的一定是自己。
小軒3636
很多朋友都會咨詢:軟件測試要學些什么。有的人說的很簡單,有的人說的很多,我認為都對。但是,如果學的很簡單,比如只學過手動測試,那么在今后的發(fā)展過程中,勢必要遇到瓶頸。而遇到瓶頸,想要突破,就必須得加緊學習了。突破瓶頸如何突破現(xiàn)有的瓶頸?當測試人員入職后,測試人員不能僅僅做好本職工作,還需要思考如何將工作做的更快,更好;思考是不是還有其他方式完成工作。下面給大家介紹下突破瓶頸需要的能力,以及學習方向。代碼能力測試人員不需要學習ssh框架、mvc框架。但是測試人員選擇的開發(fā)語言要與公司常用開發(fā)語言一致。達到能看到開發(fā)寫的邏輯就可以了,進階的話,測試人員可以自己利用公司的框架寫一點小的項目,這樣可以更加理解開發(fā)的工作方式,易錯點。很多時候,你會發(fā)現(xiàn)有些功能點的問題好的測試工程師一眼就發(fā)現(xiàn)了,因為他們也錯過。溝通能力溝通能力是作為測試很關鍵的一個能力,開發(fā)、運維、客戶等角色都需要測試人員去溝通。有時候還需要測試人員去協(xié)調(diào)資源。如果只是悶頭測試,那你的眼界只能局限于一小塊,整天只能唉聲嘆氣抱怨為啥提交質量這么次,客戶老罵人了。測試知識廣度當測試人員要晉升高級、資深測試的時候,測試人員需要給公司看出他們的價值,測試人員和新員工的區(qū)別。此時,測試人員不光要在業(yè)務上有自己的見解,在測試技術上也要有所涉及。了解那些技術會對測試效率有提升,為公司省錢。自動化測試、性能測試、白盒測試、灰盒測試、接口測試、混淆測試等等,不光要理解名字,建議能自己實際操作下??粗茈y的東西,上手了就沒那么難了。測試知識深度當測試人員專注于測試的時候,一定要選個方向。自動化還是性能?不建議選擇業(yè)務專家或者測試管理,前者太難,后者容易被淘汰。作為一名性能測試、自動化測試都有涉獵的人來說,比較推薦大家入門自動化方向。需要學習的東西較少,大公司招聘的很多。作為自動化測試來說,需要學習單元測試、接口測試、UI自動化測試,需要深入學習代碼、框架。這些基本就夠了。
優(yōu)質工程師考試問答知識庫