Bài viết được sự cho phép của tác giả Tô Thị Vân Anh
Bài viết này được tham khảo từ nguồn https://www.deviqa.com/blog/7-things-to-test-in-your-search-form .
Sau khi mình đọc được đâu đó bản dịch cũng từ nguồn trên thì cảm thấy có gì đó không ổn, phát hiện ra là bài viết tiếng Anh được bê nội dung vào “Gu-gồ” dịch sau đó thì đưa lên làm bài viết. Google dịch giờ thì cũng đã sát nghĩa và đỡ lôm côm rồi, nhưng mà nhiều chỗ cần giải thích, có những đoạn dùng từ hơi đặc thù nên nếu không diễn giải, sử dụng từ phù hợp hơn thì nó vẫn rất là “buồn cười” nhưng nghe vẻ bạn dịch bài viết kia đã không để ý hoặc bạn không quan tâm nên Google dịch thế nào bạn lấy về dùng y như thế khiến mình nghĩ là mình sẽ dịch thử xem sao.
Đúng là dịch rồi thì mới thấy là hơi mông lung =)) các bạn đọc rồi góp ý cho mình với nhé. Có những đoạn thì mình đoán ý người viết rồi viết ra theo cách hiểu của mình. Đây là bài học và kinh nghiệm khi kiểm thử chức năng tìm kiếm cho các ứng dụng web có tính năng này. Mình cũng hi vọng bài viết có ý nghĩa cho tất cả các bạn mới tìm hiểu và làm về kiểm thử.
——–
Hiện nay hầu hết các ứng dụng đều cung cấp chức năng tìm kiếm cho phép người dùng có thể tương tác, tìm kiếm nội dung trên trang web đó. Số lượng các kịch bản kiểm thử cho trường tìm kiếm này có thể nói là vô kể, vì thế việc xác định các yếu tố phù hợp và đảm bảo tính hiệu quả khi thực hiện kiểm thử là một việc rất cần thiết. Bài viết này đưa ra một số gợi ý lớn cần lưu ý cho bạn khi kiểm thử chức năng tìm kiếm.
1. Chuẩn bị tài liệu trước khi kiểm thử
1.1. Tạo một tài liệu để lưu trữ tất cả các dữ liệu đầu vào sẽ được dùng để nhập vào ô tìm kiếm
1.2. Xác định các lớp tương đương và các giá trị biên.
1.3. Xác định rõ các khả năng mà chức năng này có thể đáp ứng khi tìm kiếm, như tìm kiếm tài liệu, tìm kiếm từ trong một tài liệu nào đó, hay là tìm kiếm hình ảnh…
1.4. Các kết quả tìm kiếm có hiển thị kích thước của các hình ảnh, tài liệu hay không?
1.5. Có thể sử dụng các tính năng tìm kiếm nâng cao như tìm kiếm theo phân loại như loại tài liệu hoặc loại hình ảnh hay không?
1.6. Lưu ý một số cặp dữ liệu đầu vào thông thường như:
- Các chữ cái viết hoa: A-Z
- Các chữ cái thường: a-z
- Kiểu số: 0-9
- Kí tự đặc biệt: { [ ( ~ ! @ # $ % ^ & * ` | : ” ; ‘ < > ? , . ⁄ * – + ) ] }
- Kí tự trống, khoảng trắng
- Giả lập các trường hợp để xác định, phát hiện các lỗi liên quan đến bảo mật như XSS, SQL, JavaScript, HTML injections
Khi vào các trang thương mại điện tử hoặc trang web của các cửa hàng online, có thể thấy rằng tìm kiếm là một trong những tính năng chính quan trọng luôn được hiển thị phía trên đầu của ứng dụng, những vị trí rất dễ nhìn thấy. Đây là một trong những tính năng rất hữu ích đối với người dùng. Chúng ta sẽ cùng thử đưa ra những trường hợp có thể được dùng để kiểm tra khi thực hiện kiểm thử cho chức năng tìm kiếm này nhé!
2. Thiết kế chức năng
2.1. Kiểm tra việc hiển thị của khối tìm kiếm này trên trang web như: có thể dễ dàng nhìn thấy mà không cần phải cuộn trang lên xuống, trên các loại màn hình, máy tính xách tay với độ phân giải khác nhau, kể cả với những màn hình có độ phân giải thấp.
2.2. Khối tìm kiếm này về mặt thiết kế có tương tự với các trường tìm kiếm thông dụng trên các công cụ tìm kiếm khác như Google, Yahoo, Bing hay không?
2.3. Tùy theo mô tả yêu cầu của hệ thống, ta cũng cần kiểm tra xem khối tìm kiếm có xuất hiện ở tất cả các trang của ứng dụng không hay chỉ hiển thị ở một số màn hình thôi?
2.4. Tiếp theo là kiếm tra hiển thị bố cục của khối tìm kiếm này. Một khối tìm kiếm sẽ thường bao gồm:
- Trường dữ liệu cho phép nhập vào các dữ liệu tìm kiếm
- Dữ liệu được nhập vào ô tìm kiếm
- Nút “Tìm kiếm”
- Khối lựa chọn dữ liệu tìm kiếm
- Thông tin về câu truy vấn tìm kiếm
2.5. Bên cạnh đó cũng cần kiểm tra xem số lượng từ tối đa có thể nhập vào trường tìm kiếm là bao nhiêu từ? Có ràng buộc hay giới hạn gì hay không?
3. Hoạt động của chức năng
3.1. Kiểm tra trường tìm kiếm có cho phép lựa chọn tìm kiếm theo các nhóm tiêu chí cụ thể hay không? Ví dụ như theo loại sản phẩm, theo bài biết, hay theo đánh giá…
3.2. Có hiển thị thông báo về những hạng mục được tìm thấy, số lượng mặt hàng là bao nhiêu không?
3.3. Thông thường ở ô tìm kiếm mặc định sẽ hiển thị sẵn một gợi ý nho nhỏ như là “Tìm kiếm”, “Tìm sản phẩm” … như ở Lazada thì có hiển thị là “Tìm kiếm trong Lazada”, vậy thì mình sẽ kiểm tra cái gì ở đây, bạn cần kiểm tra khi gõ từ khóa tìm kiếm vào thì những từ mặc định kia sẽ tự động mất đi mà không chèn vào cùng với từ vừa được nhập vào, và khi xóa từ khóa vừa gõ thì ô tìm kiếm lại hiển thị dòng thông tin mặc định tương ứng.
3.4. Khi tìm kiếm ta có thể thay đổi các từ khóa tìm kiếm khác nhau được không?
3.5. Chức năng có đưa ra các gợi ý tùy thuộc vào khu vực tìm kiếm hay không? Ví dụ như khi bạn gõ một từ khóa tìm kiếm nào đó, nó có thể gợi ý cho bạn biết rằng mặt hàng, hay thông tin tìm kiếm này nằm trong một vài nhóm, hoặc danh mục cụ thể nào đó, bạn có thể tùy chọn tìm kiếm mặt hàng này trong một số nhóm gợi ý vừa hiển thị ra. Ví dụ như khi bạn tìm “Kính bơi” nó sẽ hiển thị gợi ý cho bạn để bạn có thể tìm mặt hàng này trong danh mục nhóm đồ “Thể thao” hoặc danh mục nhóm đồ “Bơi lội”.
3.6. Trường hợp gõ nhầm tên sản phẩm hoặc từ khóa tìm kiếm, có gợi ý được sản phẩm đúng, liên quan nhất hay không? Ví dụ như khi muốn tìm kiếm “Kính bơi” nhưng bạn lại gõ nhầm thành “KInh bơi” hay “Kín bơi” thì nó có tìm được hoặc gợi ý thành Kính bơi hay không?
3.7. Kiểm tra việc hỗ trợ tự động hoàn thiện từ khóa khi nhập một số từ trong từ khóa dựa vào bộ từ điển được định nghĩa và các kết quả tìm kiếm liên quan đã được tìm thấy trước đó – tính năng này giống như bạn tìm kiếm trên Google ấy, khi bạn gõ một từ bất kỳ, nó sẽ gợi ý cho bạn những từ tiếp theo có thể xuất hiện trong cụm mà bạn muốn tìm kiếm.
3.8. Kiểm tra việc sắp xếp các gợi ý hỗ trợ tìm kiếm theo tần xuất được tìm kiếm của từ khóa và mức độ cạnh tranh của mặt hàng. Ví dụ như khi tìm kiếm hàng trên Tiki, thì nó sẽ gợi ý cho bạn những mặt hàng với từ khóa liên quan được tìm kiếm nhiều nhất, hay bán chạy nhất… kiểu thế.
3.9. Kiểm tra xem việc đưa ra dự đoán về số lượng kết quả tương ứng có thể tìm ra khi nhập từ khóa tìm kiếm. Ví dụ như mình tìm 1 sản phẩm là Kính, nó sẽ đếm nhanh và hiển thị kiểu như có 200 kết quả liên quan chẳng hạn.
3.10. Kiểm tra xem việc tìm kiếm có cung cấp thông tin về giá cả của mặt hàng được tìm thấy hay không?
3.11. Việc tìm kiếm mặt hàng có cung cấp và hiển thị thông tin mặt hàng đi kèm một hình ảnh nhỏ nhỏ tương ứng với mặt hàng đó hay không?
3.12. Có đưa ra thông tin về những mặt hàng không được bán/ không còn bán trên hệ thống hay không?
4. Giao diện hiển thị kết quả
4.1. Kiểm tra để đảm bảo rằng các kết quả tìm kiếm cần được hiển thị rõ ràng và không bị lẫn lộn bởi các loại quảng cáo khác có trên trang.
4.2. Kết quả tìm kiếm này được hiển thị trong một khối có cấu trúc và thường bao gồm các thông tin sau:
- Hiển thị thông tin được tìm kiếm: như bạn đã tìm kiếm cái gì, ở mục nào… Ví dụ như: Tìm “Kính bơi” trong Dụng cụ thể thao ….
- Danh sách các kết quả tìm kiếm được sẽ hiển thị như thế nào?, được sắp xếp theo trình tự ra sao? Ví dụ như hiển thị dạng lưới (grid), dạng bảng, hay danh sách, được sắp xếp theo độ phổ biến, theo giá hay theo số lượng người mua, theo đánh giá của mặt hàng…
- Việc hiển thị tên nhóm chủng loại của hàng hóa có được cung cấp hay không?
- Có hiển thị thông tin gợi ý, khuyến nghị cho người dùng không? Ví dụ như “Có 5000 người cũng tìm kiếm sản phẩm này”, “Có 3000 người khác cũng mua kèm sản phẩm này”…
- Việc hiển thị các thông tin thêm để người dùng có thể hiểu hơn về mô tả của các mặt hàng có được cung cấp hay không?
5. Chức năng hiển thị kết quả
5.1. Đối với trường hợp từ khóa tìm kiếm nhập vào bị lỗi chính tả hay lỗi chủ quan do người dùng nhập vào có được điều chỉnh khi tìm kiếm và hiển thị kết quả truy vấn chính xác hay không?
5.2. Kết quả tìm kiếm có bao gồm số lượng kết quả tìm kiếm được hay không? Ví dụ, khi bạn với từ khóa “Mũ bơi” ở phần hiển thị danh sách kết quả tìm kiếm nó sẽ hiển thị kiểu như tìm được 2000 kết quả chẳng hạn.
5.3. Kết quả tìm kiếm có cung cấp số lượng các sản phẩm tìm thấy được phân nhóm theo một số tiêu chí không? Các tiêu chí đó có thể là Nhóm sản phẩm, Thương hiệu… etc
5.4. Mỗi kết quả tìm thấy có bao gồm thông tin ngắn về sản phẩm, giá, hình ảnh và một nút mua hoặc thêm vào giỏ hàng hay không?
5.5. Trong kết quả tìm kiếm, những mặt hàng được gắn thẻ đặc biệt như Ưu đãi, khuyến mãi, hay Hàng mới thì những thông tin này cũng sẽ được hiển thị đi kèm với các thông tin mô tả ngắn về mặt hàng được hiển thị theo mục kế trên.
5.6. Kết quả tìm kiếm có bao gồm các tùy chọn nâng cao như có thể mở sản phẩm cụ thể nào đó để xem chi tiết, hoặc mở xem thông tin trong một tab khác hay không?
5.7. Có thêm tùy chọn tìm kiếm nâng cao hay không? Ở đây kiểm tra việc có thể bổ sung thêm một số các tiêu chí tìm kiếm khác cho danh sách kết quả này.
5.8. Đường dẫn địa chỉ tìm kiếm có thể được thay đổi mỗi khi tiêu chí lọc mới được thực hiện hay không?
5.9. Các trang kết quả tìm kiếm và bộ lọc có được đóng bởi các công cụ tìm kiếm hay không? (Đoạn này chưa hiểu lắm)
5.10. Ở danh sách hiển thị kết quả tìm kiếm này có hiển thị thông tin về lịch sử tìm kiếm trước đó hay không? Ví dụ ở phía cuối danh sách kết quả nó hiển thị thông tin là vừa trước đó bạn đã tìm cái gì?
6. Các trường hợp tìm kiếm không hợp lệ
6.1. Trong trường hợp không có kết quả tìm kiếm phù hợp với tiêu chí tìm kiếm thì có phản hồi như thế nào? Có thể hiển thị một dòng thông tin cho người dùng biết như “Không tìm thấy sản phẩm nào”.
6.2. Có cung cấp những gợi ý tìm kiếm khác liên quan đến từ khóa tìm kiếm không?
6.3. Có cung cấp các tùy chọn tìm kiếm khác không? Ví dụ như thay vì tìm theo tên mặt hàng có thể có tùy chọn để có thể tìm kiếm theo thương hiệu, cửa hàng, bài viết…
6.4. Hoặc có đưa ra các gợi ý tìm khác dựa vào mục đích tìm kiếm hoặc các tìm kiếm khác trước đây đã được thực hiện hay không?
7. Tổng hợp kết quả tìm kiếm và các thông tin chi tiết khác
7.1. Không bỏ qua các kết quả đã hiển thị trên danh sách kết quả tìm kiếm được, nghĩa là chúng ta vẫn cần phải kiểm tra kết quả này, vì có thể kết quả đó chẳng liên quan gì đến từ khóa mà ta đang tìm kiếm cả.
7.2. Kiểm tra số lượng kết quả tìm kiếm hiển thị trên mỗi trang
7.3. Kết quả tìm kiếm được có hiển thị đúng theo một số tiêu chí cụ thể nào đó hay không? Ví dụ mức độ phổ biến, được xem nhiều nhất, hoặc theo thứ tự bảng chữ cái….
7.4. Trong trường hợp không có kết quả tìm kiếm nào được tìm thấy thì nội dung tin nhắn tương ứng hiển thị có đúng hay không?
7.5. Thời gian dành cho mỗi phiên truy vấn là bao nhiêu? Có mất nhiều thời gian không?
7.6. Việc tìm kiếm có phân biệt trường hợp người dùng đăng nhập hay khách không?
Các bạn có thể tham khảo bài viết gốc nếu như không thích bản tam sao này của mình, hi vọng các cao thủ dịch thuật có lạc vào đây và phát hiện ra điểm gì chưa đúng, hay chưa sát nghĩa thì để lại cho mình đóng góp nhé, những đóng góp của các bạn chính là niềm vui vô cùng to lớn đối và động lực mạnh mẽ để mình có thể tiếp tục phát huy hơn nữa =)) Trân trọng cảm ơn!!!
Bài viết gốc được đăng tải tại vananhtooo.wordpress.com
Có thể bạn quan tâm:
- Vượt qua 4 thách thức của kiểm thử di động
- Kỹ thuật làm app bản đồ, tìm đường và tính năng bắt Pokemon GO
- Tại sao Test Coverage là một phần quan trọng của Kiểm thử phần mềm?
Xem thêm Việc làm Developer hấp dẫn trên TopDev