Ⅰ 有誰能告訴我軟體開發中的QA主要做什麼的
QA是質量管理職位,很多大公司有專門的質量管理部。
在項目開發過程,會由QA進行全程的監督,查看是否按照CMMI的標准進行軟體開發。
文檔是否齊備,開發基線是否明確,是否存在風險,BUG的削減是否能夠完成目標之類的。
該職位的好處是加班沒有那麼多,有經驗的QA能夠協助項目經理管理好項目。
相當於一個監督員的身份。
CMMI全稱是Capability Maturity Model Integration,即能力成熟度模型集成(也有稱為:軟體能力成熟度集成模型)
Ⅱ qa工程師是做什麼的
qa工程師工作內容:
1、制定軟體開發過程的規范與制度,監督並保證規范與制度按要求執行。
2、負責產品研發過程體系(敏捷相關流程、CMMI相關流程等)的持續優化和推廣。
3、為產品研發過程規范實施提供咨詢、指導和培訓,確保規范流程落實。
4、負責流程規范的執行檢查和審計,監督和管理不符合項問題的解決。
5、收集過程數據、統計分析過程情況並以此推動過程改進工作。
6、結合公司業務特點和業界優秀實踐,提出質量改進計劃。
7、協助完成各類流程審計工作。
8、負責產品質量的整體管控。
崗位介紹:
qa,測試工程師,軟體質量的把關者,工作起點高,發展空間大。我國的軟體測試職業還處於一個發展的階段,所以測試工程師具有較大發展前景。
傳統的軟體行業還是以軟體測試工程師為主,但是在新興的互聯網行業大多還是以QA來命名這個職位,也就是質量保證。
Ⅲ it行業中qa工程師主要做什麼
QA即英文QUALITY ASSURANCE 的簡稱,
中文意思是品質保證,其在ISO8402:1994中的定義是「為了提供足夠的信任表明實體能夠滿足品質要求,而在品質管理體系中實施並根據需要進行證實的全部有計劃和有系統的活動」。有些推行ISO9000的組織會設置這樣的部門或崗位,負責ISO9000標准所要求的有關品質保證的職能,擔任這類工作的人員就叫做QA人員。
QA在IT企業就是個擺設,准備各種ISO9000標准要求的文件,參加各種質量管理的會議。檢查各種ISO9000標准要求的節點條件是否具備。
QA不是測試工程師,也不是開發工程師,一般不得兼任開發和測試工作,否則算違反ISO9000標准要求。
其QA工程師崗位職責是:
一、質量管理體系:
1、QA工程師編制項目部質量管理體系策劃書,經領導審批後下發執行。
2、QA工程師根據施工計劃提出年度、月度監督檢查計劃。計劃內容要依據質量管理體系文件,並每年監督檢查要覆蓋項目部所有部門和體系涉及的所有要素。
3、現場監督檢查是隨機的、不定時的,QA工程師對監督發現的不符合或缺陷做出記錄,並將不符合或缺陷按重要性的不同以書面或口頭形式通知責任方。目的在於向責任方提出改進工作的建議,提醒責任方引起重視,糾正不符合和缺陷。
4、巡檢主要針對單位工程開工、施工過程中、三級驗收及監理公司參與的四級驗收之前,QA工程師提前按照程序文件要求對文件包資料進行檢查,避免在監理公司驗收時提出不符合,同時保證施工與資料同步,避免後補資料。
5、QA工程師匯總各類管理體系月度、年度監督檢查情況,出具報告,報公司企業策劃部,並對有關問題提出糾正預防措施,監督實施;
6、QA工程師匯總各部門年度體系培訓計劃,經人力資源管理批准後,各部門組織實施。
7、QA工程師配合質監專工參與質監中心站活動,並依據有關要求整理迎檢資料,對各部門的資料提前組織檢查。
8、QA工程師與各部門保持密切聯系,及時解決體系運行中介面不協調的問題,如無法解決可提交管理評審輸入。
9、QA工程師配合好與業主及監理公司進行的各種質保監督檢查活動,及時組織對檢查出的質量問題進行整改,並採取糾正或預防措施。
10、QA工程師與各專業工程師、單項工程師密切配合,抓好不合格品的控制。出現不合格品,要及時進行原因分析並做好統計記錄工作,採取有效的糾正預防措施,杜絕類似質量問題再發生。
11、QA工程師根據每年公司質量體系審核、日常監督檢查、質量評定情況、管理評審以及顧客反映的有關問題,進行全面的匯總統計分析,找出質量體系運行的薄弱環節。以書面報告的形式反饋相應的部門,並由其制訂預防措施和質量改進目標,實現質量改進。
12、QA工程師配合好公司組織的質量管理體系內審,並對出現的不符合組織整改。
13、QA工程師配合好由認證單位組織的外審,並對出現的不符合組織整改。
14、QA工程師對有關招標文件從體系考慮角度進行審查。
15、QA工程師每周不少於一次到現場檢查。
16、QA工程師每月不定期對重要進貨物資、監視設備、文件包等資料進行抽檢。
二、計量管理體系:
1、QA工程師組織項目部有關人員學習貫徹執行國家計量法律、法規、法令及公司程序文件。
2、QA工程師組織建立項目部量值溯源圖。
3、QA工程師建立項目部管理人員網路圖。
4、QA工程師負責項目部管理部門使用檢測設備的日常計量管理工作。
5、QA工程師負責項目部計量檢測體系的運行及日常的監督。
6、QA工程師負責項目部計量管理信息的上傳下達。
7、QA工程師負責建立項目部計量檢測設備台帳,並上報企業策劃部。
8、QA工程師負責項目部計量檢測設備的送檢工作。
9、QA工程師負責批准各部門檢測設備需用計劃的提出。
10、QA工程師負責檢測設備的封存、報廢、回收等管理工作。
11、QA工程師配合人力資源做好項目部員工的計量教育、培訓工作,不斷更新職工的計量知識,提高員工的計量意識。
12、QA工程師配合好公司組織的計量管理體系內審,並對出現的不符合組織整改。
13、QA工程師配合好由政府機構組織的外審,並對出現的不符合組織整改。
14、QA工程師負責監督檢測設備的貯存和使用情況。
15、QA工程師每周不定期對檢測設備進行抽查。
16、QA工程師每月對外包隊使用計量器具的情況進行抽查。
三、環境管理體系:
1、QA工程師每年組織環境因素的識別與評價,匯總報批重要環境因素
2、QA工程師匯總報批環境目標、指標、環境管理方案,並監督驗證實施。
3、QA工程師組織各部門編制項目部環境管理體系文件。
4、QA工程師負責與電廠、監理公司等的外部聯絡,接收外部相關方的投訴。
5、QA工程師組織制定項目部環境管理體系年度培訓計劃, 人力資源負責培訓的組織、落實和記錄管理。
6、QA工程師參與項目部能源、資源的節約控制;參與自然災害的防範,現場事故的預防、應急准備和響應;參與消防設計評審;參與確定生活和生產活動中的環保監測項目和關鍵特性;參與生產施工過程雜訊、振動、煙塵、污水排放控制。
7、QA工程師為各責任部門的培訓提供技術支持;各責任部門負責實施。
8、QA工程師每月對廢棄物處理的情況進行監督檢查。
9、QA工程師負責組織項目部的應急准備和響應,建立應急方案,並監督實施。
10、QA工程師對監測設備和儀器進行統一管理、每月進行抽檢。
11、QA工程師協助處理環境事故,協助責任部門分析不符合項產生原因,制定並實施糾正和預防措施,QA工程師監督實施。
12、QA工程師配合文明施工員每周至少二次到現場檢查,形成環境記錄。
13、QA工程師協助、配合公司組織的內審工作;為管理評審提供需要的信息。
14、QA工程師負責接收公司的信息並及時傳達;負責匯總項目部的信息並按要求上報。
15、QA工程師每月對主管部門環境特殊、重要崗位人員相關知識、技能的培訓情況進行監督檢查。
16、QA工程師每半年對法律、法規及其它要求的遵守執行情況進行監督檢查。
四、職業安全健康管理體系:
1、QA工程師配合安監專工編制職業安全健康體系策劃書,配合安監人員對職業安全健康體系運行的整體情況進行策劃。
2、QA工程師組織編制、修訂、發放項目部職業安全健康體系文件;
3、QA工程師參與安全質量會議;
4、QA工程師參與公司、項目部組織的月度、季度安全大檢查。
5、QA工程師監督驗證檢查中提出的體系性不符合的糾正和預防。
6、QA工程師參與對工程分承包方資料的評價,並對其施加影響提出建設性意見和建議。
7、QA工程師每月對MSDS的收集和發放進行檢查、每月對化學危害品的使用檢查,
8、QA工程師配合安監專工對項目部的應急預案和響應方案的建立、實施情況進行檢查;
9、QA工程師檢查各部門目標的分解和管理方案的落實情況。
Ⅳ 我是個程序員,但是我們經理讓我做QA! 我沒做過QA。請問轉QA好嗎我在的是個小公司!
你不可能在一個小公司一直做程序員,讓你做QA應該是不錯的選擇。
而且更多的是管理經驗。
Ⅳ 北大青鳥分享選擇程序員發展方向時必須知道的事
如果你是一名初學者,對編程非常感興趣,想成為一名合格的程序員,那麼這篇文章就是為你寫的。
從初學者成長為一名合格的程序員需要一段時間的磨練,每個人付出的時間和做事的效率不同,我不好評判你需要多長時間才能學有所成。北大青鳥http://www.kmbdqn.com/認為站在求職的角度,能開發出實用的軟體、網站、APP等才叫學有所成。
程序員的發展方向計算機涉及的知識非常廣泛,不可能在短時間內全部學完,即使公司的CTO也不可能樣樣精通,初學者要選定一個方向,不要想著把客戶端軟體、網站、APP都開發出來,這在短時間內是不現實的。相信我,你不是神!
1、Windows開發
主要是開發客戶端(PC機上的軟體),如QQ、迅雷、360等,需要學習C/C++、WindowsAPI、操作系統原理、數據結構、演算法等。
2、游戲開發
需要你有Windows開發的基礎,再學習DirectX圖形編程、Socket通信、游戲伺服器架設等。
3、Web開發
也就是做網站,分前端和後台。後台主要負責伺服器端的編程,需要學習Java、PHP、Python等一門Web開發語言;前端主要負責網頁的設計,需要學習HTML、CSS、JavaScript等。隨著互聯網的崛起,人才需求量大,工資高,很大一部分程序員都在從事Web開發。
4、底層服務
NB的程序員都在搞這些,例如編寫一個線程池為上層提供服務。工資比普通的程序員高。
5、演算法
也是NB的程序員在搞,一般不注重編程語言,而是側重解決問題的方法和效率。工資比普通的程序員高。
6、移動開發
包括IOS和Android,你可以開發APP,也可以開發游戲,需要學習Java(針對Android)、Objective-C(針對IOS)、Swift(針對IOS)等。
7、軟體和硬體結合
包括嵌入式和單片機,不僅要會寫代碼,還要了解硬體,所以入門門檻比較高,知識也比較龐雜,學習時間長。選擇該方向最好有數字電路、模擬電路和匯編的基礎,非常適合電子信息工程專業的同學。
這個方向的同學,大部分去了中興、華為等以生產電子產品為主的公司,工資雖然沒有一般的程序員高,但是還說得過去。不過隨著智能硬體的崛起,這部分工程師的春天或許就要到來了。
8、測試(QA)
一款產品問世需要大量的測試才能投放市場,QA(QualityAssurance,譯為「品質保證」)人員就是為程序員把關的,如果程序員的作品不符合產品需求或者Bug太多,QA有權駁回,這時就會影響程序員的績效。
QA不但要能看懂代碼(大概理解什麼意思),還要掌握一定的測試技巧,更重要的是心思縝密,有耐心有毅力,女生比例很高。
拿到融資的創業公司、規模不大的公司、一些國企等給的待遇也不錯,年薪也可以超過10萬。
Ⅵ 在IT公司做QA有發展前途嗎有上升空間嗎
QA在軟體開發流程中是很重要的角色,是項目支撐人員中協助項目經理完成質量監控,質量審計,質量問題跟蹤以及項目關鍵流程的制定的角色。地位非常重要,而且需要掌握深厚的相關業務知識。做好了的話前途很大,主要還是看個人能力的情況。QA能夠做好的話,如果再懂一些對應的業務,都是可以向項目經理轉型的:)
Ⅶ 我們需要專職的 QA 嗎
有不同的觀點,有爭論總是一件好事,這樣可以引發大家的思考。所以,對於我的這篇博文,如果你贊同我的觀點,我會感到高興,如果你會去認真地深入思考,我也會高興,如果你反對,沒關系,可以討論。在此之前,我想說明一下我觀點里的這個「專職QA」是怎麼定義的。其是很多公司成立的專門做測試的技術人員,僅測試不開發。這些QA對於軟體開發技術並不熟悉,甚至不懂。我經歷過一些公司都有專職的QA團隊(專職的測試人員),自從上個公司我的開發團隊在一個項目上被QA部門搞得一團糟,我越來越懷疑專職QA存在在意義。我的觀點不一定對,但請讓我鮮明地表達一下——我覺得是不需要全職的QA的,甚至不需要QA這一專職角色或部門,因為,不懂開發的人必然做不好測試。就像不懂開發的研發經理必然管不好研發團隊一樣。我越來越覺得Dev應該應該是做測試最合適的人選,這必然是未來的趨勢 (因為我已經看到了中國程序員的進步,相比起10年前,今天的程序員已經是非常全面了,再來十年,必然證明我的觀點是對的)。在我正在展開說明之前,我想引用兩篇文章:兩篇文章一篇是 「On testers and testing」(中文翻譯),本文的作者Sriram Krishnan是一名程序員,曾在Yahoo和微軟工作過,開發過很多軟體,曾被紐約時報報道,寫過一本書,本文是他的一篇博客。他在文章中表達了這幾個觀點——大多數的開發團隊並不需要一個獨立的測試角色。即使要有,那麼所有的開發時間比上所有的測試時間應該 >20:1的。。證據嗎?光看看一些從古至今最成功的軟體開發團隊就知道了。不論是當今的Facebook,還是30年前最初的NT團隊,很多偉大 的產品都是出自沒有或很少測試人員的團隊。開發人員應該測試自己的代碼。沒什麼可說的。背後的道理並不重要。這包括單元測試,全覆蓋的自動化測試或手工測試或組合測試。如果你的開發人員不能/不願意或認為這「不歸我管」,那你需要更好的程序員。另一篇文章是鄒欣的「現代軟體工程講義 9 測試 QA 的角色和分工」,這是一篇很不錯的文章。他在文章里提到了分工的必要性,比如第三方的鑒定機構,並且也指出了分工的一些問題,比如,畫地為牢的分工,無明確責任的分工,等,這些問題直接命中了分工的要害。我隱約覺得,我和鄒欣的很多觀點是相同的,我們內容上是相同的,只是形式上還有分歧。另外,我的觀點太鮮明了,從而容易導向極端的理解。你看,我們都同意,Dev要懂測試,QA要懂開發,只不過分工不同,既然你中有我,我中有你,那就不要分彼此了,一起攜手開發測試吧。(另外,我個人覺得不懂開發的測試人員不可能測試得好) 我的故事我再說說我最糟糕的QA經歷吧,這個公司的QA部門只做測試,他們的leader覺得所有的test design和test 的過程都不需要Dev參與,他們是獨立於Dev之外的部門,他們幾乎不關心Dev的設計和實現,他們只關心能跑通他們自己設計的test case。但是去執行Test Case的時候,又需要Dev的支持,尤其在環境設置,測試工具使用,確認是否是bug方面,全都在消耗著Dev的資源,最扯的是,他們對任何線上的問題 不負責,反正出了問題由Dev加班搞定。我有一次私自review他們的test case的時候,發現很多的test case這樣寫到 –「Expected Result:Make sure every thing is fine」 ,WTF,什麼叫「Every thing is fine」?!而在test case design的時候,沒有說明test environment/configuration 是什麼?沒有說明test data在哪裡?Test Case、Test Data、Test Configuration都沒有版本控制,還有很多Test Case設計得非常冗餘(多個Test Case只測試了一個功能),不懂得分析Function Point就做Test Design。另外,我不知道他們為什麼那麼熱衷於設計一堆各式各樣的Negative Test Case,而有很多Positive的Test Case沒有覆蓋到。為什麼呢,因為他們不知道開發和設計的細節,所以沒有辦法設計出Effective的Test Case,只能從需求和表面上做黑盒。在做性能測試的時候,需要Dev手把手的教怎麼做性能測試,如何找到系統性能極限,如何測試系統的latency,如何觀察系統的負載(CPU,內存,網路帶寬,磁碟和網卡I/O,內存換頁……)如何做Soak Test,如何觀察各個線程的資源使用情況,如何通過配置網路交換機來模擬各種網路錯誤,等等,等等。測試做得也不認真,大量的False Alarm,都是環境問題,比如:安裝新版本後沒有重啟服務,沒有使用新的配置文件,網路配置,等等,等等。在項目快要上線前的一周,我又私自查看了一下他們的Test Result,我看到5天的Soak Test 的內存使用一直往上漲,很明顯的內存泄露,這個情況發生在2個月前,但是一直都沒有報告,我只好和我的程序員每天都加班到凌晨,趕在上線前解決了這個問 題。但是,QA部門的同學們就像沒發生什麼事似的,依然正常上下班。哎……為什麼會這樣?我覺得有這么幾點原因(和鄒欣的觀點一樣)給了QA全部測試的權力,但是沒有給相應的責任,QA沒有體會過軟體質量出問題後的痛苦(解決線上問題的壓力),導致QA不會主動思考和改進。QA對Dev的開發過程和技術完全不了解,增加了很多QA和Dev的溝通。QA對軟體項目的設計和實現要點不了解,導致了很多不有效的測試。註:我無意在這里貶低QA的能力工作。只是我看到了QA因為沒有參與開發的一些現實問題。我的觀點鄒欣對於分工出現的問題給出了兩點解決方法:充分授權和信任(Empower team members)各司其職,對項目共同負責(Establish clear accountability and shared responsibility)我的觀點是, 理論上正確,操作上太虛了。這就像我們國家喊的「為人民服務」的口號一樣,沒有具體的方法,根本無法落實。我無意在這里貶低QA的工作,我也無意因為這個事走向另一個極端。但是,我在現在公司的經歷,還有很多新興公司的做法,我越來越覺得軟體開發,真的不需要專職的QA,更不需要只寫代碼不懂做測試的專職的Dev。觀點如下:1) 開發人員做測試更有效開發人員本來就要測試自己寫的軟體,如果開發人員不懂測試,或是對測試不專業,那麼這就不是一個專業的開發人員。開發人員了解整個軟體的設計和開發過程,開發人員是最清楚應該怎麼測試的,這包括單元測試,功能測試,性能測試,回歸測試,以及Soak Test 等。開發人員知道怎麼測試是最有效的。開發人員知道所有的function point,知道fix一個bug後,哪些測試要做回歸和驗證,哪些不需要。開發人員的技術能力知道怎麼才能更好的做測試。很多開發人員只喜歡寫代碼,不喜歡做測試,或是他們說,開發人員應該關注於開發,而不是測試。這個思路相當的錯誤。開發人員最應該關注的是軟體質量,需要證明自己的開發成果的質量。開發人員如果都不知道怎麼做測試,這個開發人員就是一個不合格的開發人員。另外,我始終不明白,為什麼不做開發的QA會比Dev在測試上更專業? 這一點都說不通啊。2)減少溝通,扯皮,和推諉想想下面的這些情況你是否似曾相識?QA 做的測試計劃,測試案例設計,測試結果,總是需要Dev來評審和檢查。QA在做測試的過程中,總是需要Dev對其測試的環境,配置,過程做指導。QA總是會和Dev爭吵某個問題是不是BUG,爭吵要不要解決。無論發現什麼樣的問題,總是Dev去解決,QA從不fix問題。我們總是能聽到,線上發生問題的時候,Dev的抱怨QA這樣的問題居然沒測出來,QA也總會抱怨Dev代碼太差,一點也不懂測試,沒怎麼測就給hand over 給QA了。QA總是會push Dev,這個bug再不fix,你就影響我的進度了。等等,等等。如果沒有QA,那麼就沒有這么多事了,DEV自己的干出來的問題,自己處理,沒什麼好扯皮的。而一方面,QA說Dev不懂測試,另一方面Dev說QA不懂技術,而我們還要讓他們隔離開來,各干各的,這一點都不利於把Dev和QA的代溝給填平了。要讓Dev理解QA,讓QA理解Dev,減少公說公有理,婆說婆有理的只站在自己立場上的溝通,只有一個方法,那就是讓Dev來做測試,讓QA來做開發。這樣一樣,大家都是程序員了。3)吃自己的狗食真的優秀的開發團隊都是要吃自己狗食的。這句話的意思是——如果你不能切身體會到自己乾的爛事,自己的痛苦,你就不會有想要去改進的動機。沒有痛苦,就不會真正地去思考,沒有真正的思考,就沒有真正的進步。在我現在的公司,程序員要干幾乎有的事,從需求分析,設計,編碼,集成,測試,部署,運維,OnCall,從頭到尾,因為:只有了解了測試的難度,你才明白怎麼寫出可測試的軟體,怎麼去做測試的自動化和測試系統。只有自己真正去運維自己的系統,你才知道怎麼在程序里寫日誌,做監控,做統計……只有自己去使用自己的系統,你才明白用戶的反饋,用戶的想法,和用戶的需求。所以,真正的工程師是能真正明白軟體開發不單單只是coding,還更要明白整個軟體工程。只明白或是只喜歡coding的,那隻是碼農,不能稱之為工程師。4)其它問題關於SDET。全稱是Software Development Engineer on Test。像微軟,Google, Amazon都有這樣的職位。但我不知道這樣的職位在微軟和Google的比例是多少,在Amazon是非常少的。那麼像這樣的懂開發的專職測試可以有 嗎?我的答案是可以有!但是,我在想,如果一個人懂開發,為什麼只讓其專職做測試呢?這樣的程序員分工合理嗎?把程序分成兩等公民有意義嗎?試問有多少懂開發的程序員願意只做測試開發呢?所以,SDET在實際的操作中,更多的還是對開發不熟的測試人員。還是哪句話,不懂開發的人是做不好測試的。如果你說Dev對測試不專業,不細心,不認真,那麼我們同樣也無法保證QA的專業,細心和認真。在Dev上可能出現的問題,在QA也也會一樣出現。而出了問題QA不會來加班解決,還是開發人員自己解決。所以,如果QA不用來解決問題,那麼,QA怎麼可能真正的細心和認真呢?如果你說不要QA的話,Dev人手會不夠。你這樣想一下,如果把你團隊中現有的QA全部變成Dev,然後,大家一起開發,一起測試,親密無間,溝通方便,你會不會覺得這樣會更有效?你有沒有發現,在重大問題上,Dev可以幫上QA的忙,但是QA幫不上Dev的忙。第三方中立,你會說人總是測不好自己寫的東西,因為有思維定式。沒錯,我同意。但是如果是Dev交叉測試呢?你可能會說開發人員會有開發人員的思維定式。那這只能說明開發人員還不成熟,他們還不合格。沒關系,只要吃自己的狗食,痛苦了,就會負責的。磨刀不誤砍柴功。如果你開發的東西自己在用,那麼自己就是自己天然的QA,如果有別的團隊也在用你開發的模塊,那麼,別的團隊也就很自然地在幫你做測試了,而且是最真實的測試。你可能會說吃狗食就是個笑話,因為如果是我,我把干爛的事,就離職走人了,讓別人去吃我的狗食。這個在現實中 的確會發生,也是很現實的。但是想一想,你為什麼在一開始讓他把事干爛了?另外,如果你的團隊在設計評審和代碼評審里沒有把好關,讓某人把事給干爛了,那 么這個人的離職帶來的問題還是這個團隊來扛,於是整個團隊都在吃自己的狗食,挺公平的。痛苦過一次,你的團隊下次怎麼幹了,就不敢亂招人了,就不敢隨意評 審代碼了,就不敢讓人只做一塊東西了。最終還是沒有逃脫吃狗食的范疇。關於系統集成測試。所謂集成測試,就是把多個開發團隊開發的模塊集中起來測試。因為開發人員可以無法看到全 局,不了解別個團隊的系統,所以需要有統管全局的專職的QA進行測試。對這個方面,我並不反對,在實際操作過程中,好像的確用專職的做集成測試的QA更有 效一些。不過,這還是不能讓我停止去思考兩個問題,1) 如果開發人員看不到全局,他能開發出更好的軟體嗎?2)這個全職的做集成測試的QA難道不能是各個團隊的骨幹Dev來組成嗎?關於自動化測試。所謂自動化的意思是,這是一個機械的重復勞動。我想讓測試人員思考一下,你是否在干這樣的事?如果你正在干這樣的事,那麼,你要思考一下你的價值了。但凡是重復性比較高的機械性的勞動,總有一天都會被機器取代的。關於線上測試。我們都知道,無論自己內測的怎麼樣,到了用戶那邊,總是會有一些測試不到的東西。所以,有些公 司會整出個UAT,用戶驗收測試。做產品的公司會叫Beta測試。無論怎麼樣,你總是要上生產線做真正測試的。對於互聯網企業來說,生產線上測試有的在玩 A/B測試,有的玩部分用戶測試,比如,新上線的功能只有10%的用戶可以訪問得到,這樣不會因為出問題讓全部用戶受到影響。做這種測試的人必然是開發人 員。好吧,我暫時寫這么多,我會視大家的討論再補充我的觀點的。—– update —–一些人覺得我是在泄私憤,我能夠理解為什麼我會被這樣誤解,但是沒有關系,很多新東西新觀點總是會被誤解的,我坦然面對。(全文完)
Ⅷ 什麼是QE,與QA區別是什麼
主要區別是,性質不同、從業資格不同、工作職責不同,具體如下:
一、性質不同
1、QE
QE,一般指質量工程師。
2、QA
QA,一般指測試工程師。
二、從業資格不同
1、QE
質量工程師是專門從事質量管理工作的人員,除了必須具有相應的質量管理知識和專業知識,相應的思想素質、智力素質和身體素質外,還應當具有必要的心理學知識和相應的心理素質。
2、QA
在企業中一般稱為軟體開發測試工程師(Software Development Engineer in Test,SDET)。一般為具有1-2年經驗的測試工程師或程序員。有良好經驗的測試工程師可以成長為產品/項目組的測試組長(SDETLead)或軟體質量經理(SQA Manager),負責軟體質量保證,進行測試管理和領導測試團隊。
三、工作職責不同
1、QE
①、進行產品質量、質量管理體系及系統可靠性設計、研究和控制。
②、組織實施質量監督檢查。
③、進行質量的檢查、檢驗、分析、鑒定、咨詢。
④、進行產品認證、生產許可證、體系認證、審核員和評審員注冊、質量檢驗機構和實驗室考核等合格評定管理。
⑤、調節質量糾紛,組織對重大質量事故調查分析。
⑥、研究開發檢驗技術、檢驗方法、檢驗儀器設備。
⑦、制定質量技術法規並監督實施。
⑧、設計、實施、改進、評價質量與可靠性信息系統。
2、QA
(1)、測試人員
①、編寫測試計劃、規劃詳細的測試方案、編寫測試用例。
②、根據測試計劃搭建和維護測試環境。
③、執行測試工作,提交測試報告。包括編寫用於測試的自動測試腳本,完整地記錄測試結果,編寫完整的測試報告等相關的技術文檔。
④、對測試中發現的問題進行詳細分析和准確定位,與開發人員討論缺陷解決方案。
⑤、提出對產品的進一步改進的建議,並評估改進方案是否合理,對測試結果進行總結與統計分析,對測試進行跟蹤,並提出反饋意見。
⑥、為業務部門提供相應技術支持,確保軟體質量指標。
(2)、測試組長
①、 對軟體質量負責。
②、 根據需求制定軟體質量指標。
③、強調一定吻合客戶要求的質量標准。
④、制定測試計劃。
⑤、 領導制定測試用例和測試環境。
⑥、對測試進行評估。
Ⅸ 軟體開發中的SD、SE、QA和RD是什麼意思
SD:軟體開發
SE;軟體開發工程師
QA;QA也就是英文QUALITY ASSURANCE 的簡稱,中文意思是品質保證。
RD:則是指Research and Development(研發)。
在測試過程中,經常遇到需要和RD、PM溝通的問題。
1、寫case時,對需求文檔內容存在疑問。
解決辦法:
1)先找之前參與需求評審的QA,詢問;
2)問開發該需求的RD:查看RD排期,是否已經,或即將開始開發,若RD未開始開發,很多時候,他們也不是很了解需求內容。
3)若影響case的編寫,可在企業微信上,直接問PM。若問題較多,可直接找PM當面詢問。
4)若不影響case的編寫,可在case里做標記,在case評審時拋出,請PM回答。
2、在開始測試的前一天,找RD確認是否能正常提測。有時RD反饋無法正常提測。
解決方法:
1)一定要確認影響提測的原因,如果當前自己排期內可消化,可在與其他RD溝通,並在自己排期內做調整。
2)一定要確認可以提測的時間點,如果是由於server端導致delay,是否可以讓端上RD給個入口,端上先mock數據先測。
3)若端上或server有delay,一定要告知直接領導。
4)delay有可能導致風險,一定要及時拋出,若需要報risk,一定告知RD,一定及時在Jira提risk。
5)若嚴重delay,且server或端沒有配合盡快解決,可邀請領導加入微信群,催促大家盡快完成;若問題非常嚴重,可邀請領導的領導加入微信群(謹慎邀請),催促大家盡快完成。
3、在測試過程中,遇到RD無法解決的bug,同時無法解決的bug數量不多。
解決辦法:
1)告知PM:bug詳情、RD反饋無法解決。
2)若PM表示不修改,則在Jira上對應的bug上備注並關閉bug(備注中要標明具體PM)。
3)若PM表示要修改,在企業微信上拉群:QA、RD、PM,在群里告知該問題,@RD和@PM,反饋實情,讓RD和PM商量,並給出最終結果。
4、在測試中,若遇到RD無法解決的bug,同時QA感覺該問題比較影響體驗,可告知PM且與PM達成一致後,拉微信群,@RD,反饋bug,讓RD修改。
5、若QA感覺需求設計有問題,可與RD達成一致後,與RD共同反饋給PM。
6、在測試中,遇到RD無法解決的bug,同時無法解決的bug數量較多。
解決辦法:
1)將問題一一統計,在企業微信上拉群:QA、RD、PM,在群里告一一拋出問題,@RD和@PM,反饋實情,讓RD和PM商量,並給出最終結果。
若遇到特殊情況:
1)很多bug,RD反饋無法解決,PM反饋要修改,但RD和PM僵持不下,沒有結果。
2)有的bug,QA感覺嚴重影響體驗,但RD反饋無法解決,PM反饋當前版本不修改。
3)當前需求無法解決問題太多,嚴重影響用戶體驗。
4)若嚴重delay,且server或端沒有配合盡快解決。
解決辦法:
1)告知直接領導當前情況。
2)發郵件:列表格,將各個bug一一記錄,加上RD的反饋,和PM決定當前版本是否修改,將表格添加到郵件中,在測試結束前,發郵件,郵件里@RD和@PM,使其在某個時間點前作出回復確認當前情況。郵件抄送給直接領導、QA全員。
3)如果問題很嚴重:嚴重影響用戶體驗,告知直接領導當前情況,找明明說明當前情況。
4)可邀請領導加入微信群,督促大家盡快處理當前問題;若問題非常嚴重,可邀請leader加入微信群,督促大家盡快處理當前問題。
7、在參加需求評審前,先閱讀一遍需求文檔,如果有疑問,需要記錄下來,可在wiki的需求文檔上直接對有疑問的地方備注提出問題,在參加需求評審時,直接提出,問PM。
若在需求評審上,有未確定的內容,在需求評審的checklist上,是否通過一欄,填寫:「未通過」,並備注未通過原因,以及未確定的內容。需求評審後繼續跟進,督促PM對會上未確定的內容作出解答,或開二次評審,需求上有更改、添加、刪除的內容,督促PM在wiki上做相應的更改。
8、在測試過程中,PM作出的需求更改、需求添加,都要及時督促PM更新到wiki文檔上。
9、向RD詢問bug引入原因的時候(尤其是以前沒有該bug,最近都沒有對該部分作出修改,但是測試中發現了該bug),有些RD不配合查找bug引入原因。
溝通方法:
Ⅹ 我是學軟體的,想轉作QA測試,誰了解這一行都需要做什麼
QA即QualityAssurance,它所關注的是對質量的測量及檢查,還有通過改進過程來提高軟體的質量,依次來指導軟體的發行。QA關注產品生命周期的管理以及驗證軟體是否滿足已定義的質量標准和用戶協議。QA不是要對軟體進行剖析以找出問題,而是要驗證軟體是否可能在一套給定的條件下工作。
1.安全測試
應用上線前的安全測試是必不可少的一個環節,需要對基礎的用戶名、密碼進行檢查,同時檢查是否存在安全漏洞。尤其是如果這個應用是高度機密的應用,更應該與網路專家和安全專家合作,在檢查過程中盡可能多地做好安全防控。
2.壓力測試
一個應用任何時候都應該經過最大負載的壓力測試,模擬這個應用在使用過程中需要提供什麼支持,這樣就可以驗證該應用是可以應對這個負載的。如果應用運行在互聯網上,壓力測試的邊界也應該從交易執行的地方擴展到全球的互聯網節點。有時候在不同地區的互聯網帶寬或者服務是有限的。當應用在壓力測試中出現故障的時候,可能意味著必須給這個應用分配更多的處理能力或者存儲空間——或者必須開放交替的互聯網通道以實現能夠支持特定地理區域所需的帶寬和服務水平。通過在壓力測試場景下與網路專家和應用開發者的配合,可以識別這些潛在的檢查點,這樣就可以在部署應用之前解決這些問題。麥塔軟體採用了最新的技術架構,創新的高並發大數據考試引擎設計,在大並發情況下性能穩定,降低客戶了運營維護的成本。
3.用戶測試
即使一個應用可以正常執行設計好的功能,但是如果用戶無法理解或者無法使用的話,這個應用基本上就沒什麼用處。這就意味著在應用測試中應該與最終用戶配合以確保該應用能夠方便用戶使用。如果不這么做,應用就不會被使用。
4.多界面部署
如果應用將要部署在多種終端上的話,該應用的用戶界面外觀和大小應該針對每種終端進行調整。在正式上線之前應該檢查這些不同界面在各種設備上的可使用性,並檢查載入時間等因素。
5.用戶支持
在部署應用之前,技術支持部門應該對用戶做一個系統的培訓,指導用戶如何安裝、使用該應用,同時對使用過程中出現的問題及時給予技術支持。