0

Tư duy của Developer và Tester

Người kiểm thử và lập trình viên thường có những suy nghĩ khác nhau, khọ thường suy nghĩ và có cách tiếp cận khác nhau. Lập trình viên nghĩ cách để có thể tạo ra ứng dụng. Trong khi đó, người kiểm thử thì nghĩ cách để phá vỡ ứng dụng. Nhưng người ta chỉ có thể đạt được kết quả mong muốn khi cả Người kiểm thử và Lập trình viên cùng hợp tác làm việc với nhau.

Trong bài viết này, chúng ta sẽ thảo luận về các quan điểm khác nhau của người kiểm thử và lập trình viên, cách họ có thể làm việc cùng nhau để có thể đạt được hiệu quả và thành công.

Tư duy của Lập trình viên và của Người kiểm thử

Tư duy là niềm tin hướng dẫn cách chúng ta xử lý các tình huống, cách chúng ta giải quyết những vấn đề đang xảy ra và những gì chúng ta nên làm. Mỗi người đều có những suy nghĩ khác nhau. Tương tự như vậy, lập trình viên và người kiểm thử cũng có những cách suy nghĩ khác nhau. Một người lập trình viên sẽ suy nghĩ: "Tôi cần xây dựng cái gì, tôi nên làm như thế nào?" Người kiểm thử sẽ hỏi: "Điều gì có thể xảy ra lỗi? Tôi có thể làm gì để tìm ra những khiếm khuyết của phần mềm?". Điều đó không có nghĩa là phương châm của người kiểm thử là làm hỏng phần mềm. Mà người kiểm thử hãy đặt mình vào vị trí của khách hàng, chạy thử nghiệm ứng dụng cho tất cả các trường hợp có thể xảy ra để đảm bảo rằng ứng dụng không bị lỗi khi đưa vào sử dụng thực tế.

Quan điểm của Lập trình viên và người kiểm thử ở các giai đoạn khác nhau của Vòng đời phát triển phần mềm (SDLC)

Vòng đời phát triển phần mềm (SDLC) đóng một vai trò rất quan trọng trong bất kỳ sự phát triển ứng dụng phần mềm nào. Trước đây, kiểm thử phần mềm thường chỉ thực hiện trong giai đoạn phát triển cuối cùng. Tuy nhiên, việc sửa lỗi trong giai đoạn cuối thường rất khó và tốn kém. Do đó, hiện nay, kiểm thử phần mềm diễn ra trong mọi giai đoạn của SDLC. Nó có nghĩa là thử nghiệm bắt đầu ngay từ giai đoạn yêu cầu. Cả lập trình viên và kiểm thử đều trở thành một phần không thể thiếu trong quá trình phát triển ngay từ đầu.

Chúng tôi đã cùng thảo luận và có được ý tưởng ngắn gọn về sự tham gia của lập trình viên và kiểm thử ở các giai đoạn khác nhau của SDLC:

1. Thu thập và Phân tích yêu cầu:

  • Vai trò của Lập trình viên: Sau khi nhận được tài liệu yêu cầu, họ sẽ phân tích yêu cầu và bắt đầu hoàn thiện công nghệ.
  • Vai trò của Kiểm thử: Sau khi phân tích yêu cầu, người kiểm thử sẽ đặt ra các câu hỏi về các chức năng họ sẽ làm. Hoặc nhóm cũng có thể tìm ra những lỗi của yêu cầu. Nó tiết kiệm được thời gian và tiền bạc nếu được phát hiện và sửa chữa ngay ở giai đoạn này.

2. Thiết kế hệ thống

Trong giai đoạn này, kiến trúc, giao diện, module và dữ liệu cho một hệ thống được xác định để đáp ứng các yêu cầu cụ thể.

  • Vai trò của Lập trình viên: Trong giai đoạn này, lập trình viên sẽ xây dựng tài liệu thiết kế hệ thống.
  • Vai trò của Kiểm thử: Người kiểm thử sẽ thực hiện chuẩn bị các kịch bản kiểm thử, dữ liệu kiểm thử để đảm bảo việc kiểm tra ứng dụng diễn ra suôn sẻ. Họ sẽ tạo ra một chiến lược kiểm thử, kế hoạch kiểm thử tích hợp, các trường hợp kiểm thử và dữ liệu kiểm thử.

3. Giai đoạn coding

  • Vai trò của Lập trình viên: Trong giai đoạn này, lập trình viên bắt đầu xây dựng toàn bộ hệ thống bằng cách viết các mã lệnh sử dụng ngôn ngữ lập trình đã chọn.
  • Vai trò của Kiểm thử: Giai đoạn này, người kiểm thử sẽ tiến hành kiểm thử tích hợp. Do đó, họ cần hợp tác chặt chẽ với lập trình viên để giai đoạn này có thể thành công

