Sự khác biệt dưới góc nhìn của "Tester" và "Developer"

Feb 25, 2021

Trong bài viết này, chúng ta sẽ thấy những quan điểm khác nhau của các Tester và Developer và các mối quan hệ của họ để làm nên một ứng dụng hoàn hảo.

Mục đích của Tester và Developer là giống nhau, đều muốn cung cấp một sản phẩm chất lượng cho khách hàng. Nhưng cách suy nghĩ của họ lại khác nhau.

Không sai khi nói: "Tester và Developer không khác nhau mà họ chỉ theo mỗi con đường khác nhau để đạt được cùng một mục tiêu".

con gái học kiểm thử

Developer nghĩ: "Làm thế nào để có thể làm các ứng dụng?”

Tester nghĩ: "Làm thế nào để có thể phá vỡ các ứng dụng?”

Tester và Developer hoạt động như Tom và Jerry. Nhưng kết quả cuối cùng là tích cực chỉ khi cả hai đều làm việc cùng nhau.

Bằng cách nói "Làm thế nào tôi có thể phá vỡ các ứng dụng" nó không có nghĩa là phương châm của một Tester là để làm hỏng công việc được thực hiện bởi các Developer. Nó có nghĩa là những người Tester suy nghĩ ngoài khuôn khổ và đặt mình vào vị trí của khách hàng, áp dụng tất cả các kịch bản có thể vào ứng dụng.

Đối với bất kỳ Developer ứng dụng phần mềm, chu trình phát triển phần mềm SDLC(Software Development Life-cycle) đóng một vai trò quan trọng. Trước đó, kiểm thử phần mềm đã được thực hiện ở giai đoạn cuối cùng của sự phát triển. Nhưng sửa chữa các sai sót/ lỗi ở giai đoạn cuối cùng là rất khó khăn và tốn kém.

Vì vậy, để tránh phức tạp như vậy, bây giờ, kiểm thử phần mềm là một phần của tất cả các giai đoạn của SDLC. Điều này có nghĩa là bắt đầu test từ giai đoạn đầu tiên của Developer.

địa chỉ học kiểm thử uy tín Hà Nội

"Tester" nhìn vào một ứng dụng từ một quan điểm sáng tạo khác nhau và nếu các yêu cầu của end-user được rõ ràng, nó tạo nên nhiều sự khác biệt. Góc nhìn của Tester và Developer tại các giai đoạn khác nhau của SDLC:

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

Trong giai đoạn này theo yêu cầu của khách hàng và ứng dụng sẽ có một tài liệu yêu cầu được chuẩn bị.

Chúng ta hãy lấy một rất ví dụ phổ biến: Yêu cầu của end-user là "Không cho phép các ký tự đặc biệt được nhập vào các fields".

Vai trò Developer: viết một đoạn code để chèn một field đầu vào sao cho khi người dùng nhập bất kỳ ký tự đặc biệt, và thông báo lỗi thích hợp được hiển thị.

Quan điểm Tester: Tester đầu tiên sẽ kiểm tra các yêu cầu, sau đó sẽ có nhiều kịch bản trong đầu. Sẽ có những câu hỏi như:

  • Điều gì xảy ra nếu chỉ có ký tự đặc biệt được nhập? Nó sẽ hiển thị cùng một tin nhắn hoặc một tin nhắn khác nhau cho người dùng?
  • Điều gì xảy ra nếu người dùng copy va paste kết hợp của các ký tự đặc biệt và các ký tự chữ và số vào field đó?

Để đánh giá bất kỳ sản phẩm hoặc ứng dụng, Tester phải đặt câu hỏi về một sản phẩm để cover hầu hết các kịch bản vì một người dùng cuối có thể là bất cứ ai và có thể sử dụng các ứng dụng trong bất kỳ cách nào mà họ muốn.

2. Thiết kế hệ thống/ ứng dụng

Sau khi thu thập dữ liệu và sau khi hoàn tất các yêu cầu, các Developer bắt đầu thiết kế của họ trên các ứng dụng. Điều này bao gồm việc xem xét các tài liệu thiết kế trước khi thực hiện.

Tester từ sự hiểu biết của họ và tư duy sáng tạo phân tích tất cả các tình huống có thể cho tất cả các tính năng mới,, tích hợp, cập nhật giao diện.., bất cứ điều gì được đề cập trong yêu cầu.

Họ tạo ra các test case, checklist và dữ liệu test cho ứng dụng.

3. Giai đoạn thực hiện

