Kiểm thử ứng dụng trên thiết bị di động 

Ngày nay - ứng dụng di động đang ngày càng phát triển và Kiểm thử ứng dụng trên điện thoại đang hot hơn bao giờ hết .

 Vậy kiểm thử trên thiết bị di động sẽ chú ý test những case nào ? Chúng ta sẽ test những gì và kiểm thử ứng dụng như thế nào ? 

Bài viết này sẽ chia sẽ những checklist quan trọng khi test trên điện thoại di động 



Kiem-thu-phan-mem


I. Cài đặt và định hình ứng dụng khi Test trên thiết bị di động 

1) Dự án của bạn Client yêu cầu kiểm thử trên thiết bị di động/ tablet nào ( SamSung S5, Iphone5, Iphone 4...) , hỗ trợ trên những hệ điều hành nào ( Android 4.2,4.3 ...IOS6, IOS7,IOS8...), Kích thước màn hình hỗ trợ (4.0 inch, 4.5 inch ...) từ đó dùng chương trình giả lập và dùng cả thiết bị thực để thực hiện việc kiểm thử

2) Ứng dụng bạn đang kiểm thử lưu trữ ở đâu - hình thức lưu trữ ( Thẻ nhớ - bộ nhớ điện thoại)
  Điều gì xảy ra khi ta xóa thư mục lưu trữ của ứng dụng

3) Ứng dụng cùng hoạt động trên nhiều thiết bị khác nhau ,việc đồng bộ sẽ như thế nào

4) Tải ứng dụng ở đâu - kiểm thử các trường họp đầy bộ nhớ hoặc gián đoạn trong quá trình tải app

5) Kiểm thử quá trình cài đặt, gỡ bỏ ứng dụng , cài đặt lại và sẽ như thế nào nếu quá trính đó bị gián đoạn

6)  Kiểm thử quá trình update app , sẽ như thế nào nếu không update version mới

II.  Test giao diện ứng dụng trên thiết bị di động 

 Tương tự như Kiểm thử Website hay ứng dụng trên desktop , Kiểm thử giao diện trên di động vẫn chú trọng vào các điểm sau:

1)  Màu nền, màu chữ,kiểu chữ (hoa thường, font chữ...)  có khóp với Design , trường họp không có design, có thể kiểm tra xem màu nền có phù họp - có bị trùng với màu chữ gây khó đọc hoặc rối mắt người dùng không

2) Font size, size của các textbox, button và canh trái , phải, giữa ...ở chế độ bình thường , chiều dọc , xoay theo chiều ngang ...

3) Border các textbox, button... có smooth

4) Text, tootip của warning message, nội dung trang hiển thị  ...

5) Các hiệu ứng scroll, chuyển trang có smooth

6)   Dữ liệu hiện tại có được lưu khi đóng cửa sổ hay không?

7) Kiểm tra vị trí focus có được đặt ngay field đầu tiên hay control đầu tiên khi load màn hình hay không? . Ngọai trừ có trường hợp yêu cầu set vị trí focus cụ thể

8) Kiểm tra giao diện khi người dùng thực hiện các hiệu ứng cảm ứng như swipe, touch ,tap on , zoom, pinch, multi-touch, shake and orientation.

9) Bàn phím nhập liệu có hoạt động tốt và không gây lỗi khi tiến hành input dữ liệu trên tất cả các màn hình

III. Test chức năng cho ứng dụng di động

1.  Đảm bảo các chức năng có trong thiết kế hoạt động tốt
2. Test những chức năng ngoài luồng
3. Test các chức năng khi mất kết nối mạng, kết nối mạng wifi, kết nối chậm, kết nối 3G,2G,4G..., chế độ máy bay ...
4. Click , swipe , otuch , scroll ...nhanh có gây ra lỗi
5. Sự chuyển hướng từ các liên kết trong ứng dụng hoặc các Social link ( g+,facebook...)
6. Thời gian của ứng dụng, trên Phone hay server ,Khi thay đổi cài đặt trong điện thoại ( ngày tháng , ngôn ngữ...), ứng dụng hoạt động ra sao
8. Get dữ liệu từ server khi ở chế độ background running,khóa màn hình hay listen
9. Kiểm tra sự đồng bộ dữ liệu khi đăng nhập ở nhiều thiết bị ( desktop, tablet, mobile)
10. Test camera nếu có trong ứng dụng, ( chụp ảnh, lưu trữ ...)
12. Nội dung, hình ảnh có hiển thị tốt khi chia sẻ trên G+,facebook ..., điện thoại có cài ứng ụng facebook, G+ ...và không cài các ứng dụng đó
13. Notification từ ứng dụng như update, nhắc nhở ...
14. Kiểm thử cho các trường họp bị gián đoạn khi sử dụng app như : Cuộc gọi , tin nhắn, Pin yếu, hoặc các tường họp đang mở nhạc,
15. Chú ý kiểm thử cho các trường họp System Crash / Force Close

