Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Software Testing

Proko Chou
January 31, 2018

Software Testing

Introduce what is software testing, test methodology, QA's career path, good QA's practice and how to improve on our own.

Proko Chou

January 31, 2018
Tweet

More Decks by Proko Chou

Other Decks in Technology

Transcript

  1. Agenda 1. QA vs. QC vs. SDET (SET) 2. Test

    Methodologies 3. Software Testing Models 4. Testing Type and Life Cycle 5. How to create test plan? 6. How to create test case? 7. Good QA Practice 8. Reference
  2. QA vs. QC vs. SDET Quality Assurance (QA): Focus on

    quality from developing to release: 主要注重於開發流程品質管理與監控 關鍵字:預防錯誤, 開發建議導向 Quality Control (QC): Focus on quality before product release: 主要注重於通過率,正確率 關鍵字:正確率, 量化測試, 功能性導向 Software Development Engineer in Test (SDET): Development of the Test Infrastructure which will be used to execute the test cases for a feature / product.
  3. Agenda 1. QA vs. QC vs. SDET 2. Test Methodologies

    3. Software Testing Models 4. Testing Type and Life Cycle 5. How to create test plan? 6. How to create test case? 7. Good QA Practice
  4. Software Testing Models (cont.) • 瀑布式模型 (Waterfall Mode) • 漸進式模型

    (Incremental Mode) • V 型 (V Shape Mode) • 原型快速開發 (Rapid Prototype Mode) • 敏捷型 (Agile Mode) • ...
  5. Software Testing Models (cont.) • 瀑布式模型 (Waterfall Mode) • 漸進式模型

    (Incremental Mode) • V 型 (V Shape Mode) • 原型快速開發 (Rapid Prototype Mode) • 敏捷型 (Agile Mode) • ...
  6. Agenda 1. QA vs. QC vs. SDET 2. Test Methodologies

    3. Software Testing Models 4. Testing Type and Testing Life Cycle 5. How to create test plan? 6. How to create test case? 7. Good QA Practice
  7. Testing Levels: Unit Test (cont.) • Tests each module individually

    • Follows a white box testing (Logic of the program) • Done by developers
  8. Browser Unit Test Plan: 1. Caniuse http://tests.caniuse.com/ 2. ECMAScript 5

    compatibility table (以JavaScript 5為主) http://kangax.github.io/compat-table https://github.com/kangax/compat-table 3. Rambutan https://dev-tpe.cloudmosa.com/~pingyen/rambutan/
  9. Testing Levels: Testing Life Cycle Project Initiation System Study Test

    Plan Design Test cases Execute Test Cases (manual/ automated) Report Defects Analysis Regression Test Summary Reports 1
  10. Testing Levels: Testing Life Cycle Project Initiation System Study Test

    Plan Design Test cases Execute Test Cases (manual/ automated) Report Defects Analysis Regression Test Summary Reports 2
  11. Testing Levels: Testing Life Cycle Project Initiation System Study Test

    Plan Design Test cases Execute Test Cases (manual/ automated) Report Defects Analysis Regression Test Summary Reports 3
  12. Testing Levels: Testing Life Cycle Project Initiation System Study Test

    Plan Design Test cases Execute Test Cases (manual/ automated) Report Defects Analysis Regression Test Summary Reports 4
  13. Testing Levels: Testing Life Cycle Project Initiation System Study Test

    Plan Design Test cases Execute Test Cases (manual/ automated) Report Defects Analysis Regression Test Summary Reports 5
  14. Testing Levels: Testing Life Cycle Project Initiation System Study Test

    Plan Design Test cases Execute Test Cases (manual/ automated) Report Defects Analysis Regression Test Summary Reports 6
  15. Testing Levels: Testing Life Cycle Project Initiation System Study Test

    Plan Design Test cases Execute Test Cases (manual/ automated) Report Defects Analysis Regression Test Summary Reports 7
  16. Testing Levels: Testing Life Cycle Project Initiation System Study Test

    Plan Design Test cases Execute Test Cases (manual/ automated) Report Defects Analysis Regression Test Summary Reports 8
  17. Testing Levels: Testing Life Cycle Project Initiation System Study Test

    Plan Design Test cases Execute Test Cases (manual/ automated) Report Defects Analysis Regression Test Summary Reports 9
  18. Testing Levels: Testing Life Cycle Project Initiation System Study Test

    Plan Design Test cases Execute Test Cases (manual/ automated) Report Defects Analysis Regression Test Summary Reports
  19. Basic Function • 使用者介面 (UI / Multi-Language / IME Check)

    • 邊界 (Boundary) • 記憶體釋放 (Memory leakage) • 錯誤處理 (Error Handling) • 安裝(Install) 、反安裝 (Uninstall) • 使用者資料保存 (Data Migration) • 重啟 (After relaunching) • 清除App資料 (After clearing application’s data) • 清除整台機器的資料 (After resetting the device)
  20. Basic Function • 使用者介面 (UI / Multi-Language / IME Check)

    • 邊界 (Boundary) • 記憶體釋放 (Memory leakage) • 錯誤處理 (Error Handling) • 重啟 (After relaunching) • 使用者資料保存 (Data Migration) • 取消該功能的使用 (Stop feature function) • 安裝(Install) 、反安裝 (Uninstall) • 清除App資料 (After clearing application’s data) • 清除整台機器的資料 (After resetting the device)
  21. Integration: Internet (1/2) Airplane Mode VPN Under connecting or loading

    No Connection (Use Metallic box) Connect via proxy Weak signal (Use Elevator) Normal Connection Data Connection
  22. Integration: Internet (2/2) Emulate network connectivity: • Facebook Augmented Traffic

    Control, ATC: Reference: Link 1, Link 2 • iOS Developer Network Link Conditioner: Reference: Link Facebook ATC iOS Developer Tool
  23. Integration: Keyboard • Android: Google, Samsung, Asus, bluetooth keyboard, pen,

    voice input, etc. • iOS: iAcess, voice input and split keyboard (Link) iOS: Split keyboard Bluetooth keyboard Pen
  24. Integration: Other Apps’ functions ◦ Other applications: ▪ Incoming phone

    call ▪ Alarm ▪ Voice assistant (e.g., Siri) ▪ Album ▪ Camera ◦ Device: ▪ Power off/ Resume device ▪ Support split screen function ▪ Support 3D touch function
  25. Stability/ Stress Test • Keep using over X times •

    Keep using over X hours • Keep relaunching Puffin X times
  26. Practices • The quality of issue • Create test plan

    • Create test data • Create test case • Create more values
  27. The Quality of Issue Definition: QA project owner, RD engineers

    or PM can understand the issues quickly without any further discussion. 1. Clear Summary 2. Clear steps 3. Version 4. Attachment: Video, image or the logs. 5. Spelling
  28. Create Test Plan • New Feature • Basic Function Test

    (Level 1) • Full Test (Level 2, Level 3) • Regression Test • Explore test
  29. Values 1. Make sure no major defects in product 2.

    Provide good service for RD engineers and end users. 3. Figure out what users want and why they want it 4. Figure out the problem which users complain 5. Domain Knowledge 6. Automation Testing Tools Knowledge 7. Certifications – QAI, ASQ, ISQTB
  30. Reference 網站: 1. http://www.softwaretestinghelp.com/ 2. https://testerhome.com/ 3. LinkedIn: Search QA

    and join group 測試相關書籍: 1. 大話測試 1 &2 2. Google 軟體測試之道 3. 約耳趣談軟體 社群:搜尋「Test Corner」in Facebook 課程:http://www.csq.org.tw/ct.asp?xItem=435&ctNode=30