STLC (Software Testing Life Cycle) là gì? – w3seo vòng đời kiểm thử
Rate this post
Vòng đời kiểm thử phần mềm (STLC) là một chuỗi các hành động cụ thể được thực hiện trong quá trình kiểm thử để đảm bảo rằng các mục tiêu chất lượng phần mềm được đáp ứng. STLC bao gồm cả xác minh và xác nhận. Trái với suy nghĩ của nhiều người, kiểm thử phần mềm không chỉ là một hoạt động riêng biệt. Nó bao gồm một loạt các hoạt động phương pháp luận để giúp chứng nhận sản phẩm phần mềm của bạn.
Các bài viết liên quan:
STLC là một chiến lược chất lượng cao được liên kết trực tiếp và là một phần của Vòng đời phát triển phần mềm (SDLC), đến lượt nó, là một khuôn khổ với 6 nguyên tắc cốt lõi:
- Requirements analysis;
- Planning;
- Engineering and design;
- Software development;
- Testing;
- Deployment.
Nói một cách dễ hiểu, SDLC là một chu trình mà các hành động ở mỗi giai đoạn được phản ánh trong các giai đoạn tiếp theo.
STLC cũng có các giai đoạn của nó và giao nhau chặt chẽ nhất với SDLC ở giai đoạn thứ năm, mà tôi sẽ mô tả bên dưới.
Sử dụng STLC để làm gì
Khi biết rằng STLC là một tập hợp các thước đo, chúng ta có thể giả định rằng nó bao gồm các giai đoạn khác nhau, chẳng hạn như lập kế hoạch, kiểm soát, thực hiện, tiêu chuẩn hóa, v.v. Tất cả điều này dẫn chúng ta đến thực tế rằng STLC không chỉ cần thiết để kiểm tra sản phẩm đã phát triển mà còn cho những điều sau:
- Loại bỏ những thiếu sót của nó trong giai đoạn phát triển sớm nhất và có lợi nhất;
- Tăng chất lượng và tính minh bạch của quá trình phát triển;
- Kiểm soát tối đa chất lượng của sản phẩm đang được phát triển ở tất cả các giai đoạn của SDLC;
- Ảnh hưởng đến việc áp dụng Agile, Scrum, SAFe, v.v.;
- Cung cấp một sản phẩm chất lượng không chỉ cho Khách hàng mà còn cho Người sử dụng.
Vai trò của STLC trong SDLC
Như đã đề cập trước đó, Vòng đời kiểm thử phần mềm và Vòng đời phát triển phần mềm có liên quan chặt chẽ với nhau, nhưng chúng đồng thời theo đuổi các nhiệm vụ khác nhau của cùng một mục tiêu, cụ thể là:
- thu thập các yêu cầu ở dạng mong muốn và phát triển chức năng đã khai báo (như đối với SDLC);
- phân tích các yêu cầu, hỗ trợ khách hàng và nhóm phát triển, đồng thời xác nhận chất lượng của chức năng đã triển khai (đối với STLC).
Mục tiêu chung là sự hài lòng của khách hàng và đạt được điểm số cao nhất có thể ở các giai đoạn Xác minh và Xác thực.
Vai trò của STLC trong SDLC có thể được biểu diễn bằng biểu đồ đường đôi:
Trường hợp các đường SDLC và STLC di chuyển song song trong hầu hết dự án nhưng bắt đầu hội tụ nhanh chóng trong giai đoạn phát triển phần mềm với sự đồng bộ hóa sâu trong giai đoạn Kiểm tra SDLC. Biểu đồ này có liên quan đến nhiều loại dự án khác nhau, không chỉ những dự án lớn hoặc độc lập, và sẽ giữ nguyên đối với việc thực hiện một nhiệm vụ trong một dự án và ngược lại đối với một dự án có số lần lặp lại rất lớn (nhưng trong trường hợp này, các dòng sẽ phân kỳ và hội tụ thường xuyên hơn).
Các bài viết khác:
Các giai đoạn STLС là gì
STLC có một số giai đoạn được kết nối với nhau và nhìn chung rất giống với hệ thống SDLC. Các giai đoạn này tuần tự và được gọi là:
- Requirement Analysis;
- Test Planning;
- Test Case Development;
- Test Environment Setup;
- Test Execution;
- Test Cycle Closure.
Chúng ta hãy xem xét kỹ hơn từng người trong số họ.
Requirement Analysis
Phân tích yêu cầu là một trong những giai đoạn quan trọng nhất vì đây là lúc bạn có thể sửa các lỗi của dự án gần như hoàn toàn miễn phí. Giai đoạn phân tích yêu cầu cũng xác định nhu cầu tiềm năng về kiểm thử tự động và cho phép thực hiện các tính toán kinh tế về chi phí lao động dựa trên ước tính của dự án. Đây cũng là lúc Tiêu chí đầu vào và Tiêu chí thoát được thảo luận và lập thành văn bản.
Test Planning
Ở giai đoạn này, một kế hoạch kiểm tra được hình thành. Đây là sự cụ thể hóa tất cả các giai đoạn của chính thử nghiệm, thời gian, người tham gia và trách nhiệm. Do đó, chúng tôi nhận được dữ liệu về:
- những người tham gia và vai trò của họ trong thử nghiệm;
- các công cụ kiểm tra cần thiết;
- môi trường thử nghiệm cần thiết.
Test Case Development
Phát triển thử nghiệm ngụ ý sử dụng thử nghiệm thủ công và tự động để đạt được toàn bộ chức năng của phần mềm, với quy trình dựa trên các yêu cầu đã thiết lập trước. Thường xuyên hơn không, các trường hợp kiểm thử để kiểm tra tự động được viết riêng, vì các trường hợp kiểm thử thủ công được mô tả dưới dạng bảng gian lận.
Test Environment Setup
Kế hoạch thử nghiệm làm rõ môi trường thử nghiệm nào nên được sử dụng. Ở giai đoạn STLC này, hệ điều hành và máy ảo được định cấu hình, các công cụ kiểm tra như Selenium, Katalon Studio cũng như môi trường kiểm tra và cơ sở dữ liệu của dự án được triển khai. Chúng tôi cũng yêu cầu DevOps và Quản trị viên nếu cần hỗ trợ.
Test Execution
Các bài kiểm tra được thực hiện dựa trên tài liệu kiểm tra được tạo sẵn và một môi trường kiểm tra được định cấu hình chính xác. Tất cả các kết quả kiểm tra được ghi lại trong Hệ thống quản lý kiểm tra. Các bài kiểm tra đã vượt qua một cách tiêu cực, trong đó kết quả thực tế khác với kết quả mong đợi, được ghi lại là lỗi và được chuyển cho nhóm phát triển để sửa đổi kiểm tra lại sau khi hiệu chỉnh.
Test Cycle Closure
Giai đoạn cuối cùng của STLC là tạo báo cáo thử nghiệm cuối cùng cho khách hàng. Chúng phải bao gồm thời gian đã sử dụng, tỷ lệ phần trăm lỗi được tìm thấy đối với kết quả thử nghiệm dương tính, tổng số lỗi được tìm thấy và sửa. Đối với bộ phận kiểm thử, đây là thời điểm để phân tích công việc của bộ phận này, tổng hợp kết quả, phân tích năng suất của bộ phận này và là cơ hội để đưa ra các đề xuất nhằm cải thiện chất lượng kiểm tra.
Sự kết luận
Bây giờ chúng ta đã biết STLC là gì và nó dùng để làm gì, chúng ta có thể nói biểu đồ tương tác giữa STLC và SDLC sẽ trông như thế nào một cách chắc chắn:
Thực tế là điểm hội tụ gần nhất xảy ra trong giai đoạn “Thực thi kiểm tra” là bằng chứng trực tiếp về tầm quan trọng của kiểm thử trong phát triển phần mềm. Đồng thời, chúng ta thấy rằng một số giai đoạn của STLC và SDLC rất giống nhau về cả tên và nghĩa, điều này cho thấy rằng Vòng đời kiểm thử phần mềm và Vòng đời phát triển phần mềm chắc chắn được liên kết ở tất cả các giai đoạn của phát triển sản phẩm phần mềm.
Một số câu hỏi phổ biến về STLC (Software Testing Life Cycle)
- STLC là gì? Software Testing Life Cycle (STLC) là quá trình kiểm thử phần mềm từ khi bắt đầu đưa ra kế hoạch cho đến khi hoàn thành. Quá trình này bao gồm các hoạt động kiểm tra, đánh giá và kiểm soát để đảm bảo chất lượng phần mềm đáp ứng được yêu cầu.
- STLC bao gồm những giai đoạn nào? STLC bao gồm 6 giai đoạn chính:
- Planning: lập kế hoạch kiểm thử.
- Test design: thiết kế kiểm thử.
- Test execution: thực hiện kiểm thử.
- Result analysis: phân tích kết quả kiểm thử.
- Defect tracking: theo dõi và báo cáo lỗi.
- Test closure: kết thúc kiểm thử.
- Tại sao STLC quan trọng? STLC rất quan trọng trong quá trình phát triển phần mềm vì nó đảm bảo rằng phần mềm đáp ứng được các yêu cầu và tiêu chuẩn chất lượng. STLC cũng giúp giảm thiểu rủi ro và chi phí trong quá trình phát triển phần mềm.
- Test case là gì? Test case là một bộ các bước kiểm thử được thiết kế để kiểm tra tính năng hoặc chức năng của một phần mềm. Test case bao gồm các bước cần thiết để thực hiện kiểm thử, các điều kiện tiên quyết và kết quả mong đợi.
- Tại sao kiểm thử phần mềm là quan trọng? Kiểm thử phần mềm là quan trọng để đảm bảo rằng phần mềm hoạt động đúng và đáp ứng được yêu cầu của khách hàng. Kiểm thử phần mềm cũng giúp giảm thiểu các lỗi và tăng tính ổn định của phần mềm. Nếu phần mềm không được kiểm thử kỹ lưỡng, nó có thể dẫn đến các lỗi không mong muốn và ảnh hưởng đến trải nghiệm của người dùng cuối.
- Làm thế nào để thực hiện kiểm thử đơn vị (unit testing) trong STLC?
- Trong STLC, kiểm thử đơn vị thường được thực hiện bởi nhà phát triển. Để thực hiện kiểm thử đơn vị, người phát triển cần viết các test case đơn vị để kiểm tra các chức năng cụ thể của code. Test case đơn vị bao gồm các bước để kiểm tra kết quả đầu ra của các hàm, phương thức hoặc lớp. Kiểm tra đơn vị thường được thực hiện bằng các framework như JUnit, NUnit, hay PHPUnit.
- Trong STLC, điều gì làm nên kiểm thử tích hợp (integration testing)?
- Kiểm thử tích hợp là một phần quan trọng của STLC và nó đảm bảo rằng các phần mềm khác nhau được tích hợp với nhau một cách hiệu quả. Kiểm thử tích hợp kiểm tra các thành phần phần mềm được tích hợp với nhau để đảm bảo rằng chúng hoạt động đúng cách. Kiểm thử tích hợp có thể được thực hiện theo các phương pháp khác nhau như kiểm thử theo mô-đun, kiểm thử theo giao diện, kiểm thử hệ thống.
- Làm thế nào để thực hiện kiểm thử chấp nhận (acceptance testing) trong STLC?
- Kiểm thử chấp nhận là một phần của STLC và đảm bảo rằng phần mềm đáp ứng yêu cầu của khách hàng. Kiểm thử chấp nhận có thể được thực hiện bằng nhiều phương pháp khác nhau như kiểm thử chấp nhận người dùng (user acceptance testing – UAT) hoặc kiểm thử chấp nhận hệ thống (system acceptance testing – SAT). Kiểm thử chấp nhận thường được thực hiện bởi khách hàng hoặc người sử dụng cuối cùng của phần mềm để đảm bảo rằng phần mềm đáp ứng các yêu cầu của họ.