Đây chỉ là góp nhặt và rút ra từ kinh nghiệm bản thân, các bạn có thể bổ sung thêm các case tủ của mình để bổ sung thêm bằng cách comment ở dưới nha,

Cảm ơn các bạn đã đóng góp và chia sẻ, hy vọng bài viết sẽ giúp ích cho các bạn đang là kiểm thử viên phần mềm hoặc đang tim hiểu về Kiểm thử phần mềm và cả các PM, Developer chú ý thêm một vài trường họp để dự án hoạt động tốt


Chúc một ngày vui vẻ và thành công
------------------------------
KiemthuphanmemVvn
Face: https://www.facebook.com/KiemThuPhanMemVvn
G+: https://plus.google.com/u/0/b/117542284818070877723/117542284818070877723/about






 I.Test escape hay Leaked bug trong Kiểm thử phần mềm :

- Có một thực tế hết sức phủ phàng mà hầu hết các kỷ sư kiểm thử phần mềm đều gặp phải đó là gần như chắc chắn là bạn không bao giờ tìm hết tất cả các lỗi của sản phẩm phần mềm . Bạn đã nắm được rất kỹ- rất có kinh nghiệm trong kiểm thử chức năng (Functional Testing)  hay Kiểm thử tự động (Automaiton testing) ,  đã test rất kỹ càng trước khi bàn giao nhưng vẫn bị khách hàng tìm thấy trong quá trình sử dụng và nó được gọi là test escape hay leaked bug .

Kiem thu phan mem
Gì chứ hả, bug nữa á 

- Một vấn đề mà tester thường xuyên gặp phải như sau: 

+ Sau khi kiểm thử một Website / Application cho khách hàng - Chỉ yêu cầu test những chức năng của Website đó.  Tôi dùng cả 2 kỷ thuật function testing và Automation testing, kiểm thử tự động cover được những test case chính và đã passed tất cả . Những case khác, tôi đã thử tất cả các trường họp có thể xảy ra và tìm được rất nhiều bug. Khi tất cả các bug này được Fixed - và thực hiện kiểm thử chấp nhận (Acceptance Test) cũng đã Passed. Sản phẩm được bàn giao cho khách hàng và nhận được feedback, tôi mới ngạc nhiên vì có rất nhiều bug từ người dùng.



Kiểm thử phần mềm

+ Nghiên cứu, đọc và thực hiện lại các mô tả lỗi của khách hàng để tìm kiếm nguyên nhân (root cause) tại sao tôi lại để sót những bug này và nguyên lý sinh ra bug - tôi mới thấy rằng , cách suy nghĩ, sử dụng và tương tác với sản phẩm phần mềm của người dùng cuối khác khá nhiều so với cách suy nghĩ và tinh thần của người phát triển phần mềm - ngay cả với testcase của Kiểm thử viên phần mềm


Vì sự chủ quan đảm bảo tất cả các chức năng hoạt động đúng như thiết kế mà vô tình quên đi những thói quen người dùng, những tương tác khác ( không có trong thiết kế) vô tình tạo ra lỗi hoặc Có thể tại thời điểm này, các chức năng của phần mềm hoạt động hoàn toàn đúng và chính xác nhưng ở một số trạng thái(states), luồng dữ liệu và điều khiển(control) vấn có một số đụng độ với webserver hay hệ điều hành hay trình duyệt....gây ra những lỗi không đáng có . 



Kiểm thử phần mềm

Vậy đó, với tư duy " Biết quá nhiều " những công nghệ, những thủ thuật cao xa và những thao tác phức tạp  đã khiến cho các nhà thiết kế phần mềm, các nhà phát triển phần mềm và cả các kiểm thử viên phần mềm  quên đi mục đích tạo ra sự tương tác thân thiện, dễ hiểu, dễ thực hiện cho người dùng- những khách hàng của bạn. Qúa chú trọng vào những bug " bự" mà vô tình bỏ qua những điều nhỏ nhặt nhưng lại vô cùng quan trọng trong việc đánh giá chất lượng sản phẩm phần mềm của bạn.



Kiem-tra-chat-luong-phan-mem

Qua đây, tôi chỉ muốn lưu ý các bạn tester (có cả tôi ) phải chú ý những điểm quan trọng sau:



1) Kiểm thử phần mềm phải luôn đứng và suy nghĩ như một người dùng thực sự, để mindset của bạn giải phóng khỏi những ràng buộc cũng như lối tư duy " Biết quá nhiều" của những nhà phát triển sản phẩm 

                           Kiem thử phẩn mềm


2) Kiểm thử phần mềm phải luôn làm giàu (enrich ) bộ testcase của bạn - từ những case đơn giản, trưc quan nhất đên các case dự đoán là sẽ tìm ẩn nhiều bug nhất , từ tình huống đến dữ liệu kiểm thử phải có tính hệ thống và hướng đến người dùng


 Kiểm thử phần mềm tự động





