Hello World Dev Conference
      • Sharing URL Link copied
      • /edit
      • View mode
        • Edit mode
        • View mode
        • Book mode
        • Slide mode
        Edit mode View mode Book mode Slide mode
      • Customize slides
      • Note Permission
      • Read
        • Owners
        • Signed-in users
        • Everyone
        Owners Signed-in users Everyone
      • Write
        • Owners
        • Signed-in users
        • Everyone
        Owners Signed-in users Everyone
      • Engagement control Commenting, Suggest edit, Emoji Reply
    • Invite by email
      Invitee

      This note has no invitees

    • Publish Note

      Share your work with the world Congratulations! 🎉 Your note is out in the world Publish Note

      Your note will be visible on your profile and discoverable by anyone.
      Your note is now live.
      This note is visible on your profile and discoverable online.
      Everyone on the web can find and read all notes of this public team.
      See published notes
      Unpublish note
      Please check the box to agree to the Community Guidelines.
      View profile
    • Commenting
      Permission
      Disabled Forbidden Owners Signed-in users Everyone
    • Enable
    • Permission
      • Forbidden
      • Owners
      • Signed-in users
      • Everyone
    • Suggest edit
      Permission
      Disabled Forbidden Owners Signed-in users Everyone
    • Enable
    • Permission
      • Forbidden
      • Owners
      • Signed-in users
    • Emoji Reply
    • Enable
    • Versions and GitHub Sync
    • Note settings
    • Note Insights New
    • Engagement control
    • Make a copy
    • Transfer ownership
    • Delete this note
    • Insert from template
    • Import from
      • Dropbox
      • Google Drive
      • Gist
      • Clipboard
    • Export to
      • Dropbox
      • Google Drive
      • Gist
    • Download
      • Markdown
      • HTML
      • Raw HTML
Menu Note settings Note Insights Versions and GitHub Sync Sharing URL Help
Menu
Options
Engagement control Make a copy Transfer ownership Delete this note
Import from
Dropbox Google Drive Gist Clipboard
Export to
Dropbox Google Drive Gist
Download
Markdown HTML Raw HTML
Back
Sharing URL Link copied
/edit
View mode
  • Edit mode
  • View mode
  • Book mode
  • Slide mode
Edit mode View mode Book mode Slide mode
Customize slides
Note Permission
Read
Owners
  • Owners
  • Signed-in users
  • Everyone
Owners Signed-in users Everyone
Write
Owners
  • Owners
  • Signed-in users
  • Everyone
