Tester là gì? Kiểm thử là gì?

Trong bài này viết này, mình sẽ giới thiệu đến các bạn khái niệm về kiểm thử, ai sẽ là người kiểm thử, thời điểm thực hiện quá trình kiểm thử và cùng làm rõ hai khái niệm “Verification”  “Validation” trong kiểm thử. 

1. Kiểm thử là gì? Testing là gì?

Kiểm thử hay còn gọi là testing, là quy trình nhìn nhận một mạng lưới hệ thống hay những thành phần của nó với mục tiêu tìm xem liệu mạng lưới hệ thống có cung ứng những nhu yếu được đã được chỉ định hay không. Nói một cách đơn thuần, kiểm thử được thực thi trên một mạng lưới hệ thống để xác lập bất kể lỗ hổng, những lỗi hoặc những nhu yếu đang bị thiếu hay trái ngược với những nhu yếu thực tiễn đã được đề ra .banquyen png

Bài viết này được đăng tại freetuts.net, không được copy dưới mọi hình thức.

Theo tiêu chuẩn ANSI / IEEE 1059, kiểm thử hoàn toàn có thể được định nghĩa là quy trình nghiên cứu và phân tích những thành phần của ứng dụng để phát hiện sự độc lạ giữa những điều kiện kèm theo của ứng dụng đang sống sót thực tiễn và những điều kiện kèm theo được nhu yếu ( đó là defects / errors / bugs ) và từ đó hoàn toàn có thể nhìn nhận được chất lượng của chất lượng của ứng dụng .

2. Ai là người kiểm thử? Tester là gì?

Người kiểm thử hay còn gọi là tester, họ là những người có trách nhiệm tìm ra lỗi của ứng dụng, điều này sẽ nhờ vào vào quy trình tiến độ và những bên tương quan trong dự án Bất Động Sản. Trong ngành Công nghiệp ứng dụng, những công ty lớn có đội ngũ chuyên chịu nghĩa vụ và trách nhiệm nhìn nhận ứng dụng tăng trưởng trong toàn cảnh những nhu yếu đã được đề ra trước đó. Hơn nữa, những nhà tăng trưởng ( deverloper ) cũng thực thi kiểm thử được gọi là Kiểm thử Đơn vị ( Unit Testing ). Trong hầu hết những trường hợp, những chuyên viên kiểm thử cho một mạng lưới hệ thống trong khoanh vùng phạm vi năng lượng tương ứng của họ hoàn toàn có thể là :

  • Software Tester – Nhân viên kiểm thử phần mềm
  • Software Developer – Nhân viên phát triển phần mềm
  • Project Lead/Manager – Leader hoặc Manager của dự án
  • End User – Người dùng cuối cùng

Các công ty khác nhau cũng sẽ có những pháp luật khác nhau về tên gọi của người kiểm thử ứng dụng dựa trên kinh nghiệm tay nghề và kỹ năng và kiến thức của họ như Software Tester – Nhân viên kiểm thử ứng dụng, Software Quality Assurance Engineer – Kĩ sư bảo vệ chất lượng ứng dụng, QA Analyst – Nhân viên nghiên cứu và phân tích chất lượng ứng dụng …

Không thể kiểm thử bất kỳ lúc nào trong chu kỳ phát triển phần mềm. Hai phần tiếp theo nêu ra khi nào bắt đầu và kết thúc quá trình kiểm thử trong vòng đời phát triển hệ thống.

3. Khi nào bắt đầu kiểm thử?

Kiểm thử sớm làm giảm ngân sách và thời hạn để kiến thiết xây dựng lại và sửa lỗi để chuyển giao loại sản phẩm cho người mua. Tuy nhiên trong tiến trình phát triền ứng dụng, kiểm thử hoàn toàn có thể khởi đầu từ quá trình từ khi có những nhu yếu từ khách hang cho đến khi tiến hành ứng dụng .
Nó cũng nhờ vào vào quy mô tăng trưởng được sử dụng. Ví dụ : trong quy mô Thác nước ( Waterfall Model ), kiểm thử chính thức được triển khai ở quá trình Kiểm thử ( testing phase ). Nhưng trong quy mô Gia tăng ( Incremental Model ), kiểm thử được thực thi ở cuối mỗi chu kỳ luân hồi con. Kiểm thử cho hàng loạt loại sản phẩm ứng dụng được thực thi vào quy trình tiến độ cuối khi hoàn thành xong mẫu sản phẩm .

Kiểm thử được thực hiện theo nhiều dạng khác nhau ở mỗi giai đoạn trong vòng đời phát triển phầm mềm:

  • Trong quá trình thu thập yêu cầu (Requirement Gathering Phase), việc phân tích và xác minh yêu cầu cũng được coi là kiểm thử.
  • Trong giai đoạn thiết kế (Design Phase), rà soát các thiết kế trong giai đoạn thiết kế với mục đích để cải thiện thiết kế cũng được coi là kiểm thử.
  • Kiểm thử được thực hiện bởi lập trình viên khi hoàn thành code cũng được coi là kiểm thử.

4. Khi nào kết thúc kiểm thử?

Rất khó để xác lập thời gian kết thúc kiểm thử, vì kiểm thử là quy trình không có điểm kết thúc và không ai hoàn toàn có thể bảo vệ rằng ứng dụng đã được kiểm tra 100 %. Các điểm sau đây hoàn toàn có thể được xem là thời gian kết thúc kiểm thử :

  • Thời hạn hoàn thành kiểm thử (Testing Deadlines).
  • Thực thi tất cả các testcase đã đề ra.
  • Hoàn thành các chức năng và bao phủ toàn bộ các yêu cầu đã được đề ra.
  • Tỉ lệ lỗi ở dưới một mức nhất định và không có lỗi nghiêm trọng nào được tìm thấy.
  • Quyết định của người quản lý dự án.

5. Phân biệt Xác minh (Verification) & Xác nhận (Validation)

Có 2 khái niệm hay bị nhầm lẫn và thường được sử dụng thay thế sửa chữa cho nhau. Dưới đây là bảng cho thấy sự khác nhau của xác định và xác nhận :

STT
Xác minh
Xác nhận

1
Diễn tả sự quan tâm: “Are you building it right?” (Bạn đang xây dựng nó phải không?)
Diễn tả sự quan tâm: “Are you building the right thing?” (Bạn đang xây dựng là đúng đắn?)

2
Đảm bảo phần mềm đáp ứng tất cả các chức năng.
Đảm bảo các chức năng đáp ứng đúng với  các hành vi dự định, có trong yêu cầu đã đề ra.

3
Việc xác minh cần phải là đầu tiên và bao gồm việc kiểm tra tài liệu, code, v.v…
Xác nhận xảy ra sau khi xác minh và phần chính liên quan đến kiểm tra tổng thể.

4
Hoàn thành bởi Developer.
Hoàn thành bởi Tester.

5
Có các hoạt động tĩnh vì bao gồm thu thập các đánh giá, hướng dẫn và kiểm tra xác minh một phần mềm.
Là các hoạt động động vì bao gồm việc thực thi lại các yêu cầu của phần mềm.

6
Là một quá trình khách quan và không quyết định chủ quan để xác minh phần mềm
Là quá trình chủ quan và bao gồm các quyết định chủ quan về các thức hoạt động của phần mềm.

Như vậy, mình đã trình làng khá cụ thể về kiểm thử. Mong rằng qua bài viết này những bạn sẽ hiểu rõ hơn về kiểm thử trong quá trình tăng trưởng ứng dụng .

Source: kubet
Category: Tải Phầm Mềm

Viết một bình luận