Đoán lỗi là gì? • testingvn.com


Thông báo về việc đăng ký mới thành viên: Sau khi đăng ký thành viên xong, các bạn vui lòng Thông báo cho Quản Trị Viên theo link này
để Quản Trị Viên sẽ kích hoạt tài khoản cho các bạn nhé. Xin lỗi vì sự bất tiện này.

Đoán lỗi là gì?

Chuyên đề thảo luận về kiểm thử hộp đen (Black-box Testing)
Forum rules
Chuyên đề này chỉ thảo luận về Black-box Testing.
Để có kết quả nhanh, các bạn nên search trước khi tạo chủ đề mới.

Đoán lỗi là gì?

Postby tvn » Mon 25 Mar, 2013 12:30 pm

Mình cũng mới làm tester chỉ được một năm thôi, nên nói về kinh nghiệm thì không nhiều lắm. Chủ yếu mình vẫn đang học hỏi kinh nghiệm từ nhiều bạn khác trên đây, và mình tìm hiểu theo câu hỏi của các bạn hỏi, vì khi mình trả lời thì có bạn sẽ chỉnh chỗ sai cho mình, như vậy ngày qua ngày mình sẽ khá hơn.

Nói về đoán lỗi thì mình chia sẻ những gì mình biết nha, kỹ thuật này đòi hỏi kinh nghiệm là chủ yếu, vì sau quá trình mình làm việc nhiều, mình đã gặp nhiều trường hợp, gặp nhiều qui trình xử lý công việc rồi nên khi gặp một dự án mới, một phần mềm mới, mình sẽ biết được dạng phần mềm này hay loại màn hình này (ví dụ màn hình search, màn hình login, màn hình thêm mới, edit, delete,...) thì thường gặp những lỗi gì. Hoặc sau khi thực hiện một vài thao tác thì kết quả phải xảy ra như thế nào,...

Ví dụ:

Đối với màn hình search:
    + Thường xảy ra lỗi search cả những record đã bị xóa (del_flg = 1) vì vậy khi viết test case và test màn hình search thì nên thêm vào test case này (gán del_flg = 1 cho một số record rồi thực hiện search, nếu những record này được hiển thị trên màn hình thì sai).
    + Tiếp theo, nhập điều kiện sao cho khi search được 0 record thì không hiển thị được màn hình mà lại báo lỗi "Null pointer" do trong code không xử lý khởi tạo list chứa danh sách các record search được.
    + Phần phân trang, thường thì mong muốn là: (giả sử phân trang là 20 records - một trang chỉ chứa được 20 dòng)
      ++ Search được 0 record thì chỉ hiển thị header (phần datagrid chỉ hiển thị header)
      ++ Search được 20 records thì hiển thị header và 20 dòng này trên 1 trang
      ++ Search được 21 records thì hiển thị header và 20 dòng này trên trang 1 và 1 dòng trên trang 2.
      ++ Search được 50 records thì hiển thị header và 20 dòng này trên 1 trang và 20 dòng trên trang 2 và 10 dòng trên trang 3

Nhiều khi DEV quên xử lý phân trang thì khi search được nhiều hơn số record chứa trong 1 trang thì bị lỗi hoặc hiển thị tất cả trên 1 trang.
Trong trường hợp đang hiển thị nhiều trang thì click Next và Prev để kiểm tra xem có qua lại giữa các trang được không nhé vì cũng hay bị lỗi chỗ này nếu là control này do mình tự viết (thường thì dùng component của framework nhưng trong ADF thì thường tự viết bằng java để dễ kiểm soát)

Đối với màn hình Login:
    + Chú ý phần bảo mật: Đôi khi DEV code thì gán user name là "admin" và pass là rỗng hoặc là "123" vì vậy mình nên thử trường hợp này.
    + Thử thử các trường hợp SQL injection
    + Để user name và pass rỗng rồi enter. (nhiều khi DEV không xử lý action enter cho login mà phải click button login)

