1.1 What is Testing ( Kiểm thử là gì)
Hệ thống phần mềm là một phần không thể thiếu trong cuộc sống, từ các ứng dụng kinh doanh (ngân hàng) đến người tiêu dùng sản phẩm (ô tô) và hầu hết mọi người đã có trải nghiệm với phần mềm không hoạt động như mong đợi. Phần mềm hoạt động không chính xác có thể dẫn đến nhiều vấn đề như: tổn thất tiền bạc, thời gian, danh tiếng kinh doanh và thậm chí thương tật hay tử vong. Để khắc phục điều đó, Kiểm thử phần mềm đã ra đời đó là một cách để đánh giá chất lượng của phần mềm, cũng là để giảm nguy cơ lỗi phần mềm khi vận hành.
Kiểm thử phần mềm là một quá trình bao gồm nhiều hoạt động khác nhau như: lập kế hoạch kiểm tra, phân tích, thiết kế, thực hiện kiểm tra, báo cáo tiến trình và kết quả thử nghiệm, đồng thời đánh giá chất lượng của đối tượng thử nghiệm.
Kiểm thử bao gồm kiểm thử động và tĩnh (dynamic testing & static testing)
1.1.1 What is Testing
Đối với bất kỳ kiểm thử nào thì cũng bao gồm các mục tiêu sau:
- Đánh giá sản phẩm như requirement, user stories, design và code
- Xác minh xem tất cả các yêu cầu đã được thực hiện đầy đủ hay chưa
- Kiểm tra xem đối tượng thử nghiệm có hoàn chỉnh hay không và xác nhận xem nó có hoạt động như người dùng và các bên liên quan mong đợi
- Để xây dựng sự tự tin về mức độ chất lượng của đối tượng test
- Tìm ra các failures và lỗi để giảm mức độ rủi ro về sự không đầy đủ của chất lượng phầm mềm
- Cung cấp đầy đủ thông tin cho các bên liên quan để cho phép họ đưa ra các quyết định sáng suốt đặc biệt là về mức độ chất lượng của đối tượng test
- Tuân thủ các yêu cầu hoặc tiêu chuẩn theo hợp đồng, pháp lý hoặc quy định và / hoặc để xác minh
Các mục tiêu của thử nghiệm có thể khác nhau, tùy thuộc vào bối cảnh của thành phần hoặc hệ thống đang được thử nghiệm,mức độ thử nghiệm và mô hình vòng đời phát triển phần mềm.
1.1.2 Testing & Debugging
Testing | Debugging |
Là hoạt động tìm kiếm lỗi xảy ra trong phần mềm | Debug là hoạt động nhằm tìm kiếm, phân tích và sửa chữa lỗi đó |
Nội Dung Đề Cương Syllabus ISTQB® 4.0 (2023)
Xem nội dung istqb online
- Fundamentals of Testing – 180 minutes1.1. What is Testing?1.1.1. Test Objectives1.1.2. Testing and Debugging1.2. Why is Testing Necessary?1.2.1. Testing’s Contributions to Success1.2.2. Testing and Quality Assurance (QA)1.2.3. Errors, Defects, Failures, and Root Causes1.3. Testing Principles1.4. Test Activities, Testware and Test Roles1.4.1. Test Activities and Tasks1.4.2. Test Process in Context1.4.3. Testware1.4.4. Traceability between the Test Basis and Testware1.4.5. Roles in Testing1.5. Essential Skills and Good Practices in Testing1.5.1. Generic Skills Required for Testing1.5.2. Whole Team Approach1.5.3. Independence of Testing
- Testing Throughout the Software Development Lifecycle – 130 minutes2.1. Testing in the Context of a Software Development Lifecycle2.1.1. Impact of the Software Development Lifecycle on Testing2.1.2. Software Development Lifecycle and Good Testing Practices2.1.3. Testing as a Driver for Software Development2.1.4. DevOps and Testing2.1.5. Shift-Left Approach2.1.6. Retrospectives and Process Improvement2.2. Test Levels and Test Types2.2.1. Test Levels2.2.2. Test Types2.2.3. Confirmation Testing and Regression Testing2.3. Maintenance Testing
- Static Testing – 80 minutes3.1. Static Testing Basics3.1.1. Work Products Examinable by Static Testing3.1.2. Value of Static Testing3.1.3. Differences between Static Testing and Dynamic Testing3.2. Feedback and Review Process3.2.1. Benefits of Early and Frequent Stakeholder Feedback3.2.2. Review Process Activities3.2.3. Roles and Responsibilities in Reviews3.2.4. Review Types3.2.5. Success Factors for Reviews
- Test Analysis and Design – 390 minutes4.1. Test Techniques Overview4.2. Black-Box Test Techniques4.2.1. Equivalence Partitioning4.2.2. Boundary Value Analysis4.2.3. Decision Table Testing4.2.4. State Transition Testing4.3. White-Box Test Techniques4.3.1. Statement Testing and Statement Coverage4.3.2. Branch Testing and Branch Coverage4.3.3. The Value of White-box Testing4.4. Experience-based Test Techniques4.4.1. Error Guessing4.4.2. Exploratory Testing4.4.3. Checklist-Based Testing4.5. Collaboration-based Test Approaches4.5.1. Collaborative User Story Writing4.5.2. Acceptance Criteria4.5.3. Acceptance Test-driven Development (ATDD)
- Managing the Test Activities – 335 minutes5.1. Test Planning5.1.1. Purpose and Content of a Test Plan5.1.2. Tester’s Contribution to Iteration and Release Planning5.1.3. Entry Criteria and Exit Criteria5.1.4. Estimation Techniques5.1.5. Test Case Prioritization5.1.6. Test Pyramid5.1.7. Testing Quadrants5.2. Risk Management5.2.1. Risk Definition and Risk Attributes5.2.2. Project Risks and Product Risks5.2.3. Product Risk Analysis5.2.4. Product Risk Control5.3. Test Monitoring, Test Control and Test Completion5.3.1. Metrics used in Testing5.3.2. Purpose, Content and Audience for Test Reports5.3.3. Communicating the Status of Testing5.4. Configuration Management5.5. Defect Management
- Test Tools – 20 minutes6.1. Tool Support for Testing6.2. Benefits and Risks of Test Automation
Các bước để tự học cho kỳ thi chứng chỉ ISTQB Foundation
Bước #1: Hiểu rõ cấu trúc đề thi, thời gian, số điểm đỗ
Để quyết định bạn có đỗ ngay lần đầu thi hay không thì tip này không thể bỏ qua đâu nhé. Vì hiểu rõ cấu trúc đề thi, bạn mới có thể quyết định mình nên tập trung ôn kĩ cho phần nào, phần nào nhiều câu hỏi và chiếm nhiều điểm.
Chi tiết về kỳ thi cấp độ ISTQB Foundation:
- Có 2 hình thức thi: online và offline
- Hình thức: Trắc nghiệm 40 câu
- Ngôn ngữ: đề thi hoàn toàn bằng Tiếng Anh
- Điểm trúng tuyển: 26/40 (65% trở lên).
- Thời gian thi: 60 phút nếu làm bài thi online, 90 phút nếu làm bài thi offline.
Chi tiết phân bố câu hỏi trong đề thi
Các câu hỏi thi được phân bổ trên các cấp độ K1, K2, K3, K4
- K1: Remember (Nhớ)
- K2: Understand (Hiểu)
- K3: Apply (Áp dụng)
- K4: Analyze (Phân tích)
Cấp độ đơn giản chỉ cần nhớ, học thuộc là được sau đó sẽ tăng dần độ khó và cần tư duy, phân tích
Các câu hỏi thi được phân bổ trong từng chương của ISTQB Foundation Level Syllabus
Nhìn vào sự phân bổ trên, thì bạn nên ưu tiên tập trung nhiều vào các chương chứa nhiều câu hỏi như chương 4, 5, 1, 2. Bạn có thể tập trung nỗ lực của mình vào các chương quan trọng hơn và tránh lãng phí thời gian vào các chương mà có thể chỉ nhận được một vài câu hỏi. Nó không có nghĩa là bạn bỏ qua bất kỳ chương nào, nhưng nên có sự tập trung vào các chương có nhiều câu hỏi trong đề thi trước tiên.
Bước #2: Đọc kĩ giáo trình chính và syllabus
- Giáo trình chính: “Foundation of Software Testing_ISTQB Certification” của tác giả Rex Black, Dorothy Graham. Đây là quyển diễn giải đầy đủ nhất về khái niệm, ý nghĩa, ví dụ và bài tập.
- Syllabus: “ISTQB_Foundation Level Syllabus_2011”. Đây là quyển rút gọn của quyển Foundation of Software Testing, nó tổng quát hóa kiến thức một cách ngắn gọn, định nghĩa các khái niệm một cách súc tích.
Nhiều người khuyên rằng nên đọc sách giáo trình chính trước, đọc Syllabus sau vì có thể bạn sẽ không hiểu hầu hết các khái niệm nếu bắt đầu trực tiếp với Syllabus. Còn với kinh nghiệm học và thi của các chuyên viên Kiểm thử tại CO-WELL, các bạn nên đọc sách Syllabus trước, vì nó tóm tắt các phần chính cho bạn hiểu ngắn gọn, khái quát về nội dung trước đã. Trong quá trình đọc nếu các bạn cần biết thêm thông tin về phần đó thì tham khảo kỹ hơn ở giáo trình chính. Như vậy sẽ hiệu quả hơn là ngồi đọc lan man trong giáo trình chính mà không hiểu gì. Tất nhiên là nếu kỹ năng đọc hiểu tiếng Anh của bạn đã tốt thì có thể không là vấn đề.
Bước #3: Tham khảo GLOSSARY (từ điển thuật ngữ)
Khi bạn đọc giáo trình chính hay sách Syllabus, bạn sẽ gặp rất nhiều thuật ngữ, định nghĩa khó hiểu, thì hãy tham khảo sách Glossary nhé. Điều này không chỉ giúp bạn hiểu chính xác tài liệu mà còn giúp ăn điểm khi làm bài, bởi trong các đề thi có một vài câu hỏi về định nghĩa đấy.
Bạn có thể search trực tiếp theo LINK hoặc download TẠI ĐÂY
Bước #4: Ghi chú, Tạo bản đồ tư duy, Đọc lại thường xuyên và Tự kiểm tra
Không phải bạn nào cũng giỏi tiếng Anh, nên việc ngồi đọc như tụng kinh 1 cuốn sách toàn tiếng anh và tràn ngập những thuật ngữ khó hiểu thì thực sự quá tốn thời gian và mệt mỏi. Vậy làm sao để có thể nhớ hết đống kiến thức trong cuốn sách dày đó? Thử thực hiện các bước như dưới đây nhé.
Tuyệt đối KHÔNG DỊCH TIẾNG VIỆTĐọc kĩ từng câu, hiểu ý nghĩa của câu đó và gạch chân ý chính trong câu đóSử dụng ứng dụng Xmind để làm sơ đồ cây ghi nhớ.Đọc đi đọc lại sơ đồ hàng ngày
Ví dụ: Dưới đây là 1 đoạn lấy ra trong sách syllabus-2011 và được gach chân các ý chính,
“1.1.2. Causes of Software DefectsA human being can make an error (mistake), which produces a defect (fault, bug) in the program code, or in a document. If a defect in code is executed, the system may fail to do what it should do (or do something it shouldn’t), causing a failure. Defects in software, systems or documents may result in failures, but not all defect do so.”
Vậy đoạn tiếng Anh dài này bạn chỉ cần nhớ như sau:
Human make error (mistake) -> produces defect (fault,bug) in code or document -> code executed causing failure
Một ví dụ nữa khi sử dụng ứng dụng Xmind để tổng hợp kiến thức ngắn gọn về Quy trình Test
Bước #5: Làm “SẠCH SẼ” bài tập cuối chương của sách giáo trình chính
Nhiều người thường bỏ qua bài tập cuối chương, vì nghĩ đề thi thì làm gì cho ở bài tập cuối chương và thường lên mạng tìm kiếm các bài thi online, mong rằng sẽ trúng. SAI LẦM NHÉ!. Đi thi sẽ có rất nhiều dạng giống bài tập ở cuối chương đó. Chưa kể một số bài kiểm tra online trên mạng với câu trả lời tự giải không chính xác sẽ gây cho bạn sự nhầm lẫn và mất thời gian.
Để CHẮN CHẮN ĐỖ, bạn cần:
Nắm chắc hết kiến thức trong quyển SyllabusLàm hết bài tập cuối các chương của sách giáo trình chính. Không chỉ làm 1 lần mà là LÀM ĐI LÀM LẠI NHIỀU NHIỀU lần. Làm nhiều đến mức mà bạn có thể thuộc lòng cả câu hỏi và từng đáp án trong câu hỏi nhé.Hiểu lý do vì sao lại chọn đáp án này chứ không phải các đáp án khác cho từng câu hỏi.
Khi đã đảm bảo hết những điều trên thì bạn có thể làm thêm các đề online. Nhưng chỉ nên chọn những đề ở các trang tin cậy, tốt nhất nên làm các bài sample exam do chính tổ chức ISTQB đưa ra.
Bước #6: Đừng dành hết thời gian vào việc làm bài tập
Đừng quá tập trung ôn tập vào các câu hỏi dạng bài tập mà bỏ qua các câu hỏi lý thuyết, vì trong đề thi chỉ có khoảng 2-3 câu là bài tập, còn lại tất cả đều là câu hỏi lý thuyết.
Bài tập hầu hết toàn liên quan đến việc xác định số lượng test case bao phủ branch, path, và statement coverage. Cố gắng hiểu rõ các khái niệm, nó sẽ giúp bạn dễ dàng đưa ra đáp án chính xác hơn.
Bước #7: Chú ý khi đọc đề thi
Các câu hỏi trong chứng nhận ISTQB được trình bày theo cách mà tất cả các tùy chọn trông gần giống nhau. Do đó, rất quan trọng để đọc câu hỏi và các tùy chọn cẩn thận.
Nếu bạn tìm thấy nhiều hơn một câu trả lời đúng thì hãy bắt đầu bằng việc gạch bỏ những câu trả lời sai rõ ràng. Sau đó, với những câu trả lời còn lại đang phân vân, hãy tập trung gạch chân và đọc kỹ thuật ngữ/ định nghĩa trong đó, điều khác biệt sẽ nằm ở đây đấy.Đừng đọc lướt câu hỏi mà nên đọc hai, ba lần, cố gắng hiểu kỹ nó. Có một vài từ trong câu hỏicần bạn chú ý nhiều hơn như KHÔNG, KHÔNG BAO GIỜ, TẤT CẢ.
Trên đây là 7 bước tự học đạt chứng chỉ ISTQB Foundation được đúc rút từ kinh nghiệm ôn và luyện thi của nhiều chuyên viên Kiểm thử phần mềm tại CO-WELL ASIA. Thi đạt trình độ ISTQB Foundation không hề khó, nếu bạn đã có một lộ trình chắc chắn, và một sự quyết tâm, chăm chỉ cao độ. Chúc các bạn ôn tập hiệu quả và đạt chứng chỉ ITSQB trong thời gian tới nhé!
Tìm hiểu chương 1 giáo trình ISTQB-CTFL_Syllabus_2018_V3.1_Phần 1
Bài đăng này đã không được cập nhật trong 2 năm
Xin chào tất cả mọi người,chắc hẳn với các bạn đã và đang làm Tester sẽ không còn thấy xa lạ với giáo trình ISTQB-CTFL_Syllabus_2018_V3.1. Hôm nay mình sẽ giới thiệu nội dung của Chương 1. Vì có những từ chuyên ngành dịch sang tiếng việt sẽ chưa được sát nghĩa do đó mình sẽ để tiếng anh, mong quý bạn đọc thông cảm.
Tổng quan Nội dung chương 1 tập chung vào các nguyên tắc cơ bản của kiểm thử/thử nghiệm và bao gồm 5 phần chính (như hình dưới đây)
Mình sẽ chia làm 2 phần, hôm nay mình chia sẻ phần 1 từ 1.1 đến mục 1.4 còn lại sẽ chia sẻ ở phần 2 nhé.
Nội Dung Đề Cương Syllabus ISTQB 2018
Fundamentals of Testing
-
1.1 What is Testing?
- 1.1.1 Typical Objectives of Testing
- 1.1.2 Testing and Debugging
-
1.2 Why is Testing Necessary?
- 1.2.1 Testing’s Contributions to Success
- 1.2.2 Quality Assurance and Testing
- 1.2.3 Errors, Defects, and Failures
- 1.2.4 Defects, Root Causes and Effects
- 1.3 Seven Testing Principles
-
1.4 Test Process
- 1.4.1 Test Process in Context
- 1.4.2 Test Activities and Tasks
- 1.4.3 Test Work Products
- 1.4.4 Traceability between the Test Basis and Test Work Products
-
1.5 The Psychology of Testing
- 1.5.1 Human Psychology and Testing
- 1.5.2 Tester’s and Developer’s Mindsets
Testing Throughout the Software Development Lifecycle
-
2.1 Software Development Lifecycle Models
- 2.1.1 Software Development and Software Testing
- 2.1.2 Software Development Lifecycle Models in Context
-
2.2 Test Levels
- 2.2.1 Component Testing
- 2.2.2 Integration Testing
- 2.2.3 System Testing
- 2.2.4 Acceptance Testing
-
2.3 Test Types
- 2.3.1 Functional Testing
- 2.3.2 Non-functional Testing
- 2.3.3 White-box Testing
- 2.3.4 Change-related Testing
- 2.3.5 Test Types and Test Levels
-
2.4 Maintenance Testing
- 2.4.1 Triggers for Maintenance
- 2.4.2 Impact Analysis for Maintenance
Static Testing
-
3.1 Static Testing Basics
- 3.1.1 Work Products that Can Be Examined by Static Testing
- 3.1.2 Benefits of Static Testing
- 3.1.3 Differences between Static and Dynamic Testing
-
3.2 Review Process
- 3.2.1 Work Product Review Process
- 3.2.2 Roles and responsibilities in a formal review
- 3.2.3 Review Types
- 3.2.4 Applying Review Techniques
- 3.2.5 Success Factors for Reviews
Test Techniques
-
4.1 Categories of Test Techniques
- 4.1.1 Categories of Test Techniques and Their Characteristics
-
4.2 Black-box Test Techniques
- 4.2.1 Equivalence Partitioning
- 4.2.2 Boundary Value Analysis
- 4.2.3 Decision Table Testing
- 4.2.4 State Transition Testing
- 4.2.5 Use Case Testing
-
4.3 White-box Test Techniques
- 4.3.1 Statement Testing and Coverage
- 4.3.2 Decision Testing and Coverage
- 4.3.3 The Value of Statement and Decision Testing
-
4.4 Experience-based Test Techniques
- 4.4.1 Error Guessing
- 4.4.2 Exploratory Testing
- 4.4.3 Checklist-based Testing
Test Management
-
5.1 Test Organization
- 5.1.1 Independent Testing
- 5.1.2 Tasks of a Test Manager and Tester
-
5.2 Test Planning and Estimation
- 5.2.1 Purpose and Content of a Test Plan
- 5.2.2 Test Strategy and Test Approach
- 5.2.3 Entry Criteria and Exit Criteria (Definition of Ready and Definition of Done)
- 5.2.4 Test Execution Schedule
- 5.2.5 Factors Influencing the Test Effort
- 5.2.6 Test Estimation Techniques
-
5.3 Test Monitoring and Control
- 5.3.1 Metrics Used in Testing
- 5.3.2 Purposes, Contents, and Audiences for Test Reports
- 5.4 Configuration Management
-
5.5 Risks and Testing
- 5.5.1 Definition of Risk
- 5.5.2 Product and Project Risks
- 5.5.3 Risk-based Testing and Product Quality
- 5.6 Defect Management
Tool Support for Testing
-
6.1 Test Tool Considerations
- 6.1.1 Test Tool Classification
- 6.1.2 Benefits and Risks of Test Automation
- 6.1.3 Special Considerations for Test Execution and Test Management Tools
-
6.2 Effective Use of Tools
- 6.2.1 Main Principles for Tool Selection
- 6.2.2 Pilot Projects for Introducing a Tool into an Organization
- 6.2.3 Success Factors for Tools
ISTQB FOUNDATION LEVEL
Tài liệu lý thuyết
Giảng viên: Tạ Thị Thinh
Email: thinhtt0204@gmail
SDT: 0986775464
Skype: ta
Bản quyền thuộc về QRS-website: qr-solutions.com
-
CHAPTER 0: ISTQB introduction
-
- ISTQB Foundation Level Examination
-
- How to study ISTQB and prepare for exam
-
-
Chapter 1: Fundamentals of Testing
- 1 What is Testing? – Testing là gì
- 1 Why is Testing Necessary?
- 1 Seven Principles of Testing – 7 nguyên lý cơ bản của testing
- 1 Test Process
- 1 The Psychology of Testing………………………………………………………………………………………………….
-
Chapter 2: Testing Throughout The Software Development Lifecycle
- 2 Software Development Lifecycle Models
- 2 Test Levels (K2)
- 2 Test Types
- 2 Maintenance Testing
-
Chapter 3 Static Testing
- 3 Static Testing Basics
- 3 Review Process
-
CHAPTER 4: Test Design Techniques
- 4 Categories of Test Techniques
- 4 Black-box Test Techniques
- 4 While Box test design
- 4 Experience_base techniques (K2)- Kỹ thuật Experience_base
-
Chapter 5: Test Management
- 5 Test Organization
- 5 Test Planning and Estimation………………………………………………………………………………………………
- 5 Test Monitoring and Control – Test giám sát và kiểm soát
Bản quyền thuộc về QRS-website: qr-solutions.com
CHAPTER 0: ISTQB introduction
Nội dung chính:
ISTQB Foundation Level Examination
- Giới thiệu về bài thi ISTQB
- Who is ISTQB -ISTQB là gì?
- Course structure -Exams in ISTQB
- About Foundation level Examination -Về các mức độ kiến thức trong bài thi
- How to study ISTQB and prepare for exam
- Plan for examination- Lập kế hoạch cho kỳ thi
- How to read and use ISTQB books- Cách đọc và sử dụng các cuốn sách ISTQB bằng tiếng Anh
- Tips for doing exercises-Các chỉ dẫn, kinh nghiệm để làm bài tập
- ISTQB Foundation Level Examination
1 ISTQB Course structure (Cấu trúc ISTQB)
- There are currently three levels of certification Có 3 mức độ của chứng chỉ o The Foundation Level certification (one module) – CTFL (Certified Tester Foundation level Chứng chỉ ở mức cơ bản (1 mảng) o Advanced Level certifications (three modules) Chứng chỉ ở cao hơn (3 mảng: quản lý, kỹ thuật test và automation) o An Expert levels is currently being developed
Bản quyền thuộc về QRS-website: qr-solutions.com
Chứng chỉ ở mức chuyên gia đang được xây dựng
- For all three levels, international working groups develop and maintain internationally uniform curricula and exams – Đối với tất cả 3 mức chứng chỉ, thì đều thống nhất tài liệu giảng và bài thi trên toàn thế giới.
1 Who is ISTQB (ISTQB là gì)? – ISTQB là 1 tổ chức phi lợi nhuận có trách nhiệm định nghĩa ra các hướng dẫn như cấu trúc bài thi, quy ước, khái niệm, chứng chỉ. – Nhóm làm việc trong tổ chức ISTQB có trách nhiệm phát triển và duy trì các giáo trình và xây dựng bài thi chung trên toàn thế giới.
1 Exams in ISTQB (Bài thi trong ISTQB) – The ISTQB Certified Tester program provides certification for software testers internationally. Chương trình thi chứng chỉ ISTQB cho tester cung cấp chứng chỉ về test phần mềm có giá trị trên toàn thế giới.
How to study ISTQB and prepare for exam
Cách nghiên cứu và chuẩn bị cho kỳ thi lấy chứng chỉ ISTQB
2 How to read and use ISTQB books Cách đọc và sử dụng các cuốn sách ISTQB bằng tiếng Anh
Sách dùng để thi chính thức ISTQB gồm có:
- ISTQB FOUNDATIONS LEVEL Giới thiệu và giải thích 1 cách đầy đủ về các khái niệm và hoạt động của testing. Gồm có 207 trang.
- ISTQB FOUNDATION LEVEL SYLLABUS
Bản quyền thuộc về QRS-website: qr-solutions.com
Chapter 1: Fundamentals of Testing
1 What is Testing? – Testing là gì
What is testing?
- A common misperception of testing is that it only consists of running tests, i., executing the software. This is part of testing, but not all of the testing activities – Thường mọi người hiểu khái niệm test chỉ là chạy test, chạy phần mềm nhưng đó chỉ là 1 phẩn ko phải tất cả các hoạt động test
- Test activities exist before and after test execution. These activities include planning and control, choosing test conditions, designing and executing test cases, checking results, evaluating exit criteria, reporting on the testing process and system under test, and finalizing or completing closure activities after a test phase has been completed – Các hoạt động test tồn tại trước và sau khi chạy PM bao gồm: lên kế hoạch và kiểm soát, chọn điều kiện test, thiết kế và chạy test case, test kết quả, đánh giá tiêu chí kết thúc, báo cáo trong quy trình test và các hoạt động đóng sau khi giai đoạn test hoàn thành.
- Testing also includes reviewing documents (including source code) and conducting static analysis – Test thì bao gồm cả review tài liệu, source code, phân tích tĩnh
- Both dynamic testing and static testing can be used as a means for achieving similar objectives, and will provide information that can be used to improve both the system being tested and the development and testing processes – Cả dynamic và static testing được sử dụng đồng thời để đạt được mục đích giống nhau và sẽ cung cấp thông tin để cải tiến HT đang đc test và các quy trình
1.1 Typical Objectives of Testing – To evaluate work products such as requirements, user stories, design, and code – Để đánh giá các sản phẩm như là requirements, user stories, design, and code – To verify whether all specified requirements have been fulfilled – Để xác minh xem tất cả các yêu cầu đã được thực hiện đầy đủ chưa – To validate whether the test object is complete and works as the users and other stakeholders expect – Để xác thực xem đối tượng test đã hoàn thành chưa và hoạt động như người dùng và các bên liên quan khác mong đợi chưa – To build confidence in the level of quality of the test object – Để xây dựng sự tự tin về mức độ chất lượng – To prevent defects – Để ngăn ngừa lỗi – To find failures and defects – Để tìm failures và lỗi – To provide sufficient information to stakeholders to allow them to make informed decisions, especially regarding the level of quality of the test object – Cung cấp đầy đủ thông tin cho các bên liên quan để cho phép họ đưa ra quyết định sáng suốt, đặc biệt là về mức độ chất lượng của đối tượng test – To reduce the level of risk of inadequate software quality (e., previously undetected failures occurring in operation) – Để giảm mức độ rủi ro về chất lượng phần mềm không đầy đủ (ví dụ: các lỗi không được phát hiện trước đó xảy ra trong khi hoạt động) – To comply with contractual, legal, or regulatory requirements or standards, and/or to verify the test object’s compliance with such requirements or standards – Tuân thủ các yêu cầu hoặc tiêu chuẩn theo
Bản quyền thuộc về QRS-website: qr-solutions.com
hợp đồng, pháp lý hoặc theo quy định và / hoặc để xác minh đối tượng test tuân thủ các yêu cầu hoặc tiêu chuẩn đó Different viewpoints in testing take different objectives into account
Có các mục đích khác nhau trong từng giai đoạn test:
- During component testing, one objective may be to find as many failures as possible so that the underlying defects are identified and fixed early. Another objective may be to increase code coverage of the component tests – Trong component testing, một mục tiêu có thể là tìm ra càng nhiều lỗi càng tốt để các defect cơ bản được xác định và khắc phục sớm. Một mục tiêu khác có thể là tăng độ bao phủ test của các thành phần.
- During acceptance testing, one objective may be to confirm that the system works as expected and satisfies requirements. Another objective of this testing may be to give information to stakeholders about the risk of releasing the system at a given time – Trong quá trình test chấp nhận, một mục tiêu có thể là xác nhận rằng hệ thống hoạt động như mong đợi và đáp ứng các yêu cầu. Một mục tiêu khác của test này có thể là cung cấp thông tin cho các bên liên quan về rủi ro của phát hành hệ thống tại một thời điểm nhất định.
1.1 Testing and Debugging Testing and debugging are different.
- Executing tests can show failures that are caused by defects in the software – Thực hiện các test có thể cho thấy các lỗi được gây ra bởi các defect trong phần mềm.
- Debugging is the development activity that finds, analyzes, and fixes such defects – Gỡ lỗi là hoạt động phát triển tìm, phân tích và sửa các lỗi đó
- Subsequent confirmation testing checks whether the fixes resolved the defects – Test xác nhận xem các bản sửa lỗi có giải quyết được chính xác lỗi không.
1 Why is Testing Necessary?
- Rigorous testing of systems and documentation can help to reduce the risk of problems occurring during operation – Test một cách cẩn trọng HT và tài liệu có thể giúp giảm rủi ro cho các vấn đề có thể xảy ra trong quá trình vận hành PM
- When defects are detected, and subsequently fixed, this contributes to the quality of the components or systems – Khi phát hiện lỗi và sau đó được sửa, điều này góp phần vào chất lượng của các thành phần hoặc hệ thống
- Software testing may also be required to meet contractual or legal requirements, or industry-specific standards – Test PM cũng là 1 yêu cầu trong hợp đồng và các yêu cầu pháp lý hoặc chuẩn công nghiệp.
1.2 Testing’s Contributions to Success – It is quite common for software and systems to be delivered into operation and, due to the presence of defects, to subsequently cause failures or otherwise not meet the stakeholders’ needs – Các phần mềm và hệ thống được đưa vào vận hành bị gặp lỗi, sau đó gây ra failures hoặc không đáp ứng nhu cầu của các bên liên quan. – Using appropriate test techniques can reduce the frequency of such problematic deliveries, when those techniques are applied with the appropriate level of test expertise, in the appropriate test levels,
Bản quyền thuộc về QRS-website: qr-solutions.com
tập trung vào việc tuân thủ các quy trình thích hợp, để đảm bảo rằng mức độ chất lượng phù hợp sẽ đạt được.
- Quality assurance contributes to defect prevention (example: the use of root cause analysis to detect and remove the causes of defects, retrospective meetings to improve processes) – Đảm bảo chất lượng góp phần ngăn ngừa defect (ví dụ: việc sử dụng phân tích nguyên nhân gốc để phát hiện và loại bỏ các nguyên nhân gây ra lỗi, các cuộc họp để cải thiện các quy trình)
- Quality control involves various activities, including test activities, that support the achievement of appropriate levels of quality. Test activities are part of the overall software development or maintenance process – Kiểm soát chất lượng liên quan đến các hoạt động khác nhau, bao gồm các hoạt động test, hỗ trợ đạt được mức chất lượng phù hợp. Các hoạt động test là một phần của quy trình bảo trì hoặc phát triển phần mềm tổng thể
- Since quality assurance is concerned with the proper execution of the entire process, quality assurance supports proper testing – Vì đảm bảo chất lượng liên quan đến việc thực hiện đúng toàn bộ quy trình, đảm bảo chất lượng hỗ trợ test thích hợp
1.2 Errors, Defects, and Failures
Errors may occur for many reasons, such as:
- Time pressure Human fallibility – Áp lực thời gian
- Inexperienced or insufficiently skilled project participants – Người tham gia dự án thiếu kinh nghiệm hoặc không đủ kỹ năng
- Miscommunication between project participants, including miscommunication about requirements and design – Thông tin sai lệch giữa những người tham gia dự án, bao gồm cả thông tin sai lệch về các yêu cầu và thiết kế
Bản quyền thuộc về QRS-website: qr-solutions.com
- Complexity of the code, design, architecture, the underlying problem to be solved, and/or the technologies used – Độ phức tạp của code, thiết kế, kiến trúc, vấn đề cơ bản cần giải quyết và / hoặc các công nghệ được sử dụng
- Misunderstandings about intra-system and inter-system interfaces, especially when such intra- system and inter-system interactions are large in number – Những hiểu lầm về giao diện giữa hệ thống và liên hệ thống, đặc biệt là khi các tương tác giữa hệ thống và liên hệ thống đó có số lượng lớn
- New, unfamiliar technologies – Công nghệ mới, lạ
In addition to failures caused due to defects in the code, failures can also be caused by environmental conditions – Ngoài các lỗi gây ra do lỗi trong code, các lỗi cũng có thể được gây ra bởi các điều kiện môi trường
Not all unexpected test results are failures- Không phải tất cả các kết quả test không mong muốn đều là failure:
- False positives may occur due to errors in the way tests were executed, or due to defects in the test data, the test environment, or other testware, or for other reasons. The inverse situation can also occur, where similar errors or defects lead to false negatives – lỗi giả có thể xảy ra do sai trong cách thực hiện các test hoặc do lỗi trong dữ liệu test, môi trường test hoặc các phần mềm test khác hoặc vì lý do khác. Tình huống nghịch đảo cũng có thể xảy ra, trong đó các lỗi hoặc defect tương tự dẫn đến lỗi sai.
1.2 Defects, Root Causes and Effects The root causes of defects are the earliest actions or conditions that contributed to creating the defects – Nguyên nhân gốc rễ của defect là những hành động hoặc điều kiện sớm nhất góp phần tạo ra nhiều defect
Identify the root causes of failure can- Xác định nguyên nhân gốc rễ của sự failure có thể:
- Reduce the occurrence of similar defects in the future – Giảm sự xuất hiện của các defect tương tự trong tương lai.
- Lead to process improvements that prevent a significant number of future defects from being introduced – Dẫn đến cải tiến quy trình ngăn chặn một số lượng đáng kể các defect trong tương lai
1 Seven Principles of Testing – 7 nguyên lý cơ bản của testing
Testing shows presence of defects
-
Testing can show that defects are present, but cannot prove that there are no defects – Test có thể chỉ ra lỗi, nhưng không thể chứng minh rằng phần mềm không có lỗi.
-
Testing reduces the probability of undiscovered defects remaining in a software but, even if no defects are found, it is not a proof of correctness – Test làm giảm xác suất của các lỗi chưa được khám phá vẫn còn trong phần mềm nhưng ngay cả khi không có 1 lỗi nào được tìm thấy, nó cũng không phải là một bằng chứng về tính đúng đắn phần mềm. Exhaustive testing is impossible – Complete test
-
Test everything (all combination of inputs and preconditions) is not feasible – Test tất cả mọi thứ (tất cả các kết hợp của đầu vào và điều kiện) là không khả thi
Bản quyền thuộc về QRS-website: qr-solutions.com
1 Test Process
1.4 Test Process in Context Contextual factors that influence the test process for an organization, include, but are not limited to – Các yếu tố bối cảnh ảnh hưởng đến quá trình test cho một tổ chức, bao gồm, nhưng không giới hạn ở:
- Software development lifecycle model and project methodologies being used – Mô hình vòng đời phát triển phần mềm và phương pháp dự án đang được sử dụng o Test levels and test types being considered – Mức test và loại test đang được xem xét o Product and project risks – Rủi ro sản phẩm và dự án o Business domain – Lĩnh vực kinh doanh
- Operational constraints, including but not limited to – Các ràng buộc hoạt động, bao gồm nhưng không giới hạn ở: o Budgets and resources – Ngân sách và tài nguyên o Timescales – Thời gian o Complexity – Phức tạp o Contractual and regulatory requirements – Yêu cầu hợp đồng và quy định
- Organizational policies and practices – Chính sách và thực hành tổ chức
- Required internal and external standards – Yêu cầu tiêu chuẩn nội bộ và bên ngoài
1.4 Test Activities and Tasks
In Agile development involves small iterations of software design, build, and test that happen on a continuous basis, supported by on-going planning. So test activities are also happening on an iterative, continuous basis within this development approach. – Trong Agile bao gồm các giai đoạn lặp nhỏ của
Test planing
Test monitoring and control
Test analysis
Test design
Test implement
Test execution
Test completion
Bản quyền thuộc về QRS-website: qr-solutions.com
thiết kế, xây dựng và test phần mềm xảy ra liên tục, được hỗ trợ bởi kế hoạch liên tục. Vì vậy, các hoạt động test cũng đang diễn ra trên cơ sở lặp đi lặp lại, liên tục trong phương pháp phát triển này.
In sequential development, the stepped logical sequence of activities will involve overlap, combination, concurrency, or omission, so tailoring these main activities within the context of the system and the project is usually required. – Trong phát triển tuần tự, các hoạt động thực hiện có thể là tuần tự, chồng chéo, kết hợp, đồng thời hoặc thiếu sót, do đó, điều chỉnh các hoạt động chính này trong bối cảnh của hệ thống và dự án thường được yêu cầu.
Test activities Objectives Work products Test planning – Define the objectives of testing and the approach for meeting test objectives (e., specifying suitable test techniques and tasks, and formulating a test schedule for meeting a deadline).
- May be revisited based on feedback from monitoring and control activities
One or more test plans includes:
- information about the test basis
- to which the other test work products will be related via traceability information
- exit criteria (or definition of done) which will be used during test monitoring and control
Test monitoring and control
- Involves the on-going comparison of actual progress against the test plan using any test monitoring metrics defined in the test plan
- Involves taking actions necessary to meet the objectives of the test plan
- Are supported by the evaluation of exit criteria for test execution as part of a given test level may include:
- Checking test results and logs against specified coverage criteria
- Assessing the level of component or system quality based on test results and logs
- Determining if more tests are needed
-
Provide test progress reports, including deviations from the plan and information to support any decision to stop testing
-
test progress reports (produced on an ongoing and/or a regular basis)
-
test summary reports (produced at various completion milestones)
Test analysis Analyzing the test basis appropriate to the test level being considered: – Requirement specifications – Design and implementation information – The implementation of the component or system – Risk analysis reports
Evaluating the test basis and test items to
-
defined and prioritized test conditions
-
bi-directionally traceable
-
test charters
-
reporting of defects in the test basis
Bản quyền thuộc về QRS-website: qr-solutions.com
efficient test execution
-
Building the test environment and verifying that everything needed has been set up correctly
-
Preparing test data and ensuring it is properly loaded in the test environment
-
Verifying and updating bi-directional traceability between the test basis, test conditions, test cases, test procedures, and test suites
cases
- The concrete expected results which are associated with concrete test data are identified by using a test oracle.
Test execution – Recording the IDs and versions of the test item(s) or test object, test tool(s), and testware
-
Executing tests either manually or by using test execution tools
-
Comparing actual results with expected results
-
Analyzing anomalies to establish their likely causes
-
Reporting defects based on the failures observed
-
Logging the outcome of test execution (e., pass, fail, blocked)
-
Repeating test activities either as a result of action taken for an anomaly, or as part of the planned testing
-
Verifying and updating bi-directional traceability between the test basis, test conditions, test cases, test procedures, and test results.
-
Documentation of the status of individual test cases or test procedures (e., ready to run, pass, fail, blocked, deliberately skipped, etc.)
-
Defect reports
-
Documentation about which test item(s), test object(s), test tools, and testware were involved in the testing
Test completion
-
Checking whether all defect reports are closed, entering change requests or product backlog items for any defects that remain unresolved at the end of test execution
-
Test summary reports
-
Action items for improvement of subsequent projects or iterations
-
Change requests or product
Bản quyền thuộc về QRS-website: qr-solutions.com
-
Creating a test summary report to be communicated to stakeholders
-
Finalizing and archiving the test environment, the test data, the test infrastructure, and other testware for later reuse
-
Handing over the testware to the maintenance teams, other project teams, and/or other stakeholders who could benefit from its use
-
Analyzing lessons learned from the completed test activities to determine changes needed for future iterations, releases, and projects
-
Using the information gathered to improve test process maturity
backlog items
- Finalized testware.
1.4 Traceability between the Test Basis and Test Work Products In order to implement effective test monitoring and control, it is important to establish and maintain traceability throughout the test process between each element of the test basis and the various test work products associated with that element – để thực hiện giám sát và kiểm soát test hiệu quả, điều quan trọng là phải thiết lập và duy trì khả năng truy nguyên trong suốt quá trình test giữa từng yếu tố của cơ sở test và các sản phẩm công việc test khác nhau được liên kết với yếu tố đó
Good traceability supports – Hỗ trợ truy xuất nguồn gốc tốt:
-
Analyzing the impact of changes – Phân tích tác động của những thay đổi
-
Making testing auditable – Làm cho test có thể test được
-
Meeting IT governance criteria – Đáp ứng tiêu chí quản trị CNTT
-
Improving the understandability of test progress reports and test summary reports to include the status of elements of the test basis (e., requirements that passed their tests, requirements that failed their tests, and requirements that have pending tests) – Cải thiện tính dễ hiểu của báo cáo tiến độ test và báo cáo tóm tắt test để bao gồm trạng thái của các yếu tố của cơ sở test (ví dụ: các yêu cầu đã vượt qua test của chúng, yêu cầu không vượt qua test và yêu cầu có các test đang chờ xử lý)
-
Relating the technical aspects of testing to stakeholders in terms that they can understand – Liên quan các khía cạnh kỹ thuật của test với các bên liên quan theo các điều khoản mà họ có thể hiểu
Bản quyền thuộc về QRS-website: qr-solutions.com
o Confirm that the other person has understood what has been said and vice versa – Xác nhận rằng người kia đã hiểu những gì đã nói và ngược lại.
- Clearly defining the right set of test objectives has important psychological implications – Xác định rõ ràng đúng mục tiêu test có ý nghĩa tâm lý quan trọng
1.5 Tester’s and Developer’s Mindsets Developers and testers often think differently
Developer Tester
Objective design and build a product verifying and validating the product, finding defects prior to release
Mindset more interested in designing and building solutions than in contemplating what might be wrong with those solutions
difficult to find mistakes in their own work
developers should be able to test their own code
quan tâm nhiều hơn đến việc thiết kế và xây dựng các giải pháp hơn là suy ngẫm những gì có thể sai với những giải pháp đó
khó tìm thấy sai lầm trong công việc của họ
developer có thể test code của riêng họ
curiosity, professional pessimism, a critical eye, attention to detail, and a motivation for good and positive communications and relationships
tò mò, bi quan chuyên nghiệp, một con mắt quan trọng, chú ý đến chi tiết và một động lực cho các mối quan hệ và giao tiếp tốt và tích cực
Some of the test activities done by independent testers- Một số hoạt động test được thực hiện bởi tester độc lập:
- to increases defect detection effectiveness, which is particularly important for large, complex, or safety-critical systems – để tăng hiệu quả phát hiện defect, điều đặc biệt quan trọng đối với các hệ thống lớn, phức tạp hoặc yêu cầu độ an toàn cao.
- they have different cognitive biases from the authors – họ có những thành kiến nhận thức khác nhau từ các tác giả
Bản quyền thuộc về QRS-website: qr-solutions.com
Chapter 2: Testing Throughout The Software Development Lifecycle
2 Software Development Lifecycle Models
In any software development lifecycle model, there are several characteristics of good testing – Trong bất kỳ mô hình vòng đời phát triển phần mềm nào, có một số đặc điểm của test tốt:
- For every development activity, there is a corresponding test activity – Đối với mọi hoạt động phát triển, có một hoạt động test tương ứng
- Each test level has test objectives specific to that level – Mỗi test level có mục tiêu test cụ thể cho cấp độ đó
- Test analysis and design for a given test level begin during the corresponding development activity – Phân tích và thiết kế test cho một mức test nhất định bắt đầu trong hoạt động phát triển tương ứng
- Testers participate in discussions to define and refine requirements and design, and are involved in reviewing work products (e., requirements, design, user stories, etc.) as soon as drafts are available – Người test tham gia thảo luận để xác định và tinh chỉnh các yêu cầu và thiết kế, và tham gia vào việc xem xét các sản phẩm công việc (ví dụ: yêu cầu, thiết kế, yêu cầu của người dùng, v.) ngay khi có bản nháp
In any model, test activities should start in the early stages of the lifecycle, adhering to the testing principle of early testing. There are two common models – Trong bất kỳ mô hình nào, các hoạt động test nên bắt đầu trong giai đoạn đầu của vòng đời, tuân thủ nguyên tắc của test sớm. Có hai mô hình phổ biến:
- Sequential development models
- Iterative and incremental development models
- Sequential development models
In the Waterfall model, the development activities (e., requirements analysis, design, coding, testing) are completed one after another. In this model, test activities only occur after all other development activities have been completed – Trong mô hình Waterfall, các hoạt động phát triển (ví dụ: phân tích yêu cầu, thiết kế, code, test) được hoàn thành lần lượt. Trong mô hình này, các hoạt động test chỉ xảy ra sau khi tất cả các hoạt động phát triển khác đã được hoàn thành.
Fundamentals of Testing – Chương 1 Foundation Level Syllabus(ISTQB)
Bài đăng này đã không được cập nhật trong 2 năm
1.1 Tại sao Kiểm thử là cần thiết
1.1.1 Ngữ cảnh về hệ thống phần mềm
- Phần mềm là một phần của cuộc sống hiện đại, từ những phần mềm nghiệp vụ đến những sản phẩm phục vụ con người.
- Hầu hết mọi người đều có lúc trải qua việc Phần mềm làm việc không đúng như mong đợi
- Phần mềm làm việc không chính xác có thể dẫn đến nhiều rắc rối, ví dụ như: mất tiền, thời gian, quan hệ, hoặc mạnh hơn là gây ra chấn thương và cái chết.
1.1.2 Nguyên nhân gây ra lỗi
- Error: là một hành động của con người tạo ra một kết quả không chính xác
- Fault: Là một biểu hiện lỗi trong phần mềm. Được biết đến như bug hày defect. Khi chạy phần mềm, fault có thể gây ra failure
- Failure: Failure là độ chênh lệch giữa phần mềm thực tế sai khác với mong đợi Tại sao lại xảy ra lỗi trong phần mềm?
- Do phần mềm được viết bởi còn người
- Mà con người thì có giới hạn về kiến thức
- Còn người còn thiếu kỹ năng
- Con người còn có thể tạo ra sự nhầm lẫn
- Do chịu sức ép lớn để bàn giao sản phẩm đúng deadline
- Hay do thiếu thời gian để kiểm thử
- Hoặc có thể do hệ thống chưa hoàn thành
1.1.3 Vai trò của testing trong Phát triển phần mềm, Mantenance và Vận hành
- Test một cách cẩn thận hệ thống và tài liệu có thể giúp giảm rủi ro cho các vấn đề có thể xảy ra trong quá trình vận hành phần mêm và đảm bảo được chất lượng của hệ thống, nếu lỗi được tìm thấy và sửa trước khi hệ thống được phát hành để sử dụng.
- Kiểm thử phần mềm cũng là một yêu cầu tròn hợp đồng và các yêu cầu pháp lý hoặc chuẩn công nghiệp.
1.1.4 Testing và Quality
- Testing đo đạc được chất lượng của phần mềm
- Testing có thể tìm ra lỗi, khi lỗi được loại bỏ thì chất lượng ( độ tin cậy) được cải thiện Testing để làm gì?
- Đảm bảo các thực hiện, chức năng của hệ thống chạy đúng
- Đảm bảo chất lượng của hệ thống: độ tin cậy, tính sử dụng, bảo trì, tái sử dụng, khả năng test…
- Testing là 1 phần của đảm bảo chất lượng
- Chất lượng được đo đạc bằng lỗi được tìm thấy trong các yêu cầu và đặt tính về functional và non-functional
- Testing mang đến sự tự tin về chất lượng khi lỗi được tìm thấy hoặc không có.
- Bằng cách học các bài học kinh nghiệm từ dự án trước chúng ta cải tiến được quy trình đó cải tiếng chất lượng cho hệ thống trong tương lai.
1.1.5 Testing khi nào là đủ?
Phụ thuộc vào RISK:
- Rủi ro của việc không nhìn thấy lỗi quan trọng
- Rủi ro của việc phát sinh chi phí lỗi
- Rủi ro của việc phát hành phần mềm chưa được kiểm tra
- Nguy cơ mất uy tín thị trường
- Nguy cơ thiếu một cánh cửa thị trường
- Rủi ro trong việc test quá mức, test không hiệu quả
- Thời gian test luôn bị giới hạn Sử dụng Risk để xác định:
- Test gì trước
- Test gì nhiều hơn
- Làm thế nào để kiểm tra kỹ lưỡng từng hạng mục
- Cái gì không test Sử dụng Risk để:
- Phân bố thời gian hợp lý cho việc testing bằng việc phân thứ tự ưu tiên
1.2 Testing là gì?
-
Thường mọi người hiểu khái niệm test chỉ là chạy test, chạy phần mềm nhưng đó chỉ là 1 phần không phải tất cả các hoạt động test
-
Các hoạt động, test tồn tại trước và sau khi chạy phần mềm bao gồm: lên kế hoạch và kiểm soát, chọn điều kiện test, thiết kế và chạy test case, kiểm tra kết quả, đánh giá tiêu chí kết thúc, báo cáo trong quy trình test và các hoạt động đóng sau khi giai đoạn test hoàn thành. Test thì bao gồm cả review tài liệu, source code, phân tích tĩnh.
-
Cả Dynamic và static testing được sử dụng đồng thời để đạt được mục đích giống nhau và sẽ cung cấp thông tin để cải tiến hệ thống đang được test và các quy trình. Test gồm các mục tiêu sau:
- Tìm defects
- Thu thập sự tự tin vào chất lượng
- Cung cấp thông tin để ra quyết định
- Ngăn ngừa defects
-
Quy trình và các hoạt động test được thực hiện sớm trong chu kỳ( cí dụ kiểm tra các tài liệu test) giúp ngăn ngừa lỗi xảy ra trong code. Hoạt động review tài liệu và việc phát hiện và giải quyết các vấn đề phát sinh cũng giúp cho ngăn ngừa lỗi xuất hiện trong code
-
Các chi phí tìm kiếm và sửa chữa các defect tăng lên đáng kể trong suốt vòng đời
-
Có các quan điểm khác nhau về mục đích khác nhau trong từng giai đoạn:
- Test trong giai đoạn phát triển phần mềm có thể tìm được rất nhiều lỗi dễ dàng và có thể sửa sớm
- Test trong giai đoạn Chấp nhận sản phẩm là để kiểm tra xem hệ thống đã làm việc đúng như mong đợi chưa, đúng với yêu cầu chưa
- Trong một vài trường hợp thì là để đánh giá chất lượng của phần mềm để đưa ra thông tin nhà đầu tư về rủi ro của việc phát hành hệ thống tại thời điểm đó
- Bảo trì testing bao gồm test để đảm bảo không có lỗi mới xuất hiện quá trình thay đổi, chỉnh sửa
- Trong quá trình test vận hành thì mục đích chính là đánh giá các đặc tính của hệ thống như độ tin cậy, tính sẵn sàng. Sự khác nhau của debugging và testing
-
Test động tìm ra các defect hay bug. Debugging là hoạt động của developer để tìm, phấn tích và sửa nguyên nhân gây ra defect
-
Và tester phải thực hiện test lại để đảm bảo là các hoạt động sửa lỗi giải quyết triệt để. Nên khi phân vai trò ta thấy tester là người thực hiện test, developer thực hiện debug
1.3 Bảy nguyên lý cơ bản của testing
1. Testing shows presence of defects – Test chỉ ra lỗi
- Test có thể cho thấy các defect vắng mặt, nhưng không thể chứng minh rằng không có defect
- Test làm giảm xác suất của các defect chưa được khám phá còn lại trong một phần mềm nhưng, ngay cả khi không có defect được tìm thấ, nó không phải là một bằng chứng về tính đúng đắn. 2. Exhaustive testing is impossible – Test toàn bộ là không thể
- Test tất cả mọi thứ ( tất cả các kết hợp của các yếu tố đầu vào và điều kiện tiên quyết) là không khả thi
- Thay vì kiểm tra đầy đủ, hãy phân tích rủi ro và ưu tiên nên được sử dụng để tập trung các nỗ lực thử nghiệm 3. Early testing – Test sớm
- Hoạt động thử nghiệm nên bắt đầu càng sớm càng tốt trong chu kỳ phần mềm hoặc vòng đời phát triển phần mềm và nên tập trung vào mục tiêu được xác định
- Thực hiện các thử nghiệm thiết kế và hoạt động xem xét càng sớm thì thấy lỗi sớm khi đó ít tốn công để tìm và sửa chữa 4. Defect clusreing – phân cụm lỗi
- Một số lượng nhỏ các mô- đun thường có chứa hầu hết các lỗi được phát hiện trong quá trình thử nghiệm trước khi phát hành, hoặc là chịu trách nhiệm cho hầu hết các thất bại hoạt động
- Quy tắc 80/20: Module lõi thường chứa 80% lỗi 5. Pesticide paradox – Hiệu ứng thuốc trừ sâu
- Nếu các thử nghiệm tương tự được lặp đi lặp lại một lần nữa, không có defect mới có thể được tfm thấy
- Để khắc phục nghịch lý thuốc trừ sâu này, các trường hợp kiểm tra cần phải được thường xuyên rà soát và sửa lỗi; kiểm tra mới và khác nhau cần phải được ghi vào các phần khác nhau của phần mềm để tìm các defect có khả năng nhiều hơn. 6. Testing is context dependent – Testing trong ngữ cảnh độc lập
- Test được thực hiện khác nhau trong bối cảnh khác nhau
- Ví dụ: phần mềm an toàn quan trọng là kiểm tra khác nhau từ một trang web thương mại điện tử 7. Absence of error fallacy – Vắng mặt của lỗi
- Tìm và sửa lỗi không giúp gì nếu hệ thống được xây dựng là không sử dụng được và không đáp ứng nhu cầu và mong đợi của người sử dụng.
1.4 Quy trình và các giai đoạn kiểm thử phần mềm
1.4.1 Test Planning and control
- Lập kế hoạch test là hoạt động xác định mục tiêu của việc test và chỉ rõ các hoạt động test để đạt được mục tiêu và trọng tâm
- Kiểm soát test là hoạt động diễn ra liên tục để so sánh giữa tiến độ thhuwjc tế và kế hoạch, báo cáo trạng thái ( gồm cả những cái sai lệch so với kế hoạch). Kiểm soát test phải đưa ra được các hành động cần thiết để đạt được mục tiêu của dự án. Các hoạt động kiểm soát test được thực hiện và kiểm tra suốt cả dự án
- Kế hoạch test phải được cập nhật phù hợp với những hoạt động điều hành và kiểm soát
1.4.2 Test analysis and Design
- Phân tích và thiết kế test dựa vào các mục tiêu test để chuyển đổi thành các điều kiện test và testcase
-
Các hoạt động của phân tích và thiết kê:
- Xem xét các cơ sở cho test ( yêu cầu, các rủi ro, báo cáo phân tích rủi ro, kiến trúc, thiết kế, đặc tả giao diện)
- Đánh giá khả năng test của test base và các đối tượng test
- Xác định và sắp xếp thứ tự ưu tiên của các điều kiện test dựa vào phân tích các test items, đặc tả, hiệu ứng và cấu trúc của phần mềm
- Thiết kế và sắp xếp thứ tự ưu tiên cho testcase
- Xác định các dứ liệu test để phục vụ cho test conditions và testcases
- Xác định môi trường test cần thiết lập và các yêu cầu về hạ tầng, công cụ
- Tạo ma trận theo dõi 2 chiều giữa test basic và test cases
1.4.3 Test Implementation and Execution
- Thực hiện test và chạy test là hoạt động xây dựng các thủ tục test được chỉ ẽo bằng việc kết hợp giữa các test case và các thông tin cần thiết khác cho việc thực hiện test, thiết lập môi trường test và chạy test
-
Gồm các tasks sau:
- Chuẩn hóa, xây dựng và sắp xếp ưu tiên test case ( bao gồm cả xác định test data)
- Xây dựng và ưu tiên các thủ tục test, tạo test case chuẩn bị thủ tục và viết test scripts tự động test
- Tạo bộ test suites từ thủ tục test cho việc chạy test hiệu quả
- Kiểm tra các môi trường được thiết lập đúng chưa
- Kiểm tra và cập nhật ma trận theo dõi test basic và test cases
- Chạy các thủ tục test bằng tay hoặc tự động bằng tool
- Ghi nhận kết quả chạy test và các vấn đề phát hiện được, phiên bản được test, công cụ test tài sản test
- So sánh kết quả thực tế và kết quả mong đợi
- Báo cáo lỗi và phân tích chúng để tim ra nguyên nhân ( lỗi trong code, trong test data, trong tài liệu test hoặc sai ở cách thực hiện test)
- Lặp lại các hoạy động test để xác nhận các sửa lỗi là phù hợp, những phần xung quanh không xảy ra lỗi nữa
1.4.4 Evaluating Exit Criteria and Reporting
- Đánh giá tiêu chí kết thúc được thực hiện khi việc chạy test đã đạt được đến mục tiêu trong kế hoạch, nó nên được làm ở mỗi level của test
-
Các tasks chính:
- Kiểm tra các kết quả test với các tiêu chí kết thúc trong kế hoạch
- Đánh giá xem có cần phải test thêm nữa không hoặc phải sửa exit criteria không
- Viết báo cáo test gửi nhà đầu tư
1.4.5 Test Closure Activities
- Là hoạt động thu nhập dữ liệu từ các hoạt động test đã hoàn thành để tập trung lại các kinh nghiệm, tài sản test.
- Hoạt động này diễn ra ở mỗi giai đoạn của dự án, khi hệ thống được phát hành hoặc khi dự án test hoàn thành, giai đoạn kết thúc, phát hành sản phẩm
-
Các tasks chính gồm:
- Kiểm tra các sản phẩm được lên kế hoạch phát hành đã phát hành chưa
- Đóng các báo cáo lỗi hoặc nâng cao các ghi chú thay đổi cho phần còn xót lại
- Tài liệu hóa chấp nhận hệ thống của khách hàng
- Hoàn thiện và thu hồi tài sản test, môi trường và hạ tầng việc tái sử dụng
- Bàn giao tài sản test cho tổ chức
- Phân tích các bài học kinh nghiệm để xác định các thay đổi cần thiết cho các ban hành trong tương lai hoặc dự án khác
- Sử dụng các thông tin thu thập để cải tiến hoạt động test
1.5 Khía cạnh tâm lý của kiểm thử phần mềm
1.5.1 Why test?
- Để chứng minh thỏa mãn các yêu cầu
- Để tìm lỗi
- Giảm chi phí
- Chứng ming hệ thống thỏa mãn nhu cầu người dùng
- Đánh giá chất lượng phần mềm
1.5.2 Hướng tiếp cận test tốt hơn
-
Test hệ thống:
- Test những gì nó nên làm
- Không test những gì nó không nên làm => Goal: show working và success: Hệ hống làm việc
-
Hướng tiếp cận test tốt hơn:
- Test những gì nó không nên làm
- Không test những gì nó nên làm => Goal: tìm defects và success: Hệt hống fails
1.5.3 Vai trò của tester
- Tester có quyền: – Được thông báo chính xác về tiến độ và sự thay đổi phần mềm – Biết về các mảng phần mềm của developer – Được bàn giao code đã test theo chuẩn – Làm việc chuyên nghiệp – Tìm lỗi – Tạo TCs và test plan – Có lỗi báo cáo thực hiện nghiêm túc – Dự đoán về mức độ lỗi trong tương lai – Cải tiến quy trình kiểm thử của riêng bạn
-
Trách nhiệm của tester:
- Thực hiện theo plan, scripts
- Báo cáo lỗi khách quan và thực tế
- KIểm tra các test là đúng trước khi report lỗi phần mềm
- Đánh giá rủi ro khách quan
- Đặt thứ tự ưu tiên cái mà bạn test
- Giao tiếp trung thực
1.5.4 Các mức độ độc lập trong kiểm thử
Test by developer
-
Tự kiểm tra công việc?
- Tìm được 30%-50% lỗi
- Luôn giả thiết về nghiệp vụ
-
Kèm theo những biểu cảm, tâm lý:
- Không muốn tìm lỗi
- Không chủ động tìm lỗi
- Mức độ test độc lập – Các Trường hợp test không được xây dựng bởi người viết ra phần mềm ( thấp nhất) – Test phải được xây dựng bởi người khác – Test cần được xây dựng bởi người từ những phòng ban khác – Test cần được xây dựng bởi người từ những tổ chức khác ( cáo nhất)
1.5.5 Re-test và Test hồi quy
Re-test sau khi lỗi được sửa
- Chạy test, phần mềm bị lỗi, báo cáo lỗi
- Phiên bản phần mềm mới với lỗi được sửa
-
Chạy lại Case trên:
- Lặp lại chính xác những gì đã phát hiện lỗi
- Trên cùng môi trường
- Trên cùng đầu vào và các điều kiện ban đầu
- Nếu Test Pass thì lỗi đã được sửa đúng
- Chạy lại test nếu lần chạy lại vẫn fail. Regression Test – Test hồi quy
- Test hồi quy thực hiện ở tất cả các level
- Tập hợp các chuẩn Test của gói kiểm tra hồi quy ( Dành cho test tự động)
- Rất tốt khi được tự động hóa
- Một tài sản đang phát triển nhưng cần phải được hồi quy
-
Test hồi quy được thực hiện khi:
- Sau khi phần mềm được thay đổi theo yêu cầu, bao gồm cả sửa lỗi
- Khi môi trường thay đổi, ngay cả khi các chức năng vẫn như cũ
- Đối với các bản sửa lỗi khẩn cấp ( hoặc chỉ là một tập hợp con)
-
Bộ kiểm tra hồi quy tự động
- Phát triển theo thời gian
- Thường xuyên được chạy
- Có thể trở nên khá lớn
-
Duy trì các gói thử nghiệm hồi quy gồm:
- Loại bỏ các test lặp đi lặp lại ( Test những cái đã được test trong các điều kiện thử nghiệm tương tư)
- Kết hợp giữa các test cases
- Lựa chọn 1 tập con khác của bộ kiểm tra hồi quy đầy đủ để chạt mỗi khi thực hiện test hồi quy
- Loại bỏ các test mà không tìm được lỗi trong thời gian dài
-
Test hồi quy và test tự dộng
- Tool chạy tự động là các tool để test hồi quy, chúng chạy đi chạy lại các test case
- Một khi được tự động thì các test hồi quy được chạy thường xuyên hơn
- Các test tự động là rất có ý nghĩa ( tiết kiệm khoảng 2-10 lần so với chạy bằng tay)
- Đừng chạy tự động mọi thứ – kế hoạch chỉ chạy những cái gì tự động trước thì chỉ làm tự động những cái đó thôi
1.5.6 Kết quả mong đợi của testing
-
Dự đoán kết quả mong đợi là 1 phần trong quy trình thiết kế test case
- Oracle giả định là giả định rằng kết quả chính xác có thể được dự đoán
1.5.7 Thứ tự ưu tiên
- Chúng ta không thể test mọi thứ
- KHông bao giờ có đủ thời gian để test mọi thứ bạn muốn
-
Thế thì bạn nên test cái gì?
Nguyên lý quan trọng nhất
Làm thế nào để phân thứ tự ưu tiên- Các tiêu chí xếp bậc có thể lấy ( dựa vào risks): – Kiểm tra nơi lỗi xảy ra nghiêm trọng nhất – Kiểm tra nơi lỗi nhìn thấy rõ nhất – Hỏi khách hàng về thứ tự ưu tiên của yêu cầu – Tiêu chí quan trọng nhất đối với việc kinh doanh của khách hàng – Tất cả các vùng thường xuyên bị thay đổi – Tất cả các vùng có vấn đề nhiều nhất trong quá khứ – Hầu hết các khu vực phức tạp, hoặc kỹ thuật quan trọng.
Bài viết được tham khảo tại:” http://www.istqb.org/downloads/send/2-foundation-level-documents/3-foundation-level-syllabus-2011.html4″
All rights reserved
Là một chuyên viên kiểm thử phần mềm hoặc đang quan tâm đến lĩnh vực kiểm thử, chắc chắn bạn sẽ quan tâm đến
chứng chỉ ISTQB
cấp độ
Foundation
vì chứng chỉ này sẽ giúp chứng minh bạn đã nắm được các kiến thực thực tế cần thiết cho công việc này.
ISTQB
có thể nói là một chứng chỉ khá quan trọng đối với các bạn đang theo đuổi nghề kiểm thử, do đó, thường để đảm bảo tỷ lệ thi đậu cao hơn thì nhiều bạn lựa chọn tham gia một khóa luyện thi chứng chỉ ở Trung tâm – với học phí hiện khoảng 2 đến 4 triệu cho khóa luyện thi
ISTQB Foundation
. Tuy nhiên, bạn hoàn toàn có thể tiết kiệm khoản phí này bằng cách tự luyện thi ở nhà bằng cách tham khảo các bí quyết và tài liệu dưới đây:
Trước hết, chúng ta hãy cùng tìm hiểu những lợi ích của
chứng chỉ ISTQB
.
Chứng chỉ ISTQB là gì? Lợi ích khi có chứng chỉ ISTQB?
ISTQB®
(International Software Testing Qualifications Board) là một tổ chức phi lợi nhuận cung cấp chứng chỉ thẩm định chất lượng của kiểm thử phần mềm có giá trị toàn cầu.
ISTQB® Certified Tester là một chứng chỉ do
ISTQB®
cung cấp. Đây là một chứng chỉ tiêu chuẩn dành cho những người thực hiện việc kiểm thử phần mềm (Software tester). Tính đến tháng 01 năm 2021,
ISTQB®
đã tổ chức hơn 1.030.000 kỳ thi và cấp hơn 750.000 chứng chỉ tại 129 quốc gia trên toàn thế giới.
1.Các cấp độ của chứng chỉ ISTQB
-
ISTQB Foundation Level (CTFL)
: Mức độ cơ bản -
ISTQB Advanced Level (CTAL)
: Mức độ nâng cao, bao gồm các nội dung:-
Test Manager
-
Test Analyst
-
Technical Test Analyst
-
-
ISTQB Expert Level
: Mức độ chuyên gia
Bạn có thể tìm hiểu chi tiết hơn về chứng chỉ ISTQB tại bài viết:
Tất tần tật thông tin về chứng chỉ
ISTQB® – Chứng nhận kiểm thử phần mềm quốc tế
.
1.Lợi ích khi có chứng chỉ ISTQB
-
Đây là chứng nhận về kỹ năng có giá trị toàn cầu mà các nhà tuyển dụng rất tin tưởng. Các chuyên gia kiểm thử phần mềm sẽ chứng minh được kiến thức, sự chuyên nghiệp khi làm việc trong lĩnh vực này.
-
Việc đạt được chứng chỉ này sẽ giúp bạn xây dựng và phát triển các kỹ năng hỗ trợ cho sự nghiệp tương lai, đồng thời giúp bạn tăng mức độ cạnh tranh trong thị trường lao động.
-
Giúp nâng cao uy tín nghề nghiệp, người có chứng chỉ sẽ được sử dụng logo ISTQB® “Certified Tester” và được công nhận ở bất kỳ đất nước nào.
-
Chứng chỉ ISTQB
không có thời hạn
.
Bí quyết tự học để đạt chứng chỉ ISTQB:
2.Chuẩn bị trước khi ôn luyện:
Trước khi bước vào việc ôn tập, bạn cần phải nghiên cứu và nắm rõ về đề thi như:
Cấu trúc bài thi, thời gian làm bài và điểm số đậu
. Đây là bước rất quan trọng, vì nếu bạn bỏ qua bước này và bước vào ôn luyện ngay, bạn sẽ không biết phải tập trung vào phần kiến thức nào, cũng như không đặt ra được mục tiêu cụ thể cho bản thân mình. Điều này sẽ làm bạn mất thời gian hơn và có thể dẫn đến tỷ lệ đậu thấp.
Thông tin về kỳ thi ISTQB cấp độ Foundation:
-
Hình thức thi: Online hoặc Offline
-
Hình thức câu hỏi: Trắc nghiệm – 40 câu
-
Ngôn ngữ: Tiếng Anh
-
Điểm trúng tuyển: 26/40 (65% trở lên)
-
Thời gian thi: 60 phút nếu làm bài thi online, 90 phút nếu làm bài thi offline
Chi tiết phân bố câu hỏi trong đề thi
Exam
Number of questions per chapter
Ch. 1
Ch.2
Ch.3
Ch.4
Ch.5
Ch.6
Total
Foundation
7
6
3
12
8
4
40
Là một chuyên viên kiểm thử phần mềm hoặc đang quan tâm đến lĩnh vực kiểm thử, chắc chắn bạn sẽ quan tâm đến
chứng chỉ ISTQB
cấp độ
Foundation
vì chứng chỉ này sẽ giúp chứng minh bạn đã nắm được các kiến thực thực tế cần thiết cho công việc này.
ISTQB
có thể nói là một chứng chỉ khá quan trọng đối với các bạn đang theo đuổi nghề kiểm thử, do đó, thường để đảm bảo tỷ lệ thi đậu cao hơn thì nhiều bạn lựa chọn tham gia một khóa luyện thi chứng chỉ ở Trung tâm – với học phí hiện khoảng 2 đến 4 triệu cho khóa luyện thi
ISTQB Foundation
. Tuy nhiên, bạn hoàn toàn có thể tiết kiệm khoản phí này bằng cách tự luyện thi ở nhà bằng cách tham khảo các bí quyết và tài liệu dưới đây:
Trước hết, chúng ta hãy cùng tìm hiểu những lợi ích của
chứng chỉ ISTQB
.
Chứng chỉ ISTQB là gì? Lợi ích khi có chứng chỉ ISTQB?
ISTQB®
(International Software Testing Qualifications Board) là một tổ chức phi lợi nhuận cung cấp chứng chỉ thẩm định chất lượng của kiểm thử phần mềm có giá trị toàn cầu.
ISTQB® Certified Tester là một chứng chỉ do
ISTQB®
cung cấp. Đây là một chứng chỉ tiêu chuẩn dành cho những người thực hiện việc kiểm thử phần mềm (Software tester). Tính đến tháng 01 năm 2021,
ISTQB®
đã tổ chức hơn 1.030.000 kỳ thi và cấp hơn 750.000 chứng chỉ tại 129 quốc gia trên toàn thế giới.
1.Các cấp độ của chứng chỉ ISTQB
-
ISTQB Foundation Level (CTFL)
: Mức độ cơ bản -
ISTQB Advanced Level (CTAL)
: Mức độ nâng cao, bao gồm các nội dung:-
Test Manager
-
Test Analyst
-
Technical Test Analyst
-
-
ISTQB Expert Level
: Mức độ chuyên gia
Bạn có thể tìm hiểu chi tiết hơn về chứng chỉ ISTQB tại bài viết:
Tất tần tật thông tin về chứng chỉ
ISTQB® – Chứng nhận kiểm thử phần mềm quốc tế
.
1.Lợi ích khi có chứng chỉ ISTQB
-
Đây là chứng nhận về kỹ năng có giá trị toàn cầu mà các nhà tuyển dụng rất tin tưởng. Các chuyên gia kiểm thử phần mềm sẽ chứng minh được kiến thức, sự chuyên nghiệp khi làm việc trong lĩnh vực này.
-
Việc đạt được chứng chỉ này sẽ giúp bạn xây dựng và phát triển các kỹ năng hỗ trợ cho sự nghiệp tương lai, đồng thời giúp bạn tăng mức độ cạnh tranh trong thị trường lao động.
-
Giúp nâng cao uy tín nghề nghiệp, người có chứng chỉ sẽ được sử dụng logo ISTQB® “Certified Tester” và được công nhận ở bất kỳ đất nước nào.
-
Chứng chỉ ISTQB
không có thời hạn
.
Bí quyết tự học để đạt chứng chỉ ISTQB:
2.Chuẩn bị trước khi ôn luyện:
Trước khi bước vào việc ôn tập, bạn cần phải nghiên cứu và nắm rõ về đề thi như:
Cấu trúc bài thi, thời gian làm bài và điểm số đậu
. Đây là bước rất quan trọng, vì nếu bạn bỏ qua bước này và bước vào ôn luyện ngay, bạn sẽ không biết phải tập trung vào phần kiến thức nào, cũng như không đặt ra được mục tiêu cụ thể cho bản thân mình. Điều này sẽ làm bạn mất thời gian hơn và có thể dẫn đến tỷ lệ đậu thấp.
Thông tin về kỳ thi ISTQB cấp độ Foundation:
-
Hình thức thi: Online hoặc Offline
-
Hình thức câu hỏi: Trắc nghiệm – 40 câu
-
Ngôn ngữ: Tiếng Anh
-
Điểm trúng tuyển: 26/40 (65% trở lên)
-
Thời gian thi: 60 phút nếu làm bài thi online, 90 phút nếu làm bài thi offline
Chi tiết phân bố câu hỏi trong đề thi
Exam
Number of questions per chapter
Ch. 1
Ch.2
Ch.3
Ch.4
Ch.5
Ch.6
Total
Foundation
7
6
3
12
8
4
40
International Software Testing Qualifications Board (ISTQB) là một tổ chức phi lợi nhuận thành lập năm 2002. Đây là tổ chức cung cấp chứng chỉ thẩm định chất lượng kiểm thử phần mềm và có giá trị vĩnh viễn trên toàn cầu.
Sở hữu chứng chỉ ISTQB sẽ giúp bạn chứng minh được được kiến thức, sự chuyên nghiệp của mình trong lĩnh vực kiểm thử phần mềm. Điều này giúp thúc đẩy sự phát triển trong sự nghiệp của bạn và mang lại lợi thế cao hơn so với những người đang cùng vị trí.
Chứng chỉ này giúp cho người quản lý của bạn thấy được bạn đã có một nỗ lực để cải thiện chuyên môn của mình trong ngành kiểm thử. ISTQB là chứng chỉ giúp bạn chứng minh được năng lực của mình khi gặp nhà tuyển dụng. Ngoài ra, ISTQB giúp bạn có đủ điểm kiện để nhận được công việc kiểm thử ở bất cứ công ty, doanh nghiệp nào trên thế giới, không giới hạn quốc gia cụ thể.
Hiểu rõ cấu trúc đề thi giúp bạn quyết định những phần kiến thức mình nên tập trung ôn kỹ, các phần nào nhiều câu hỏi và những phần chiếm nhiều điểm số.
Khi bạn đọc các kiến thức trong giáo trình chính hoặc Syllabus, bạn sẽ gặp rất nhiều những định nghĩa, thuật ngữ khó hiểu, khi đó cuốn từ điển này sẽ rất hữu ích. Điều này giúp bạn hiểu chính xác các kiến thức trong tài liệu mà còn giúp tăng điểm khi làm bài, bởi trong đề thi sẽ có một vài câu hỏi về các định nghĩa ấy.
Không phải ai cũng có đủ vốn tiếng Anh nên việc tự đọc một cuốn tài liệu ISTQB tràn ngập tiếng anh thực sự rất mất thời gian. Tuy nhiên, bạn tuyệt đối không dịch sang tiếng Việt để học. Hãy đọc kỹ từng câu, hiểu ý nghĩa và đánh dấu các ý chính trong câu. Tạo một sơ đồ tư duy và đọc đi đọc lại nó hàng ngày.
Nhiều người thường bỏ qua các bài tập cuối chương, vì nghĩ đề thi sẽ không ra bài tập cuối chương và thường tìm kiếm các đề thi online. Tuy nhiên điều này là sai lầm. Đề thi sẽ có rất nhiều các dạng bài tập ở cuối chương nên nếu ôn luyện kỹ sẽ giúp bạn dễ dàng giải quyết được chúng.
Không nên quá tập trung vào các câu hỏi dạng bài tập mà bỏ qua các câu hỏi lý thuyết. Vì trong đề thi chỉ có khoảng 2-3 câu là bài tập, còn lại là lý thuyết.
Các câu hỏi trong đề thi chứng chỉ ISTQB được trình bày theo các tùy chọn gần giống nhau. Bạn nên đọc kỹ câu hỏi và chọn các đáp án thật cẩn thận.
Bài viết trên Anh Tester chia sẻ khóa học từ Udemy để học thi chứng chỉ ISTQB giúp bạn rút được một số kinh nghiệm trong quá trình ôn và luyện thi. Chúc bạn tìm kiếm được tài liệu ISTQB phù hợp để ôn tập hiệu quả và đạt chứng chỉ ISTQB trong thời gian tới nhé!
💚 Bài viết này giới thiệu nội dung đề cương ISTQB CTFL mới nhất ISTQB® 4.0 được phát hành vào ngày 09.05.2023. Bạn có thể xem nội dung đề cương online hoặc tải về ISTQB® 4.0 theo đường dẫn bên dưới.
1.3 Seven Principles of Testing
Testing shows presence of defects
- Kiểm tra có thể chỉ ra rằng có defect, nhưng không thể chứng minh rằng không có defect.
- Kiểm tra làm giảm xác suất các lỗi chưa được phát hiện còn lại trong một phần mềm nhưng, ngay cả khi không defect được tìm thấy, nó không phải là bằng chứng về tính đúng đắn
Exhaustive testing is impossible – Complete test
- Kiểm tra mọi thứ (tất cả sự kết hợp của đầu vào và điều kiện tiên quyết) là không khả thi
- Thay vì kiểm tra toàn diện, phân tích rủi ro và các ưu tiên nên được sử dụng để tập trung các nỗ lực kiểm tra tập trung trong testing
Early testing
- Các hoạt động kiểm thử nên bắt đầu càng sớm càng tốt trong vòng đời phát triển phần mềm hoặc phần mềm chu kỳ và nên tập trung vào các mục tiêu đã xác định
- Thực hiện sớm các hoạt động thiết kế kiểm tra và xem xét có thể phát hiện sớm các defect khi chúng còn rẻ để tìm và sửa chữa.
Defect clustering: defect density
- Một số lượng nhỏ các mô-đun thường chứa hầu hết các lỗi được phát hiện trong quá trình phát hành trước thử nghiệm hoặc chịu trách nhiệm cho hầu hết các lỗi vận hành
- Quy tắc 80/20: Lỗi mô-đun thường chứa 80% defect
Pesticide paradox
- Nếu các phép thử giống nhau được lặp đi lặp lại nhiều lần mà không tìm ra được defect mới.
- Để khắc phục nghịch lý thuốc trừ sâu này, các test case cần phải được thường xuyên rà soát, sửa đổi, test mới và khác đi để tìm ra nhiều lỗi tiềm ẩn hơn.
Testing is context dependent
- Thử nghiệm được thực hiện khác nhau trong các ngữ cảnh khác nhau
Absence of error fallacy
- Tất cả các yêu cầu cụ thể và sửa chữa tất cả các lỗi được tìm thấy vẫn có thể tạo ra một hệ thống khó để sử dụng, điều đó không đáp ứng nhu cầu và mong đợi của người dùng hoặc kém hơn so với hệ thống cạnh tranh.
ISTQB là gì và tại sao cần thi ISTQB?
ISTQB (International Software Testing Qualifications Board) là một tổ chức phi lợi nhuận được thành lập từ năm 2002, cung cấp chứng chỉ thẩm định chất lượng kiểm thử phần mềm có giá trị toàn cầu.
ISTQB® Certified Tester là chứng chỉ được công nhận trên toàn thế giới do ISTQB cung cấp dành cho những người làm trong lĩnh vực kiểm thử phần mềm.
ISTQB® hiện đang cung cấp 3 mức chứng nhận:
- ISTQB Foundation Level (CTFL): tương ứng với mức cơ bản
- ISTQB Advanced Level (CTAL): tương ứng với mức độ nâng cao, bao gồm các nội dung:– Test Manager– Test Analyst– Technical Test Analyst
- ISTQB Expert Level: tương ứng mức độ chuyên gia
Vì sao bạn nên thi ISTQB?
- Việc sở hữu chứng chỉ ISTQB sẽ giúp các chuyên gia kiểm thử phần mềm chứng minh được kiến thức, sự chuyên nghiệp trong lĩnh vực kiểm thử phần mềm. Điều này có thể giúp thúc đẩy sự nghiệp của bạn và phân biệt bạn với những người còn lại đang tranh giành vị trí.
- Chứng nhận này cũng cho người quản lý/ người phỏng vấn của bạn thấy rằng bạn đã thực hiện một nỗ lực để cải thiện chuyên môn của bạn trong ngành Kiểm Thử này như thế nào. Khi mọi người đang tìm cách để trình bày kỹ năng của họ cho nhà tuyển dụng nhìn thấy, thì giấy chứng nhận sẽ là một cách tuyệt vời để chứng minh năng lực chuyên môn của mỗi cá nhân đúng không nào?
- Chứng nhận ISTQB giúp bạn đủ điều kiện để nhận được công việc kiểm thử ở bất cứ nơi nào trên thế giới này, không như các chứng nhận khác chỉ được công nhận tại các quốc gia cụ thể.
- Và một điều làm cho ISTQB thu hút nữa chính là chứng chỉ này không bao giờ hết hạn.
Tổng Kết
Trên đây mình đã giới thiệu cho các bạn một số phần liên quan đến nguyên tắc kiểm thử phần mềm, mình sẽ giới thiệu tiếp 1.4 và 1.5 ở phần 2 của bài viết. Rất mong nhận được sự đóng góp từ quý bạn đọc để bài viết của mình được hoàn thiện hơn. Chúc mọi người luôn hạnh phúc và an nhiên trong cuộc sống!
Tài liệu tham khảo: https://astqb.org/assets/documents/CTFL-2018-Syllabus.pdf
All rights reserved
Học ISTQB foundation qua Youtube bằng hình ảnh trực quan được tạo bởi chị Thinh khá đầy đủ nội dung học
Giới thiệu về ISTQB, cấu trúc đề thi và cách luyện thi ISTQB foundation :
ISTQB chapter 1 Fundamentals of test part 1:
ISTQB chapter 1 Fundamentals of test part 2:
ISTQB chapter 2 test process part 1:
ISTQB chapter 2 test process part 2:
ISTQB chapter 3 Static testing part 1:
ISTQB chapter 3 Static testing part 2:
ISTQB chapter 4 Test design technical part 1:
ISTQB chapter 4 Test design technical part 2:
ISTQB chapter 5 Test management part 1:
ISTQB chapter 5 Test management part 2:
ISTQB chapter 5 Test management part 3 :
ISTQB chapter 5 Test management part 4:
ISTQB chapter 6 Test tools part 1 :
Nội dung bài học
Bạn sẽ học được gì?
- Hiểu rõ các khái niệm cơ bản trong Testing
- Có được các kỹ thuật thiết kế test cases, phương pháp test và quản lý hoạt động test
- Tự tin tham gia thi ISTQB Advanced
- Nâng cao hiệu quả công việc, thăng tiến lên các vị trí cao hơn
- Được trang bị kiến thức sâu rộng để thi chứng chỉ
- Tự tin offer mức lương cao
Khóa học Luyện thi chứng chỉ quốc tế ISTQB Foundation Level cho Tester của giảng viên Tạ Thị Thinh, chị đang là Tester trên 15 năm kinh nghiệm sẽ giúp bạn nhanh chóng thi đỗ chứng chỉ ISTQB.
Nội dung được thiết kế theo chuẩn kiểm định phần mềm quốc tế của ISTQB, nhằm cung cấp một phương pháp có hệ thống, thực hành thực tế, ứng dụng các kỹ thuật mới nhất trong vai trò kiểm định phần mềm.
Khóa học ISTQB này sẽ đem lại cho bạn tất cả các khái niệm cơ bản về testing, các kỹ thuật thiết kế test case, phương pháp test và quản lý hoạt động test, lấy chứng chỉ quốc tế ISTQB.
CHƯƠNG TRÌNH LUYỆN THI CHỨNG CHỈ QUỐC TẾ ISTQB FOUNDATION LEVEL
- Thời gian đào tạo: 10 buổi.
- Đối tượng tuyển sinh: Dành cho các đối tượng học viên:
- Công nhân viên chức ngành CNTT
- Các bạn tham gia vào dự án CNTT từ 6 tháng trở lên
- Liên hệ đăng ký học và thi chứng chỉ ISTQB Foundation
- Chị Tạ Thị Thinh
- Skype: ta.thinh0204
- Zalo: 0986775464
- Giới thiệu chương trình:
- Cơ sở xây dựng chương trình: Tham khảo chương trình của Bộ giáo dục và đào tạo
- Dựa vào chương trình Kiểm thử phần mềm theo chuẩn Quốc tế ISTQB mức cơ bản (International Software Testing Qualifications Board – foundation level)
- Khái quát những nội dung cốt lõi: Học viên sẽ được học lý thuyết song song với thực hành, thông qua các buổi thảo luận, làm việc nhóm.
- Khóa học tập trung vào nội dung của ISTQB- foundation level theo chuẩn quốc tế. Nội dung khóa học bao gồm nội dung chú trọng rèn luyện và giúp học viên nâng cao kỹ năng áp dụng trong thực tế.
- Kết thúc khóa học, học viên hoàn toàn đủ kiến thức để đăng ký kỳ thi chứng chỉ quốc tế CTFL của Hiệp Hội Kiểm Thử Phần Mềm Quốc Tế
- Mục tiêu đào tạo:
Sau khóa học, học viên phải đạt được một số kỹ năng như sau:
- Nắm rõ các khái niệm cơ bản theo chuẩn Quốc tế về ngành kiểm thử phần mềm
- Thực hành và thành thạo các phương pháp thiết kế trường hợp kiểm thử, lập kế hoạch kiểm thử, lập báo cáo kiểm thử và các phương pháp quản lý kiểm thử hiệu quả.
- Kỹ năng phân tích và trả lời câu hỏi thi của ISTQB
- Phân bổ thời gian đào tạo:
TT |
Nội dung chương trình |
Fundamentals of testing |
Nền tảng của kiểm thử |
Why is testing necessary? |
Tại sao cần phải kiểm thử? |
What is testing? |
Kiểm thử là gì? |
Testing principles |
Các nguyên tắc kiểm thử |
Fundamental test process |
Nền tảng về quy trình kiểm thử |
The psychology of testing |
Tâm lý kiểm thử |
Answer ISTQB’s questions of this chapter |
Bài tập ôn thi & đáp án |
Testing throughout the software life cycle |
Kiểm thử trong chu kỳ phần mềm |
Software development models |
Các mô hình phát triển phần mềm |
Test levels |
Các mức độ kiểm thử |
Test types: the targets of testing |
Các loại kiểm thử: Mục tiêu kiểm thử |
Maintenance testing |
Kiểm thử bảo trì |
Answer ISTQB’s questions of this chapter |
Bài tập ôn thi & đáp án |
Static techniques |
Các kỹ thuật tĩnh |
Reviews and the test process |
Rà soát và quy trình kiểm thử |
Review process |
Quy trình rà soát |
Static analysis by tools |
Phân tích tĩnh bằng công cụ |
Answer ISTQB’s questions of this chapter |
Bài tập ôn thi & đáp án |
Test design techniques |
Những kỹ thuật thiết kế kiểm thử |
Identifying test conditions and designing test cases |
Nhận dạng những điều kiện và thiết kế test cases |
Categories of test design techniques |
Phân loại các kỹ thuật thiết kế kiểm thử |
Specification-based or black-box techniques |
Kỹ thuật Specification-based hay black-box |
Structure-based or white-box techniques |
Kỹ thuật Structure-based hay white-box |
Experience-based techniques |
Kỹ thuật Experience-based |
Choosing a test technique |
Lựa chọn kỹ thuật kiểm thử |
Answer ISTQB’s questions of this chapter |
Bài tập ôn thi & đáp án |
Test management |
Quản lý kiểm thử |
Test organization |
Tổ chức kiểm thử |
Test plans, estimates, and sthửtegies |
Lập kế hoạch, ước lượng, và chiến lược kiểm thử |
Test progress monitoring and control |
Giám sát và kiểm soát tiến trình kiểm thử |
Configuration management |
Quản lý cấu hình |
Risk and testing |
Rủi ro và kiểm thử |
Incident management |
Quản lý sự cố |
Answer ISTQB’s questions of this chapter |
Bài tập ôn thi & đáp án |
Tool support for testing |
Công cụ hỗ trợ kiểm thử |
Types of test tool |
Các loại công cụ kiểm thử |
Effective use of tools: Potential benefits and risk |
Sử dụng những công cụ hiệu quả: Lợi ích và rủi ro tiềm năng |
Introducing a tool into an organization |
Giới thiệu công cụ vào tổ chức |
Answer ISTQB’s questions of this chapter |
Bài tập ôn thi & đáp án |
Luyện đề và ôn thi chứng chỉ |
Chúc các bạn học tập vui vẻ và sớm thi đạt lấy chứng chỉ ISTQB ngon lành nhé 🙌
University: Trường Đại học Mở Hà Nội
Students also viewed
Related documents
- Tieng anh chuyen nganh Bài luyện tập trắc nghiệm 01 – LTTN01
- Tieng anh chuyen nganh Bài luyện tập trắc nghiệm 02 – LTTN02
- 123doc luan van thac si hoan thien he thong kiem soat noi bo tai cong ty tai chinh trach nhiem huu han mot thanh vien mirae asset viet nam
- Đề bài “Quản lý kinh doanh rạp chiếu phim”
- BTL SQL Quan Ly Kham Benh Tai Benh Vien
- BT2 – wellcome
Preview text
Bản quyền thuộc về QRS-website: qr-solutions.com
Xem Online Đề Cương ISTQB 2018
ISTQB-CTFL_Syllabus_2018_V3.1
Hoặc bạn có thể tải về từ trang gốc https://www.istqb.org/downloads
7 BƯỚC TỰ HỌC ĐỂ ĐẠT CHỨNG CHỈ ISTQB FOUNDATION
25/12/2019 11470
Nếu bạn đang quan tâm đến chứng chỉ ISTQB, chắc hẳn bạn đang làm việc như một chuyên viên kiểm thử phần mềm hoặc đang tìm kiếm cơ hội làm việc trong lĩnh vực này. Thông thường, bạn sẽ cần đầu tư một khoản học phí từ 2-4 triệu cho 1 khóa luyện thi ISTQB Foundation. Tuy nhiên, bạn cũng hoàn toàn có thể tiết kiệm bằng cách tự học với những hướng dẫn và giáo trình mà CO-WELL đề xuất dưới đây.
1.2 Why is Testing Necessary
- Kiểm tra nghiêm ngặt các thành phần và hệ thống cũng như tài liệu liên quan của chúng, có thể giúp giảm rủi ro thất bại xảy ra trong quá trình vận hành.
- Khi các defect được phát hiện và sau đó được khắc phục, điều này góp phần vào chất lượng của các thành phần hoặc hệ thống.
- Kiểm thử phần mềm cũng có thể bắt buộc phải đáp ứng các yêu cầu theo hợp đồng hoặc pháp lý hoặc các tiêu chuẩn cụ thể của ngành.
1.2.1 Testing’s Contributions to Success
Phase | Contribute |
Tester tham gia vào việc xem xét các yêu cầu hoặc sàng lọc yêu cầu người dùng có thể phát hiện lỗi | Giảm nguy cơ sai hoặc không thể kiểm tra được chức năng đang được phát triển |
Tester làm việc chặt chẽ với designer trong khi hệ thống đang được thiết kế có thể tăng cường hiểu biết và cách kiểm tra nó | Giảm nguy cơ mắc các lỗi thiết kế cơ bản và giúp xác định sớm |
Tester làm việc chặt chẽ với developers có thể làm tăng sự hiểu biết và cách kiểm tra nó | Giảm nguy cơ lỗi trong code và test |
Tester xác minh và xác thực phần mềm trước để phát hành có thể phát hiện các lỗi | Tăng khả năng đáp ứng nhu cầu của phần mềm với các bên liên quan |
1.2.2 Quality Assurance & Testing
Mặc dù mọi người thường sử dụng cụm từ đảm bảo chất lượng (hoặc chỉ QA) để chỉ việc Test, đảm bảo chất lượng và thử nghiệm không giống nhau, nhưng chúng có liên quan với nhau. Một khái niệm lớn hơn, quản lý chất lượng, gắn kết chúng với nhau. Quản lý chất lượng (QM) bao gồm tất cả các hoạt động chỉ đạo và kiểm soát một tổ chức về chất lượng.
- Trong số các hoạt động khác, quản lý chất lượng bao gồm cả đảm bảo chất lượng (QA Quality Assurance ) và kiểm soát chất lượng (QC Quality Control). Chất lượng sự đảm bảo thường tập trung vào việc tuân thủ các quy trình thích hợp, để cung cấp sự tin tưởng rằng mức chất lượng thích hợp sẽ đạt được. Khi các quy trình được thực hiện đúng cách, các sản phẩm làm việc được tạo ra bởi các quy trình đó thường có chất lượng cao hơn, góp phần ngăn ngừa defect.
- QC Kiểm soát chất lượng liên quan đến các hoạt động khác nhau, bao gồm các hoạt động thử nghiệm, hỗ trợ việc đạt được các mức chất lượng thích hợp. Hoạt động kiểm thử là một phần của quá trình phát triển hoặc bảo trì phần mềm tổng thể quá trình.
1.2.3 Errors, Defects, and Failures
Một người có thể mắc lỗi (Mistake/Error), điều này có thể dẫn đến việc đưa ra một khiếm khuyết (Defect/Bug) trong code hoặc trong một số sản phẩm công việc liên quan khác.
Và một số lý do gây ra lỗi (Mistake/Error):
- Áp lực về mặt thời gian
- Sai lầm của con người
- Do kinh nghiệm và kỹ năng không đủ
- Thông tin sai lệch giữa những người tham gia dự án, bao gồm cả thông tin sai lệch về các yêu cầu và thiết kế
- Độ phức tạp của code, thiết kế, kiến trúc, vấn đề cơ bản cần giải quyết và / hoặc công nghệ được sử dụng
- Những hiểu lầm về giao diện nội bộ hệ thống và liên hệ thống, đặc biệt là khi số lượng lớn các tương tác giữa hệ thống và giữa các hệ thống như vậy
- Công nghệ mới, không quen thuộc
- Nguyên nhân gốc rễ của các defect là những hành động hoặc điều kiện sớm nhất góp phần tạo ra các defect .
- Các defect có thể được phân tích để xác định nguyên nhân gốc rễ của chúng, để giảm sự xuất hiện của các defect tương tự trong tương lai.
Bằng cách tập trung vào các nguyên nhân gốc rễ quan trọng nhất, phân tích nguyên nhân gốc rễ có thể dẫn đến quá trình cải tiến giúp ngăn ngừa một số lượng đáng kể các defect trong tương lai được đưa vào.
1.4 Test Process
Quy trình kiểm thử phần mềm thích hợp, cụ thể trong bất kỳ tình huống nào phụ thuộc vào nhiều yếu tố.
1.4.1 Test Process in Context
Các yếu tố ngữ cảnh ảnh hưởng đến quá trình kiểm tra đối với một tổ chức và bao gồm:
-
Mô hình vòng đời phát triển phần mềm và các phương pháp luận của dự án đang được sử dụng
- Mức độ kiểm tra và các loại kiểm tra đang được xem xét
- Rủi ro về sản phẩm và dự án
- Lĩnh vực kinh doanh
-
Các ràng buộc về hoạt động, bao gồm:
- Ngân sách và nguồn lực
- Thang đo thời gian
- Sự phức tạp
- Các yêu cầu về quy định và hợp đồng
- Các chính sách và yêu cầu tổ chức
- Các tiêu chuẩn nội bộ và bên ngoài bắt buộc
Keywords searched by users: istqb foundation tiếng việt
Categories: Tóm tắt 13 Istqb Foundation Tiếng Việt
See more here: kientrucannam.vn
See more: https://kientrucannam.vn/vn/