Owners Signed-in users Everyone
Engagement control Commenting, Suggest edit, Emoji Reply
  • Invite by email
    Invitee

    This note has no invitees

  • Publish Note

    Share your work with the world Congratulations! 🎉 Your note is out in the world Publish Note

    Your note will be visible on your profile and discoverable by anyone.
    Your note is now live.
    This note is visible on your profile and discoverable online.
    Everyone on the web can find and read all notes of this public team.
    See published notes
    Unpublish note
    Please check the box to agree to the Community Guidelines.
    View profile
    Engagement control
    Commenting
    Permission
    Disabled Forbidden Owners Signed-in users Everyone
    Enable
    Permission
    • Forbidden
    • Owners
    • Signed-in users
    • Everyone
    Suggest edit
    Permission
    Disabled Forbidden Owners Signed-in users Everyone
    Enable
    Permission
    • Forbidden
    • Owners
    • Signed-in users
    Emoji Reply
    Enable
    Import from Dropbox Google Drive Gist Clipboard
       Owned this note    Owned this note      
    Published Linked with GitHub
    • Any changes
      Be notified of any changes
    • Mention me
      Be notified of mention me
    • Unsubscribe
    --- GA: UA-34467841-15 --- # 全集中軟體測試:新手必懂的 SDLC 與測試愛恨糾葛 - 葉承宇 ( 丁丁) ###### tags: `HelloWorld2025` `HWDC2025` `2025` `605+606 會議室` `SDLC相關議題` <blockquote> 親愛的軟體開發夥伴們,您是否曾好奇,軟體從無到有,除了程式碼,還有哪些環節確保它穩定又好用?軟體測試,絕非只是等到產品完成才開始的「找 bug」工作!它更像一位默默守護品質的超級英雄,貫穿整個軟體開發生命週期 (SDLC) 的每個階段 。 這不僅僅是一場理論的分享,我們將透過生動的案例與您互動,讓您理解測試的真實價值。無論您是想轉職軟體測試、或是與開發團隊能更好地協作,或是單純對軟體開發流程感到好奇,這堂分享都將為您打開一扇全新的大門! 本次分享內容包含: SDLC 是什麼? 了解軟體從誕生到維護的完整旅程,以及常見的開發模型(如瀑布式、V 模型、敏捷式)如何影響測試節奏 。 「全集中」測試在 SDLC 中扮演什麼角色? 從需求分析到系統維護,測試無處不在,並為品質把關 。我們將探討「為什麼測試是必要的」 。 各種測試活動大解密! 靜態測試、動態測試、單元測試、系統測試... 我們將介紹測試規劃、分析、設計、實施、執行和完成等階段 。 為何要「左移測試」? 提早發現問題,就像及早治療,能省下大筆金錢和時間 。 如何成為 SDLC 中的「全集中」測試小能手? 建立測試思維,與開發團隊協作,共同打造高品質軟體 。我們將探討測試人員的關鍵技能,例如細心謹慎、溝通能力及技術知識 。 聽眾收穫: 透過本次分享,參與者將能夠: 基礎知識: 理解軟體開發生命週期 (SDLC) 的基本概念,以及循序開發、迭代開發、增量開發等常見模型的特點與差異 。 角色認知: 清楚了解測試活動如何在 SDLC 的不同階段(從需求到維護)中發揮關鍵作用,並理解測試活動範疇、時機、文件、技術、人員角色如何受 SDLC 模型影響 。 核心概念: 掌握測試的基本概念,包括測試目標、測試與除錯的區別、以及七個測試原則的重要性 。 實務應用: 理解靜態測試的價值(如早期發現缺陷、降低成本)及其與動態測試的互補關係 。 思維建立: 認識「測試左移」策略,理解為何提早測試能有效節省時間與成本 。 溝通協作: 體會團隊溝通與協作在軟體品質中的重要性,並了解測試人員如何與開發人員及其他利害關係人共同努力 。 </blockquote> {%hackmd @HWDC/announcement-2025 %} ## 會議資訊 **時間:** 16:05 ~ 16:35 **地點:** 605+606 會議室 **日期:** 2025年10月14日 **語言:** 中文 **難度:** 通識 **相關連結:** - [Hello World Dev Conference 2025 官方網站](https://hwdc.ithome.com.tw/2025) [target=_blank] - [Hello World 2025 議程表](https://hwdc.ithome.com.tw/2025/agenda) [target=_blank] ## 筆記區 > 請從這裡開始記錄你的筆記 ## 討論區 > 歡迎在此進行討論與 Q&A 現實重大災難案例: 南山人壽 - 「境界成就」核心系統 **測試不是可有可無的成本,測試的價值在於預防災難/維護信任/保障公司持續發展** ### SDLC (Software Development Life Cycle) - Waterfall (V model: 循序開發) ![image](https://hackmd.io/_uploads/rk_AwKo6lx.png) - 如何確定測試完成 => 產出具有公信力的測試報告,且被認可已經完成測試 - Agile (Test in each iteration) - Test Level (top-down) - Component/Unit Test 單元測試 - 整合測試 - 系統測試 - 驗收測試 ### 測試的基石: ISTQB 核心觀念 Testing: 三大面向: **發現缺陷、建立信心、預防缺陷並提供決策資訊** 品質保證的手段 最終產出報告與數,決定產品能不能上線。 ### 測試的七大原則 - 測試顯示缺陷存在,而非不存在 - 窮盡測試不可能 - 情境組合是無窮的,根據風險與重點,挑選最有價值的測試案例 - 早期測試 - 越早開始測試,越能及早發現與修正問題 - 缺陷叢集效應 - 大多數缺陷會集群分布方式 - 殺蟲劑謬論 - 持續更新測試方法 - 測試依賴於情境 - 不同的系統專案有不同的特性,要依照不同特性進行測試 - 錯誤謬論 - 沒有發現,不代表沒有問題 ### 測試流程 - 測試規劃 - 分析與設計 - 實施 - 執行 - 評估與報告 ### 測試左移 核心概念就是盡早開始進行測試 - 早期測試 - 越早開始測試,修正成本越低 - 導入靜態測試 - 需求審查 - 設計審查 - 程式碼審查 ## 相關資源 - 投影片連結:[全集中軟體測試:新手必懂的 SDLC 與測試愛恨糾葛](https://1drv.ms/b/c/02bd08eb5ba373a7/ET3eIXNTMPNIsP-W5zl7hTIBSk5DIT7GLQHrO4IIWI16Ew?e=qXr6Zb) - 相關文件:(待更新)

    Import from clipboard

    Paste your markdown or webpage here...

    Advanced permission required

    Your current role can only read. Ask the system administrator to acquire write and comment permission.

    This team is disabled

    Sorry, this team is disabled. You can't edit this note.

    This note is locked

    Sorry, only owner can edit this note.

    Reach the limit

    Sorry, you've reached the max length this note can be.
    Please reduce the content or divide it to more notes, thank you!

    Import from Gist

    Import from Snippet

    or

    Export to Snippet

    Are you sure?

    Do you really want to delete this note?
    All users will lose their connection.

    Create a note from template

    Create a note from template

    Oops...
    This template has been removed or transferred.
    Upgrade
    All
    • All
    • Team
    No template.

    Create a template

    Upgrade

    Delete template

    Do you really want to delete this template?
    Turn this template into a regular note and keep its content, versions, and comments.

    This page need refresh

    You have an incompatible client version.
    Refresh to update.
    New version available!
    See releases notes here
    Refresh to enjoy new features.
    Your user state has changed.
    Refresh to load new user state.

    Sign in

    Forgot password

    or

    By clicking below, you agree to our terms of service.

    Sign in via Facebook Sign in via Twitter Sign in via GitHub Sign in via Dropbox Sign in with Wallet
    Wallet ( )
    Connect another wallet

    New to HackMD? Sign up

    Help

    • English
    • 中文
    • Français
    • Deutsch
    • 日本語
    • Español
    • Català
    • Ελληνικά
    • Português
    • italiano
    • Türkçe
    • Русский
    • Nederlands
    • hrvatski jezik
    • język polski
    • Українська
    • हिन्दी
    • svenska
    • Esperanto
    • dansk

    Documents

    Help & Tutorial

    How to use Book mode

    Slide Example

    API Docs

    Edit in VSCode

    Install browser extension

    Contacts

    Feedback

    Discord

    Send us email

    Resources

    Releases

    Pricing

    Blog

    Policy

    Terms

    Privacy

    Cheatsheet

    Syntax Example Reference
    # Header Header 基本排版
    - Unordered List
    • Unordered List
    1. Ordered List
    1. Ordered List
    - [ ] Todo List
    • Todo List
    > Blockquote
    Blockquote
    **Bold font** Bold font
    *Italics font* Italics font
    ~~Strikethrough~~ Strikethrough
    19^th^ 19th
    H~2~O H2O
    ++Inserted text++ Inserted text
    ==Marked text== Marked text
    [link text](https:// "title") Link
    ![image alt](https:// "title") Image
    `Code` Code 在筆記中貼入程式碼
    ```javascript
    var i = 0;
    ```
    var i = 0;
    :smile: :smile: Emoji list
    {%youtube youtube_id %} Externals
    $L^aT_eX$ LaTeX
    :::info
    This is a alert area.
    :::

    This is a alert area.

    Versions and GitHub Sync
    Get Full History Access

    • Edit version name
    • Delete

    revision author avatar     named on  

    More Less

    Note content is identical to the latest version.
    Compare
      Choose a version
      No search result
      Version not found
    Sign in to link this note to GitHub
    Learn more
    This note is not linked with GitHub
     

    Feedback

    Submission failed, please try again

    Thanks for your support.

    On a scale of 0-10, how likely is it that you would recommend HackMD to your friends, family or business associates?

    Please give us some advice and help us improve HackMD.

     

    Thanks for your feedback

    Remove version name

    Do you want to remove this version name and description?

    Transfer ownership

    Transfer to
      Warning: is a public team. If you transfer note to this team, everyone on the web can find and read this note.

        Link with GitHub

        Please authorize HackMD on GitHub
        • Please sign in to GitHub and install the HackMD app on your GitHub repo.
        • HackMD links with GitHub through a GitHub App. You can choose which repo to install our App.
        Learn more  Sign in to GitHub

        Push the note to GitHub Push to GitHub Pull a file from GitHub

          Authorize again
         

        Choose which file to push to

        Select repo
        Refresh Authorize more repos
        Select branch
        Select file
        Select branch
        Choose version(s) to push
        • Save a new version and push
        • Choose from existing versions
        Include title and tags
        Available push count

        Pull from GitHub

         
        File from GitHub
        File from HackMD

        GitHub Link Settings

        File linked

        Linked by
        File path
        Last synced branch
        Available push count

        Danger Zone

        Unlink
        You will no longer receive notification when GitHub file changes after unlink.

        Syncing

        Push failed

        Push successfully