Đối với màn hình Thêm Xóa Sửa:
    + Ở loại màn hình này thường xảy ra lỗi là khi thêm mới vào lần thứ 2 trở đi thì bị báo lỗi exception (lý do: do cách xử lý ID khi thêm mới, thêm lần thứ 2 thì bị trùng ID với lần trước nên DB server không cho insert thêm => lỗi, theo nguyên tắc thì sau khi thêm mới thì load lại data nhưng nhiều DEV không làm đúng như vậy)
    + Những record đã bị xóa thì không được hiển thị lên danh sách xóa - sửa (tương tự màn hình search - vì khi load danh sách là search all)
    + Nếu chương trình có yêu cầu xử deadlock thì thường xảy ra lỗi khi 2 người ngồi trên 2 máy khác nhau cùng sửa trên 1 record cùng lúc.
      Cách test:
      Mở 2 màn hình thêm xóa sửa giống nhau bằng 2 browser khác nhau. sau đó sửa trên browser 1 rồi lưu lại (thành công); Tiếp theo sửa trên browser 2 rồi lưu lại, xử lý đúng là hiển thị thông báo lỗi "record này đã được sửa bởi người khác" nghĩa là không cho mình sửa nữa, muốn sửa thì refresh lại màn hình hoặc làm sao đó để load lại data rồi sửa. Xử lý sai là không hiển thị thông báo lỗi mà cho sửa luôn.
      (Tình huống của việc này như sau: 9h sáng, Trưởng phòng và Giám đốc cùng mở màn hình xét thưởng, tại một thời điểm nào đó 2 người cùng click vào sửa field thưởng tháng 13 của nhân viên A. Giám đốc cho giá trị 300đồng, rồi lưu lại và nghĩ là nhân viên A sẽ được thưởng 300đồng. Trong khi đó Trưởng phòng cũng mở nội dung thông tin của nhân viên A, và cho field thưởng tháng 13 là 350đồng, và click button Save sau Giám đốc một xíu xiu (ví dụ < 1s) thì giá trị "thưởng tháng 13" của nhân viên A là 350đồng. Như vậy thì chương trình đã vô tình làm cho con người thao tác sai, Nếu chương trình tốt thì phải hiển thị thông báo lỗi khi Trưởng phòng click save. Vì data lúc đó đã khác so với data trước khi load lên để sửa.

Còn nhiều vấn đề nhưng mình không biết nói như thế nào, có gì thắc mắc bạn cứ hỏi mọi người sẽ giúp.
tvn
 
Posts: 4701
Joined: Tue 10 Aug, 2010 10:11 am
Location: HCM

Re: Đoán lỗi là gì?

Postby thucungcuatoi » Sun 26 May, 2013 11:00 pm

Quá hay!Trường hợp này ít ai ngờ tới! Còn trường hợp nào khác nữa không?
thucungcuatoi
 
Posts: 2
Joined: Thu 23 May, 2013 2:11 pm

Re: Đoán lỗi là gì?

Postby tvn » Fri 14 Jun, 2013 12:40 pm

Còn! nhưng mà không nhớ :D khi nào nhớ và rảnh thì sẽ post tiếp những trường hợp tương tự vào phần chia sẻ kinh nghiệm test
tvn
 
Posts: 4701
Joined: Tue 10 Aug, 2010 10:11 am
Location: HCM

Re: Đoán lỗi là gì?

Postby kent_tb » Wed 12 Mar, 2014 2:38 pm

Hello mọi người. mh là tester mới. Rất mong được sự giúp đỡ của mọi người.
Thanks anh tvn đã share kinh nghiệm. Đọc cái này mh mới ngỡ ra nhìu thứ :)
kent_tb
 
Posts: 2
Joined: Sun 03 Jun, 2012 7:57 pm

Re: Đoán lỗi là gì?

Postby cd_bently » Thu 17 Jul, 2014 3:20 pm

em cũng đang lò mò học về test và rất cần găp được những bài viết như thế này, đọc vừa thú vị vừa bổ ích, mong các cảnh bổ xung nhiều nhiều ạ, xin cảm ơn tất cả
cd_bently
 
Posts: 83
Joined: Sat 12 Jul, 2014 9:40 pm


Re: Đoán lỗi là gì?

Postby yeutuanhmatdauten1 » Wed 15 Jul, 2015 8:56 pm

ai có thể viết test case mấy trường hợp trên cho e tham khảo dc ko?
e nghĩ mãi mà ko ra???
yeutuanhmatdauten1
 
Posts: 66
Joined: Tue 07 Jul, 2015 5:26 pm


Return to Black box Testing - Kiểm thử hộp đen

Who is online

Users browsing this forum: No registered users and 3 guests


cron