軟體QA的核心價值是什麼?

軟體QA的核心價值是什麼?

要回答這個問題之前首先要先討論幾個議題,

  • 1. 軟體 QA的核心價值與產出是什麼?
  • 2. 軟體QA的職務內容與組織的期望是什麼?
  • 3. 自己可以貢獻什麼?

QA核心價值

總歸 – “致力於提升軟體品質達到世界頂尖!”

軟體品質的面向很多,客戶對於每個品牌的品質都有一定的觀感。

這樣的”觀感”很難量化,也會形成企業的一種無形商譽。

不管公司組織有沒有 “QA”這個職務或是其它職稱,QA的工作是一定存在的。

每個軟體開發流程都會有一定的品管流程,”致力於提升軟體品質達到世界頂尖!”

軟體QA的產出

RD 寫程式會產生程式碼。那QA呢? QA的產出可以大致分為下列三大類。

原則上 QA 還是需要經過一定的嚴謹流程與文件產出。

迷思1: 都在我大腦中

如果 Test plan, Test Design 甚至 Test Execution 都在”大腦中”沒有任何文件,

即使”軟體品質達到世界頂尖”,這樣的軟體品管的執行也比較難制度化。

換句話說,這樣的 QA也會容易被質疑沒有盡到QA工作的基本本分。

迷思2: 我都在執行自動化測試沒有時間寫這些?

自動化測試確實需要時間。也與這些自動化測試流程工作會有一定程度的差異。

瞭解組織或是老闆對於這個職務的產出是很重要的。

筆者認為有些還是屬於QA核心的工作範圍不會因為負責自動化測試而消逝。

例如測試的環境、測試計畫與情境等。這些不會因為花時間在自動化測試而消失。

 

迷思3:”軟體QA” 等於測試作業員嗎?

一般人對於QA的印象停留在生產線作業員重複性的驗證工作。或是只負責找出哪裡有問題。

如果 QA 只能做重複性的驗證工作,那麼這樣的 QA 是很容易被電腦或是一般勞動者取代。

那麼怎樣的 QA 是比較有價值的呢? 筆者舉兩個例子:

  • 軟體環境:QA 因為整合性的測試,因此對於各種平台的相容性與差異有更深入的了解。這也是QA的專業價值。
  • 錯誤分析:平庸的 QA 只回報問題。優秀的QA除了指出問題的癥結,還分析前因後果與改善方案。

迷思4:軟體QA 不需要懂程式?

我們看一個台灣求職網的軟體測試工程師職務,百萬年薪.

“軟體測試”其實與生產線驗證測試人員有很大的差異。

Selenium Jobs

讓我們看看職務內容為何

Role/Responsibilities
• Work with developers, project managers, and customers to define tests for new features

筆者:與客戶、專案經理討論定義”需求”。軟體測試不僅僅是最終軟體品質驗證,更重要的是在前端客戶”需求”的定義。
• Work with overseas contractors to conduct regression test
• Maintain regression test suite by adding new tests and re-writing existing tests based on user feedback
• Test our software, write defect reports and track issues
• Conduct in-house group tests in Taipei office
• Constantly look to improve quality across the development lifecycle

筆者:不斷的在軟體流程中改善軟體品質
• Create, maintain, and perform automation tests using Selenium (http://seleniumhq.org/)

筆者:”Selenium”這是筆者認為所有的軟體QA一定要會的必備專業技能。Selenium幾乎是世界共通的語言。

筆者:網站自動化測試的專業領域,一定會提到或是使用 Selenium。
• Create, maintain, and perform API tests using SoapUI (http://www.soapui.org/)

筆者:SoapUI 是另外一種針對 Http Request/Response的測試方式。
• Create, maintain, and perform performance/load tests using LoadUI (http://www.loadui.org/)

筆者:LoadUI主要重要網站的效能測試。筆者更推薦 Jmeter。不管是使用 LoadUI or Jmeter or HP LoadRunner,

筆者:效能測試的方法與相關工具的使用也是QA必備。

Required Qualifications
• Excellent written and verbal English skills
• Passion for software quality
• Experience in software testing preferred
• Analytical, organized, and curious
• Automation testing experience preferred
• Load testing experience preferred
• API (RESTful) testing experience preferred
• 3+ years of working experience in software industry

看到這裡,您還是會覺得 QA只是執行重複性驗證的測試員嗎?

還是敬佩QA的工作與專業其實比RD還要廣泛?

 

大陸求職網”測試專家” or “測試架構師” “測試開發”

下列的數字是人民幣! 也就是年薪台幣 200~350萬

要達到”牛人”的軟體QA專業的境界,需要具備哪些專業技能呢?

QA million jobs

 

1.根据业务需求可独立开发测试工具,并能引领团队测试技术的发展;
2.自动化测试开展和推动, 包括制定产品线自动化测试设计方案和自动化测试工具、框架的开发
3.进行和开展测试团队的技术培训和支持,解决测试过程中的复杂技术问题
4.参与产品需求和架构设计评审,保证产品的可测试性
5.通过测试相关流程、策略、方法和工具等创新,努力提升测试的质量和效率。

任职条件:
1.计算机或相关专业,具有5年以上软件测试开发或开发经验;
2.熟悉软件工程、软件测试理论和方法,熟知相关测试流程和规范;
3.熟练掌握linux操作系统,熟悉shell编程,有CDN及相关经验者优先考虑;
4.掌握以下任意一种程序设计语言:Java、Python、Ruby、JavaScript、PHP(懂Python者优先考虑)
5.熟悉流行的开源测试工具和框架;具备二次开发能力
6.精通性能测试,编写过性能测试脚本或在性能测试工具上做过二次开发,并能在性能优化上给出有效的改进建议
7.对新技术感兴趣,有钻研和开拓精神;
8.具备很强的逻辑思维能力,有较好的分析解决问题能力、学习能力、抗压能力、沟通能力和团队协作能力;
职责:
1.位置网移动应用的测试;
2.位置网移动端SDK的测试
要求:
1.本科以上学历,计算机软件、通信、信息安全,电子及相关专业;
2.擅长接口测试用例设计,掌握用例设计的技巧 ;
3.熟练使用linux常用命令,熟悉http协议、MQTT协议,熟练协议封装的优先;
4.熟练使用java或C++编程,做过基于HTTP协议或者java本地调用接口测试
5.了解Android框架(或IOS框架)、测试工具、adb命令;
6.学习能力强,有较强分析和解决问题的能力,工作积极主动,有责任心,能跨团队合作; 能独立承担多模块测试规划和管理;
7.熟悉移动SDK中间件的功能,性能,稳定性,能耗测试等优先;
8.必须要有自动化测试性能压力测试经验

迷思5: 軟體測試可以不寫程式嗎?

可以的。但是筆者相信未來專業的發展可能會受到一定的限制。

雖然 QA的工作不是專職 Developer ,但是有些如果會 coding 能力,

可以對於測試工具與框架進行開發,開發測試工具讓測試更有效率與效果,

開發自動化測試,評審程式的可測試性等,這些都會是加分。

迷思6: 軟體測試可以是百萬年薪的工作嗎?

答案是肯定的。也有一定的市場需求。就看您怎麼充實自己的專業。

Leave a Reply

Your email address will not be published. Required fields are marked *