3) Kiểm thử viên phải luôn note lại cho mình những trường họp mà người dùng gặp phải, những case lạ , những phát hiện mới mẻ trong quá trình tìm bug sẽ giúp bạn có kinh nghiệm hơn, testcase phong phú và chất lượng hơn , đó như là sự tích góp, năng nhặt chặt bị để vào vai người sử dụng một cách tròn trĩnh và xuất thần 
Kiểm thử phần mềm tự động


Có thể đây chỉ là những chú ý đơn giản  nhưng để thực hiện nó vào dự án thực tế không hề đơn giản, bạn cần bĩnh tĩnh, tự tin , lạc quan và có sự tưởng tượng phong phú , nghiền ngẫm các spec , tài liệu thiết kế, thi thoảng phải chậm lại chút và quan trọng hơn cả là phải luôn để ý đến điều này sẽ giúp bạn hài lòng với những gì mình đã làm được .

Một vài chia sẻ nho nhỏ hy vọng sẽ giúp ích cho bạn đọc 
Chúc các bạn thành công 

-------------------------------------------
Face: https://www.facebook.com/KiemThuPhanMemVvn
G+: https://plus.google.com/u/0/b/117542284818070877723/117542284818070877723/about





I.  TestNG là gì? 

TestNG là công cụ kiểm thử tự động cho phép tạo  testcase  thực thi các danh mục kiểm thử như : Unit test , Test chức năng, End to End , Intergration test ... 

TestNG là một automation testing Framework , là phiên bản nâng cấp từ JUnit và NUnit - với nhiều tính năng mạnh mẽ và vượt trội , dễ dàng sử dụng và là một trong những công cụ kiểm thử tự động được sử dụng phổ biến hiện nay



Automation testing


II. Lợi ích của Công cụ kiểm thử tự động TestNG

- Khả năng xuất HTML report khi thực thi các ca kiểm thử 
- Tạo các chú thích cho từng kịch bản test một cách  rõ ràng 
- Tạo các Group test case và độ ưu tiên cho từng group một cách dễ dàng 
Parallel testing is possible
- Tạo Logs  
-  Tạo Data Parametrise action 

III. Cài đặt công cụ kiểm thử TestNG từ Eclipse

Bước 1: 
- Mở Eclipse ( xem cài đặt Selenium WebDriver)
- Chọn Help trên thanh Menu
- Chọn "Install New Software..."
Cong-cu-kien-thu-phan-mem-tu-dong


Bước 2: Trong họp thoại cài đặt, Nhấn nút Add 
Kiem-thu-phan-mem-tu-dong


Bước 3: 
- Gõ "TestNG" trong ô Name
-  Gõ "http://beust.com/eclipse" trong  Location
- Click OK
Kiem-thu-phan-mem-tu-dong

Bước 4: 
- Chắc chắn rằng "TestNG - http://beust.com/eclipse" đang hiển thị ở họp thoại Work with
- Check vô " TestNG" checkbox sau đó kích Next 

Chú ý: Trong Eclipse mới nhất, sẽ không có Checkbox cho TestNG, Thay vào đó bạn kích vào biểu tượng Dấu chấm hỏi (help), một Form sẽ xuất hiện và bạn chọn tất cả, Sau đó tiếp tục cài đặt 

Học-Kiem-thu-tu-dong




Bước 5: 
- Nhấn Next cho tới khi đến họp thoại "License Agreement."
- Click "I accept the terms of the license agreement" rồi nhấn chọn Finish
Kiem-thu-phan-mem


Bước 6:
- Chờ đến khi cài đặt xong , nếu gặp cảnh báo bảo mật, nhấn OK
Tool kiểm tra phần mềm tự đông

Bước 7: Nhấn Yes để khởi động lại Eclipse 

Kiem-thu-phan-mem-tu-dong
Bước 8: Cài đặt xong, bạn có thể vào Window/ Preferences, TestNG xuất hiện trong danh sách là quá trình cài đặt đã thành công 
Kiem-thu-phan-mem-tu-dong


Học Kiểm thử phần mềm tự động 

- trong bài 1- đã giới thiệu các bạn TestNG và cách cài đặt 
Sang bài 2 -sẽ hướng dẫn tạo testcase với TestNG nhé

Chúc thành công
-----------------------
KiemthuphanmemVvn
Face: https://www.facebook.com/KiemThuPhanMemVvn
G+: https://plus.google.com/u/0/b/117542284818070877723/117542284818070877723/about




Công nghệ phần mềm và Quy trình kiểm thử có nhiều đều thú vị . Cùng thư giản với  một vài so sánh vui nhé


kiem-thu-phan-mem

1) Kiểm thử phần mềm là gì?
Kiểm Thử Phần Mềm  (Software testing ) đơn giản chỉ là đảm bảo phần mềm hoạt động đúng với mong muốn của khách hàng và trong quá trình sử dụng, chắc chắn không xảy ra khiếm khuyết ngoài ý muốn.

Vậy  công việc của Kiểm thử viên là gì ???? Rất đơn giản nhé , Chỉ có 2 việc :


Xem nhiều nhất

Zui Zui

Nếu bạn không đủ mạnh -Đừng cố đi ngược đám đông