Học kiểm thử phần mềm 

 - Bài 3 : Tìm hiểu Quy trình SDLC , STLC sẽ  giải thích SDLC (Software Development Life-cycle/chu kỳ phát triển phần mềm) , Software Test Life Cycle - STLC ( Quy tắc kiểm thử) và một số mô hình kiểm thử thường áp dụng 


I. Tình huống 
- Gỉa sử Bạn/ Team bạn/ Công ty nhận một dự án phần mềm của một khách hàng . Việc phát triển  - Kiểm thử - Bàn giao sẽ trải qua các giai đoạn sau: 

1) Thu thập càng nhiều thông tin càng tốt về tất cả các yêu cầu cụ thể về kỷ thuật, logic, giao diện, mục đích sử dụng và các mong muốn khác. Càng cụ thể càng tốt . Đó là giai đoạn  THU THẬP YÊU CẦU PHẦN MỀM  (Requirement Analysis). 

Kiểm thử phần mềm sẽ phụ thuộc rất nhiều vào giai đoạn này và việc kiểm thử bắt đầu luôn tại đây. Những yêu cầu còn mơ hồ hoặc những thắc mắc phải được làm rõ để có 1 kết quả cụ thể nhất . Đây còn được gọi vui là giai đoạn lắng nghe, thấu hiểu và hỏi đáp . 


2) Từ những yêu cầu có được ở giai đoạn 1, Lập kế hoạch cho các ngôn ngữ lập trình như Java, php, .net ...Cơ Sở dữ liệu như Oracle, My SQL,SQL Server...để đáp ứng đầy đủ  với yêu cầu chức năng và yêu cầu kỷ thuật cho các chức năng hiện tại và những yêu cầu trong tương lai có thể được giải quyết. Đây là giai đoạn THIẾT KẾ (Software Architecture/Design). 

Giai đoạn này giúp các kiểm thử viên xác định lựa chọn tool và cài đặt môi trường thích hợp để thực hiện việc kiểm thử phần mềm


3) Sau khi đã có thiết kế, đội ngũ Developer sẽ thực hiện xây dựng phần mềm dựa trên những đặc tả thiết kế . Đây là giai đoạn CODING ( Development). 

Giai đoạn này QC/Tester thường ít " nhúng tay" vào mà để dev tự Unit test cho việc kiểm thử 

4) Tiếp đến,  thử nghiệm các chức năng được xây dựng ở giai đoạn 3  để xác minh rằng nó đúng với yêu cầu của khách hàng . Đây là giai đoạn KIỂM THỬ PHẦN MỀM (Software Testing) .

Giai đoạn chính trong kiểm thử , đây còn được gọi vui là bắt đầu càng quét bug sau những chuẩn bị ở giai đoạn 1,2,3 


5) Một khi sản phẩm phần mềm đã sẵn sàng, Việc bảo trì,nâng cấp để giải quyết các vấn đề nảy sinh hoặc các yêu cầu mới từ khách hàng . Đây sẽ là giai đoạn BẢO TRÌ (Maintenance)

Kiểm thử phần mềm ở giai đoạn này thực hiện việc báo cáo kết quả kiểm thử, đánh giá mức độ thân thiện và cập nhật testcase nếu có yêu cầu

II. Quy Trình phần mềm và Chu kỳ kiểm thử

1- Quy trình phần mềm

Những giai đoạn ở tình huống trên nằm trong chu kỳ phát triển phần mềm . 
Vậy quy trình phát triển phần mềm (SDLC) là gì? Nó là qui trình chung của một tổ chức, trình tự các hoạt động để phát triển 1 ứng dụng. 
Có rất nhiều quy trình phát triền phần mềm khác nhau như : Mô hình thác nước, mô hình chữ V, Mô hình xoắn ốc ...hoặc kết hợp các mô hình.

2-  Qui trình kiểm thử phần mềm (STLC) 

 Là những  hoạt động của QC -Tester Team để kiểm thử một ứng dụng phần mềm. Bao gồm: 

1)  Preparing the test strategy : Phương pháp kiểm thử tiếp cận, xác định chiến lược kiểm thử , tùy theo yêu cầu của khách hàng mà nên ưu tiên những vấn đề nào trước. Thường giai đoạn này ta sẽ tự đặt câu hỏi: Sẽ kiểm thử cái gì và kiểm thử như thế nào 


2) Preparing the test plan: Lập kế hoạch kiểm thử . Xác định và phân chia họp lý thời gian, nhân sự , các tool được sử dụng cho từng chắc năng 


3) Creating the test environment: Chuẩn bị môi trường, nền tảng cho công việc kiểm thử phần mềm, gồm Hệ điều hành(Win 7, win 8, linux , IOS...) , Trình duyệt (IE, Safari, Opera...), thiết bị ( Mobile, tablet, desktop...)


3)Write test cases/Test script: Viết testcase cho các trường họp sẽ test bao gồm cả 3 trường họp : True, Fail và không xác định kết quả ( case nảy sinh, không có trong tài liệu đặc tả (spec) . Viết test script nếu có dùng tool để thực hiện automation test cho test chức năng, giao diện hoặc các kịch bản 


4) Executing the test scripts/ test cases: Thực thi các case trong testcase/test scrips để thực hiện việc kiểm thử, quá trình này có thể có update thêm một số case còn thiếu (nếu có hoặc phát sinh thêm) 


5) Analyzing the results and reporting the bugs: Phân tích kết quả test để tìm hiểu nguyên nhân gây bug định hướng cách khắc phục đồng thời  post bug lên các bug tracking (Jira, mantis...) 


6) Doing regression testing : Test quy hồi sau khi bug đã được fixed. 


7) Test exiting: Kết thúc công việc kiểm thử - báo cáo hoặc ghi lại các kinh nghiệm đã gặp phải trong dự án này. Các vấn đề "can not fix" đồng thời thống kê lại số liệu các bug 
----------------------------------------------------------
http://kiemthuphanmemvvn.blogspot.com/
Face: https://www.facebook.com/KiemThuPhanMemVvn
Group: https://www.facebook.com/groups/1549328495322684/ 
Chọn "Đăng ký nhận bài qua mail" để nhận bài viết mới nhất nhé 

Học kiểm thử phần mềm tự đông 








Xem nhiều nhất

Zui Zui

Nếu bạn không đủ mạnh -Đừng cố đi ngược đám đông