Trong giai đoạn này, các Developer thực sự thực hiện việc thiết kế hệ thống hoàn chỉnh.

Dưới góc nhìn của Developer, họ đang tập trung vào việc xây dựng các chức năng theo yêu cầu và chức năng sẽ làm việc một cách hoàn hảo và hiệu quả.

Dưới góc nhìn của Tester, khi các Developer tập trung vào việc thực hiện các chức năng, Tester áp dụng tất cả các sáng tạo của mình để kiểm tra chức năng. Cũng có thể là một trường hợp khi các Developer hiểu sai yêu cầu. Và trong trường hợp đó khi Tester áp dụng kịch bản của họ và khả năng chức năng đó bị fail là rất cao.

4. Kiểm tra hệ thống

Các Developer tải lên các ứng dụng với một quan điểm cho rằng: Các chức năng thực hiện được Developer đã hoàn hảo theo yêu cầu quy định; họ chỉ cho các Tester để xác minh lại.

Nhưng đối với Tester, tạo ra rất nhiều cách khác nhau mà một end-user có thể nghĩ để sử dụng một ứng dụng cụ thể. Đó là nhiệm vụ của các Tester để sử dụng tư duy sáng tạo và khám phá mỗi kịch bản tốt.

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

Giai đoạn này là để kiểm tra các nỗ lực kết hợp của Tester và Developer. Các ứng dụng cuối cùng sau khi tất cả thực hiện được gửi đến người dùng sử dụng. Nếu nó hoạt động như mong muốn thì không có vấn đề. Nhưng nếu có bất kỳ sai, nó lại đòi hỏi sự nỗ lực kết hợp của cả hai Tester và Developer trong giai đoạn bảo trì.

Dưới đây là một số điểm quan trọng xác định vai trò của các Testersvà Developer:

  • Trong khi các Developer phải đảm bảo rằng không có lỗi trong những gì họ phát triển, các Tester nên chắc chắn rằng nếu có lỗi,cần được báo cáo và được cố định vào đúng thời điểm.
  • Một Developer nên có những ý kiến phản hồi từ người thử một cách tích cực và mang tính xây dựng.
  • Điều bắt buộc để nói rằng các Developer là 'chuyên gia' trong một khu vực kỹ thuật riêng và họ có thể sử dụng tất cả các kỹ năng, kỹ thuật của họ để phát triển một dự án theo yêu cầu. Tester là của bên thứ ba mà báo cáo lỗi một cách hiệu quả trên cơ sở đó chất lượng của ứng dụng có thể được cải thiện đáng kể.

Làm việc như một Tester:

"Tester" là người không bị ảnh hưởng bởi các ứng dụng được Developer và Tester giữ ý kiến của riêng mình dựa trên kinh nghiệm thực tế, thực hành, sử dụng các ứng dụng với tất cả các tình huống có thể.

Một Tester tốt là một người dùng phát hiện được nhiều lỗi trong khi sử dụng một sản phẩm mới. Người dùng tìm hiểu cách sử dụng một sản phẩm mới bằng cách thử và nhìn thấy những gì xảy ra chứ không phải là để đọc hướng dẫn.

Vì vậy, trọng tâm chính của Tester là "Cái gì có thể sai".Trọng tâm chính của các Developer là để cung cấp dự án theo yêu cầu.

Một Tester tốt và một Developer tốt:

Một Tester tốt là một người thoải mái với cuộc xung đột. Nhiều lần nó trở nên rất khó xác định nguồn gốc của các lỗi, nó có thể là một lỗi mã hóa, lỗi tài liệu, lỗi thiết kế... Nhưng đó là công việc của các Tester để report tất cả các lỗi.

Một Developer tốt là một trong những người có thông tin phản hồi một cách tích cực và mang tính xây dựng, chẩn đoán các vấn đề, ​​và debugs nó. Nhưng các Developer thường tránh những xung đột và gây trở ngại.

Phần kết luận:

Tester và Developer cùng nhau làm cho một nhóm hiệu quả vì nó là trách nhiệm của cả hai để đảm bảo sản phẩm tốt nhất. Điều này đạt được nếu cả hai tay làm việc trong tay với sự hiểu biết đúng đắn và lấy ý kiến phản hồi tích cực của nhau.

Tham khảo: viblo.asia

Great! You've successfully subscribed.
Great! Next, complete checkout for full access.
Welcome back! You've successfully signed in.
Success! Your account is fully activated, you now have access to all content.