4. Kiểm thử hệ thống

  • Vai trò của lập trình viên: Trong giai đoạn này, nhóm kiểm thử có thể tìm thấy một số lỗi và thông báo nó cho lập trình viên. Họ tiến hành sửa lỗi và chuyển lại cho kiểm thử kiểm tra lại. Quá trình này diễn ra liên tục cho đến khi phần mềm không có lỗi, hoạt động ổn định và đúng với yêu cầu đặt ra.
  • Vai tro của kiểm thử: Trong giai đoạn này, người kiểm thử thực hiện từ đầu đến kết thúc và họ kiểm tra dưới góc độ người dùng.

5. Giai đoạn bảo trì

  • Vai trò của nhà phát triển: Trong giai đoạn này, lập trình viên thực hiện các việc sau: Sửa lỗi, cập nhật và cải tiến phần mềm
  • Vai trò của kiểm thử: Người kiểm thử đảm bảo hệ thống hoạt động chính xác sau khi phần mềm thay đổi. Giai đoạn này kiểm thử hồi quy được thực hiện

Như vậy, chúng ta thấy rằng lập trình viên v à người kiểm thử tương tác với nhau rất nhiều trong mỗi giai đoạn của vòng đời phát triển phần mềm. Vì vậy, họ phải làm việc cùng nhau như một nhóm duy nhất để đảm bảo dự án thành công.

So sánh tư duy của người kiểm thử và Lập trình viên

Tạo ra các sản phẩm phần mềm là một công việc phức tạp đòi hỏi sự hợp tác của những người có kỹ năng, kiến thức và tư duy khác nhau. Lập trình viên và người kiểm thử phải làm việc cùng nhau để tạo ra và cung cấp các sản phẩm chất lượng. Những người này có thể có quan điểm, nhận thức và kiến thức khác nhau. Để hiểu sự khác biệt trong cách tiếp cận và quan điểm của họ, chúng ta hãy xem xét những điểm sau:

Về cách tiếp cận

Việc kiểm thử và xem xét các ứng dụng khác với phân tích và phát triển của chúng. Công việc của lập trình viên là tạo ra một ứng dụng phần mềm dựa trên những yêu cầu của khách hàng. Trong khi, người kiểm thử mục đích của họ là tìm ra lỗi, những khiếm khuyết của phần mềm để đảm bảo chất lượng cho sản phẩm. Mặc dù cách thức tiếp cận có thể khác nhau, nhưng cả hai vai trò này đều làm việc vì một mục đích chung: tạo ra một sản phẩm ổn định và chất lượng. Trong suốt chu trình phát triển phần mềm, cả developer và tester cùng làm việc trong cùng một dự án nhưng mối quan tâm của họ hoàn toàn đối ngược nhau.

Lập trình viên đóng vai trò của người kiểm thử

Mặc dù, người kiểm thử và lập trình viên là những vai trò riêng biệt, nhưng không có nghĩa là vai trò của họ không thể đảo ngược cho nhau. Lập trình viên thường thực hiện kiểm thử đơn vị trước khi bàn giao sản phẩm sang cho kiểm thử, tuy nhiên, chúng ta biết rằng rất khó để có thể tìm ra lỗi của chính mình. Vì vậy, lập trình viên bàn giao sản phẩm sang để những người kiểm thử thực hiện kiểm tra tất cả các trường hợp một cách độc lập. Việc kiểm tra này sẽ mang lại hiệu quả cao hơn trong việc tìm ra lỗi và những khiếm khuyết của phần mềm.

Trao đổi và nhận xét rõ ràng, lịch sự về các lỗi xảy ra

Trách nhiệm của người kiểm thử là kiểm tra phần mềm theo các yêu cầu quy định và báo cáo lại các lỗi xảy ra của phần mềm. Nhưng đối với lập trình viên, họ thường phản ứng một cách phòng thủ hoặc có thể coi việc báo lỗi này như là một hành động chỉ trích cá nhân. Do đó, người kiểm thử phải rất cẩn thận khi hành động hoặc khi báo lỗi cho lập trình viên.

Tóm lại, đánh giá cao sự khác biệt là điều cần thiết để các nhóm làm việc hiệu quả. Nhưng các cách tiếp cận khác nhau giúp tìm ra các giải pháp và dẫn đến việc cung cấp một sản phẩm chất lượng. Người kiểm thử và lập trình viên làm việc cùng nhau để tạo thành một nhóm có năng lực, có trách nhiệm đảm bảo sản phẩm có chất lượng tốt nhất. Và điều đó chỉ có thể thực hiện được khi cả hai cùng làm việc với sự hiểu biết đúng đắn và phản hồi tích cực.

Nguồn: https://www.toolsqa.com/software-testing/istqb/testers-and-developers-mindsets/


All Rights Reserved

Viblo
Let's register a Viblo Account to get more interesting posts.