Mục tiêu của kiểm thử phần mềm và các mục đích Tester cần hướng đến
Bài đăng này đã không được cập nhật trong 3 năm
Hiện nay, các tester có nhiều cơ hội để chứng tỏ mình. Tester có vai trò rất quan trọng do sự kỳ vọng của khách hàng và tình trạng gặp sự cố bất ngờ của các công nghệ mới ngày càng tăng. Để bắt kịp với nhu cầu ngày càng tăng chưa từng có về các kỹ năng mới, thì bạn phải nắm bắt được mục đích cần thiết của tester.
- Tester phải xem xét tỉ mỉ từng tí, cẩn trọng không bỏ sót chi tiết nào. Bởi có thể, chỉ cần bỏ lỡ một chi tiết, đầu mối nhỏ thì dự án sẽ không được giải quyết thậm chí còn bị giải quyết sai.
- Tester luôn mong muốn sản phẩm hoàn hảo nhất và ít sai sót nhất trước khi đưa tới tay người tiêu dùng.
- Tester cần phải nghiên cứu vấn đề trước khi bắt đầu làm, rồi đưa ra phương án phát triển và giải quyết vấn đề đó.
Tôi chọn nghề tester vì tester phù hợp với phái nữ nhiều hơn, những người mà không thực sự code giỏi và cũng không thực sự muốn điên đầu vì code. Bởi lẽ tôi học ngành CNTT, trong 4 năm học đại học tôi nhận ra mình không giỏi code.
Vì thế mà theo tôi “ Một tester với niềm đam mê mãnh liệt còn đem lại nhiều lợi ích hơn một developer kinh nghiệm”.
Để trở thành một tester giỏi lại không hề đơn giản, và tất nhiên yêu cầu kiến thức cũng không hề đơn giản.
Trước hết, chúng ta nên tìm hiểu về mục tiêu của kiểm thử phần mềm là gì?
Mục tiêu chính của Kiểm thử phần mềm như sau
- Tìm các bug phát sinh do dev tạo ra khi code.
- Đạt được sự tự tin và cung cấp thông tin về mức độ chất lượng.
- Để ngăn ngừa lỗi.
- Đảm bảo rằng kết quả cuối cùng đáp ứng các yêu cầu kinh doanh và người sử dụng.
- Để đạt được sự tín nhiệm của khách hàng bằng cách cung cấp cho họ một sản phẩm chất lượng.
Kiểm thử phần mềm sẽ giúp hoàn thiện các ứng dụng phần mềm hoặc sản phẩm so với yêu cầu kinh doanh và người sử dụng. Nó là rất quan trọng để đảm bảo kiểm thử tốt để kiểm thử các ứng dụng phần mềm hoàn toàn và chắc chắn rằng nó hoạt động tốt và theo các thông số kỹ thuật.
Việc xác định phạm vi kiểm tra các trường hợp kiểm thử nên được thiết kế tốt với khả năng tối đa của việc tìm kiếm các lỗi hiệu quả và được tính toán là số bug báo cáo cho mỗi trường hợp kiểm thử.
Kiểm tra phần mềm để chắc chắn kiểm thử đang thực hiện đúng cách và hệ thống đã sẵn sàng để sử dụng. Kiểm thử bao phủ các lĩnh vực khác nhau như: chức năng của các ứng dụng, khả năng tương thích của các ứng dụng với các hệ điều hành, phần cứng và các loại khác nhau của các trình duyệt, thực hiện kiểm thử để kiểm tra hiệu năng của các ứng dụng để đảm bảo rằng hệ thống đáng tin cậy và không có trục trặc hay không nên có bất kỳ vấn đề cản trở. Xác định rằng các ứng dụng có thể được triển khai một cách dễ dàng với máy tính và không có bất kỳ sự cố. Do đó các ứng dụng rất dễ dàng để cài đặt, tìm hiểu và sử dụng.
Kiểm thử phần mềm cho phép tạo ra những đánh giá khách quan về mức độ phù hợp của hệ thống các yêu cầu đã nêu và thông số kỹ thuật.
Kiểm tra xác nhận rằng hệ thống đáp ứng các yêu cầu khác nhau bao gồm: chức năng, hiệu suất, độ tin cậy, an toàn, khả năng sử dụng và như vậy. Việc xác nhận này được thực hiện để đảm bảo rằng chúng tôi đang xây dựng hệ thống phù hợp.
Xác nhận để đảm bảo đang xây dựng hệ thống phù hợp. Ngoài việc giúp đưa ra quyết định, các thông tin từ các kiểm thử phần mềm giúp quản lý rủi ro.
Vậy mục đích của các tester là gì?
1. Mục đích đầu tiên là tìm lỗi sản phẩm
- Công việc chính của tester là tìm ra lỗi, nhưng nó không phải là mục đích duy nhất. Tuy nhiên, không nên chỉ gói gọn và kết thúc công việc ở khâu tìm thấy lỗi. Cần mở rộng giới hạn công việc bằng cách đánh giá lại lỗi, mức độ nghiêm trọng, phân loại lỗi để cùng developer đưa ra giải quyết tốt nhất cho sản phẩm. Kiểm thử phần mềm để kiểm tra và xác nhận rằng sản phẩm đáp ứng các yêu cầu đã nêu / thông số kỹ thuật.
2. Ngăn ngừa lỗi còn quan trọng hơn tìm lỗi
-
Bạn sẽ hỏi tại sao tester lại ngăn ngừa lỗi được. Đúng, đó cũng là suy nghĩ đầu tiên của mình. Ngăn ngừa là ở developer mà ? Nhưng không, khi mình test một sản phẩm nào, mình cần hiểu sản phẩm, hiểu chi tiết, cụ thể để có thể test sản phẩm đó đúng. Trong quá trình test, mình sẽ gặp những lỗi tương tự nhau nhưng phát sinh ở những trường hợp khác nhau. Đặc biệt nếu cùng một developer thì sẽ dễ dàng để hiểu được cơ chế phát sinh bug. Từ đó, báo cáo với dev để đưa ra giải pháp ngăn ngừa bug lặp lại ở những sản phẩm tiếp theo.
-
Vấn đề quan trọng nhất đó là đừng bao giờ cho rằng đã hết lỗi. Hạn chế tới mức tối đa việc phát sinh lỗi cũng như đảm bảo sản phẩm ít lỗi nghiêm trọng nhất trước khi đưa tới tay người tiêu dùng. Việc cho rằng sản phẩm đã hết sạch lỗi sẽ làm cho bản thân chủ quan mà không để ý tới những tiểu tiết. Đó là lý do tại sao mình lại ví tester như một điều tra viên vậy.
3. Đánh giá chất lượng sản phẩm
Tất nhiên, nhiệm vụ chính của một tester là tìm bug, nhưng hãy tin tôi đi, leader/quản lý của bạn không quan tâm bạn báo cáo bao nhiêu bug, đó là những bug nào, cái họ quan tâm chính là liệu sản phẩm có thể chuyển tới tay khách hàng đúng thời hạn hay không. Bạn không thể nào khẳng định rằng sản phẩm không còn bất kỳ lỗi gì nhưng bạn cần người biết rõ nhất sản phẩm của bạn có thực sự đạt chuẩn, thực sự đáp ứng được nhu cầu của khách hàng hay không. Do đó, tìm bug và đảm bảo chất lượng sản phẩm tốt nhất trước khi đưa đến tay người dùng mới là điều mà các tester cần nỗ lực.
Kiểm thử phần mềm góp phần nâng cao chất lượng của sản phẩm.
4. Đưa ra những ý tưởng cải thiện sản phẩm
-
Dựa và kinh nghiệm làm việc và thực tế, một tester có thể cùng developer đưa ra những ý kiến để cải thiện sản phẩm tốt hơn, thân thiện với người dùng hơn và phục vụ hiệu quả cho mục đích doanh nghiệp hơn.
-
Nhưng để có được những ý tưởng tốt, bạn không chỉ dừng lại ở việc hiểu sản phẩm, mà còn hiểu các sản phẩm khác trên thị trường, trên internet. Hiểu được cách thức làm và hoạt động của những sản phẩm đang “hot”. Tìm hiểu xu hướng marketing của họ và tất nhiên phân tích, tìm hiểu cả những sản phẩm thất bại. Để làm gì ư? Để bạn có thêm kiến thức, kinh nghiệm cho quá trình test sau này.
-
Cải thiện chất lượng giúp các doanh nghiệp giảm chi phí sau phát hành hỗ trợ và dịch vụ, trong khi tạo ra khách hàng thiện chí mà có thể chuyển thành cơ hội doanh thu lớn hơn.
-
Luôn nhớ “ chất lượng sản phẩm không phải là kết quả của sự ngẫu hứng, mà nó là kết tinh của những nỗ lực không ngừng nghỉ”.
5. Hiểu và làm rõ yêu cầu thực tế của khách hàng
-
Khi bàn giao cho người dùng cuối hoặc các khách hàng mà đảm bảo sản phẩm hoạt động tốt, thì các tester cần biết các khách hàng đang sử dụng sản phẩm này như thế nào và nên viết ra các kịch bản kiểm thử và thiết kế các test case. Điều này sẽ giúp rất nhiều trong việc hoàn thành tất cả các yêu cầu của khách hàng.
-
Khách hàng luôn mong muốn mình sẽ nhận được sản phẩm đúng thời hạn và không còn lỗi. Tuy nhiên, điều đó không hề dễ dàng. Bởi lẽ từ yêu cầu thực tế đưa vào một sản phẩm phầm mềm sẽ có những khác biệt. Khi là một tester, bạn nên cùng nhóm hiểu rõ được những yêu cầu của khách hàng. Càng hiểu rõ, làm rõ yêu cầu của khách hàng, việc viết testcase, tiên đoán những khó khăn xảy ra càng thuận lợi. Vậy nên, giao tiếp, hiểu được yêu cầu thực tế của khách hàng chính là điều mà tester luôn cần quan tâm.
6. Nỗ lực để làm việc hiệu quả trong thời gian hạn hẹp
Bạn cần hiểu rằng, có thể một sản phẩm phầm mềm cần 1 tháng để dev code, nhưng lại chỉ cho bạn 2 ngày để test. Vậy nên, trong 2 ngày ít ỏi đó, vận dụng toàn bộ kiến thức, kinh nghiệm để có thể test hiệu quả nhất. Tất nhiên, thời gian càng hạn hẹp, càng yêu cầu bạn chọn những testcase có độ bao phủ tốt để tìm ra lỗi. Không một khách hàng nào muốn nhận sản phẩm còn đầy lỗi với lý do không có đủ thời gian để test. Vậy nên, luôn tìm cho mình cách làm việc thông minh trong thời gian ít ỏi để mang lại hiệu quả nhất.
7. Luôn luôn giữ cho nhiệt huyết công việc bùng cháy
Có rất nhiều giai đoạn trong sự nghiệp của một tester. Có lúc bạn thấy mình thật nhỏ bé, ít đóng góp trong sự nghiệp phần mềm. Có lúc bị cuốn trôi trong nhịp chảy nhanh chóng mặt của công việc, có lúc thấy nhàm chán. Có lúc thấy băn khoăn liệu hướng kiểm thử của mình có đúng hay không? Nhưng mục tiêu của một tester đó chính là chất lượng sản phẩm tới tay người dùng. Do đó, ngọn lửa nhiệt huyết luôn được nung nấu, sôi sục. Hời hợt, làm cho có chính là “ đại kỵ” với tester. Luôn nhiệt huyết để góp sức tạo ra những sản phẩm chất lượng là mục tiêu mà tester hướng tới.
Kết luận
Tóm lại, Tester không chỉ đơn giản là đi tìm bug, mà là người có cái nhìn tổng quát nhất. Sản phẩm tới tay người dùng là sự kết hợp của kiến thức, kinh nghiệm, kỹ năng, cách nhìn để mang lại sản phẩm tốt nhất. Luôn luôn hướng đến bức tranh tổng thể nhất để cho ra những sản phẩm tốt nhất.
Tài liệu tham khảo
http://forums.testervn.com/showthread.php?p=30878#post30878
http://istqbexamcertification.com/what-is-the-software-testing-objectives-and-purpose/
All rights reserved