1、軟件公司的人員構成:前端
1.互聯網企業:面試
互聯網企業的技術開發部主要包括產品部、開發部、測試部、運維部等,而在這之中,有着不一樣的職位角色,主要責任包括:安全
架構師:服務器
一般須要多年的經驗,可以設計系統架構,並保證架構的穩定性、可擴展性、性能等多項指標的可用性與優越性。網絡
產品部:前端工程師
互聯網公司的產品部一般來講提供產品需求,部分產品人員對接公司的實施工程師,及時反饋客戶要求,提供完善產品的需求。架構
前端工程師:運維
與設計師和產品聯繫很是緊密,確保前端的可用性與易用性。性能
開發工程師:單元測試
實現功能開發,讓功能可用、易用。
測試工程師:通常來說,測試工程師更有可能成爲架構師。
無論一家公司的規模多大,測試的工做都必須有人來幹,在規模中等及以上的公司裏,會有專門的測試工程師,他們就是專門從事開發完成後的測試工做。
運維工程師:
確保後臺不出問題,確保服務器,網絡出現了問題可以及時修復。
2.軟件開發公司
軟件開發公司與互聯網企業相似,除去上述的幾個基本部門外,軟件開發公司通常會有業務部,專門來進行市場開發,從而接到更多的項目進行開發。
3.軟件外包公司:
軟件外包公司分爲兩種,一種是兼具軟件開發和軟件人才外包的公司,這種的公司的部門組成和軟件開發公司相同,可是公司的人事部會與合做的公司進行對接,進行相關的人才資源共享;
而另一種是專門進行人力外包的公司,這類公司一般內部設計部門,只須要挑選合適合做公司的人才進行狀況瞭解和基本面試便可。
2、XX公司的運做流程(華爲)
1.採集用戶需求(產品經理+軟件實施工程師)
2.編寫基礎版需求文檔(產品經理/產品經理助理)
3.需求文檔評審(產品經理+開發經理+測試經理+(客戶))
4.溝通需求方,完成需求文檔的修改(產品經理+客戶)
5.下發需求文檔至開發經理和測試經理
6.開發經理出具開發板需求文檔,測試經理出具測試版需求文檔
3、開發部門的運做流程:
1.需求文檔部門內部評審
2.下發開發任務(開發經理)
3.開發人員進行編碼工做
4.開發人員本地環境下代碼自測
5.自測完成後合併代碼至公司源碼庫
6.源代碼打包部署至開發和測試環境
7.知會測試人員進行測試(showcase)
8.根據測試反饋進行bug解決
9.配合運維人員打包上線
4、測試部門的運做流程:
1.需求文檔部門內部評審
2.下發測試任務(測試經理),測試計劃及測試方案的制定。
3.測試人員根據需求模塊分配進行測試用例的輸出
4.測試用例評審
5.測試人員完成測試用例的修改,等待開發通知測試工做的開始
6.執行測試用例,提交bug
7.跟蹤bug進行bug的迴歸
8.打包上線後進行迴歸測試(alpha測試)
5、軟件測試的基本方法(測試的分類):
1.按測試階段劃分:
單元測試、集成測試、系統測試、驗收測試(正式驗收測試,Alpha測試,Beta測試)
2.按測試技術劃分:
白盒測試、黑盒測試、灰盒測試
3.被測試對象是否運行劃分:
動態測試、靜態測試(文檔檢查、代碼走查、界面檢查)
4.按不一樣的測試手段劃分:
手工測試、自動化測試
5.按測試包含的內容劃分:
功能測試、界面測試、安全測試、兼容性測試、易用性測試、性能測試、壓力測試、負載測試、恢復測試
6.其餘測試
冒煙測試、迴歸測試、探索性測試(測試思惟)