Bài 3. Kiểm thử ứng dụng web – Tự Học Tin – Tin học cho người Việt

Kiểm thử ứng dụng web là một trường hợp trong kiểm thử phần mềm, ở chương này sẽ đi sâu nghiên cứu loại ứng dụng kiểm thử Web về khái niệm, các loại kiểm thử ứng dụng Web, chất lượng của một ứng dụng web cần đạt được, các công việc khi kiểm thử một ứng dụng web và sẽ giới thiệu một số công cụ hỗ trợ kiểm thử cho ứng dụng web.

Kiểm thử ứng dụng web

Khái quát

Các ứng dụng Web đã được tăng trưởng và trở thành một nền tảng liên kết thông tin thiết yếu trong nhiều doanh nghiệp. Các ứng dụng Web đóng vai trò quyết định hành động của thương mại điện tử, trao đổi thông tin .
Để hoàn toàn có thể đạt được điều này các ứng dụng Web cần phải có hiệu năng cao, đáng đáng tin cậy, … Việc đưa ra một ứng dụng web hoàn hảo nhất cho những người đang và sẽ sử dụng ứng dụng đã trở thành một thử thách chính trong bảo vệ chất lượng .

Kiểm thử là một trong những công việc quan trọng để đánh giá chất lượng của một sản phẩm và đương nhiên là các ứng dụng Web cũng không phảo là ngoại lệ. Các phương pháp kiểm thử thông thường là các kỹ thuật tập trung vào đánh giá các chức năng yêu cầu của ứng dụng.

Tuy nhiên, không hề tập trung chuyên sâu được vào hết tổng thể các công dụng nhu yếu của ứng dụng. Không thể nào tập trung chuyên sâu được vào hết toàn bộ các công dụng nhu yếu. Bởi có rất nhiều công dụng quan trọng cho người sử dụng ứng dụng như : tính hiệu năng, tính dễ sử dụng, độ đáng tin cậy và tính bảo mật thông tin cần được xem xét. Những nhu yếu và mong đợi của người sử dụng, những yếu tố về nền tảng và thông số kỹ thuật, quy mô nhiệm vụ, sự tăng trưởng và ngân sách cho việc kiểm thử là những yếu tố thường hay gặp phải và đổi khác liên tục đổi xuyên suốt quy trình của một ứng dụng Web. Vì thế, thiết yếu phải tăng trưởng một kế hoạch hiệu suất cao cho việc kiểm thử mà hoàn toàn có thể bao quát được số lượng giới hạn toàn diện và tổng thể và to lớn của những nhu yếu, công dụng cho một ứng dụng Web qua đó hoàn toàn có thể giúp cho việc thiết lập, triển khai xong ứng dụng cũng như tránh đư ợc các rủi ro đáng tiếc hoàn toàn có thể gặp .

Đặc điểm về chất lượng của một ứng dụng Web

Người sử dụng không chỉ mong đợi chương trình của họ sẽ quản lý và vận hành một cách không thay đổi, đúng chuẩn mà họ còn nhu yếu một số ít tính năng nào đó phải luôn chuẩn bị sẵn sàng trên 24 giờ trong 1 ngày và 7 ngày trong tuần. Hơn nữa, người sử dụng còn mong đợi ở chương trình những ưu điểm sau : tính dễ sử dụng, độ đáng tin cậy, vận tốc, thích hợp với các mạng lưới hệ thống khác nhau và thích hợp với các phiên bản trong tương lai. Còn với một ứng dụng Web, thì những nhu yếu về chất lượng gồm có :

  • Yêu cầu về chức năng:Sự hiện diện của các chức năng đáp ứng những yêu cầu được xác định. Các yêu cầu cần có nữa là tính phù hợp, chính xác, khả năng tương tác, tuân thủ và bảo mật.
  • Yêu cầu về độ tin cậy: khả năng của một ứng dung để duy trì sự hiệu quả của nó trong một điều kiện cụ thể và trong một khoảng thời gian xác định.
  • Yêu cầu về khả năng sử dụng: Tính dễ sử dụng và hiệu quả của một ứng dụng. Vấn đề này có thể được thẩm định bởi một nhóm người dùng giả định.
  • Yêu cầu về hiệu quả:Tỷ lệ giữa mức độ hiệu quả của một ứng dụng và các tài nguyên mà nó sử dụng trong các điều kiện cụ thể.Các yêu cầu về chất lượng đóng một vai trò thiết yếu khi thử nghiệm các ứng dụng Web. Mặc dù nhìn chung thì chúng t ương t ự như những yêu cầu về chất lượng cho các hệ thống phần mềm truyền thống. Tuy nhiên, chúng có thể có mức độ đòi hỏi cao hơn về chiều sâu.

Do ý nghĩa quan trọng của các đặc thù về chất lượng và sự độc lạ ở cách mà chúng được kiểm thử, nhiều chiêu thức để kiểm thử một ứng dụng Web tập trung chuyên sâu vào một vài đặc thù. Tuy nhiên, toàn bộ các đặc thù đều quan trọng so với một ứng dụng Web. Và việc làm kiểm thử phải bảo vệ được những nhu yếu setup thành công xuất sắc .

Công việc khi kiểm thử một ứng dụng Web.

Kiểm thử là một hoạt động giải trí để nhìn nhận chất lượng của một mẫu sản phẩm ứng dụng quan trọng là cải tổ nó bằng cách tìm ra những thiếu xót, khiếm khuyết .
Một yếu tố thường hay xảy ra trong quy trình tăng trưởng ứng dụng Web đó là các nhu yếu thường không không thiếu, tường minh và hoàn toàn có thể đổi khác bất kể khi nào. Thông thường tất cả chúng ta cần có cái nhìn khái quát về các tính năng cơ bản mà ứng dụng Web sẽ có. “ Cái nhìn khái quát ” này sẽ là tầm nhìn để triển khai phát hành lần đầu ứng dụng .
Phương pháp tiếp cận nhanh – tập trung chuyên sâu vào đặc thù lặp và tiến hóa của một ứng dụng Web và vòng đ ời tăng trưởng của chúng mà không hề có bất kể một đoạn văn bản đơn cử nào định ngh ĩa v ề giải pháp này. Các tiềm năng, mối chăm sóc và mong đợi của các bên tương quan có đẻ hình hành cơ s ở cho việc thực nghiệm .
Để hỗ trợ giúp cho những kiểm thử viên hoàn toàn có thể có được những cái nhìn thâm thúy và thấu đáo những mong đợi, kỳ vọng về chất lượng ứng dụng Web của người sử dụng thì những kiểm thử viên này cần được tham gia càng sớm càng tốt vào việc làm xác lập và định nghĩa các y êu c ầu theo các giải pháp kỹ thuật sau :

Kiểm tra chức năng

Kiểm tra các website cho tính năng đúng chuẩn, định dạng, tập tin cookie, và xác nhận tài liệu. Chức năng thử nghiệm là lý tưởng để triển khai kiểm tra khói, kiểm tra hồi quy, và thử nghiệm hội nhập .
– Kiểm tra các link :

  • Liên kết bên trong một cấu trúc siêu văn bản mà điểm đến không tồn tại một nút (các trang web, hình ảnh…) gọi là liên hết hỏng thường xuy ên xảy ra sai sót trong các ứng dụng web.  Để kiểm tra tính chính xác của các trang liên kết (link kiểm tra), tất cả các liên kết được hệ thống theo sau bắt đầu trên một trang bắt đầu, và sau đó được nhóm trong một đồ thị liên kết (bản đồ trang web).
  • Khi chạy một kiểm tra liên kết thường xuyên, người ta thường thấy các liên kết không chỉ là điểm đến không tồn tại trang, nhưng cũng có các trang không được interlinked với những trang khác hoặc cái gọi là các trang mồ côi. Những trang mồ côi có thể đến thông qua một liên kết, nhưng không có một liên kết đến cấu trúc siêu văn bản. Để đơn giản cho người sử dụng nó không xác định nơi để đi tới, để chúng rời bỏ trang web.
  • Ngoài ra, khi vượt qua các liên kết, người ta thường có thể tìm thấy dữ liệu bổ sung để cung cấp chỉ dẫn tiềm năng lỗi. Ví dụ, độ sâu và b ề rộng của các cơ cấu chuyển hướng, khoảng cách giữa hai trang liên quan, được đo bằng số lượng các liên kết hoặc lần tải của các trang.

– Kiểm tra các hình thức web trên trang :

  • Kiểm tra các lĩnh vực logic xác nhận cho từng lĩnh vực.
  • Kiểm tra các giá trị mặc định cho từng lĩnh vực.
  • Kiểm tra xem các lĩnh vực mật khẩu không hiển thị nội dung mật khẩu.
  • Kiểm tra giá trị đầu vào không h ợp lệ cho từng lĩ nh vực.
  • Xác nhận đáp ứng với một hình thức gửi .

– Thử nghiệm quản trị phiên thao tác và cookie :

  • Kiểm tra các ứng dụng đăng nhập trong phiê n bằng cách cho phép và vô hiệu hóa các tập tin cookie.
  • Cookie thử nghiệm ti êu c ực bằng cách sử dụng một tên miền không phối hợp.
  • Kiểm tra xem cookie phiên thiết lập lại giữa các phiên trình duy ệt.
  • Kiểm tra bảo mật ứng dụng bằng cách xóa các tập tin cookie có chọn lọc trong khi ki ểm tra hoạt động .

– Xác nhận Cascading Style Sheet ( CSS ) tags :

  • Xác định các tag CSS 404 trả lại hoặc lỗi tải khác CSS.
  • Xác định trên HTML id, class, và các thuộc tính tên không phù hợp với bất kỳ thẻ CSS nào.

– Xác nhận thẻ JavaScript :

  • Xác định các tag Script trả lại l ỗi 404 hoặc lỗi tải khác.
  • Xác định id, tên, trên … thu ộc tính không phù hợp với bất kỳ thẻ Script.

– Kiểm tra nội dung động ( kiểm tra cơ sở tài liệu ) :

  • Kiểm tra dữ  liệu  thống  nhất  trong  các  hình  th ức  web  cơ  s ở  dữ  liệu  theo định hướng .
  • Kiểm tra chức năng t ạo, chỉnh sửa, xóa, cập nhật công việc .
  • Kiểm tra dữ liệu cung cấp dữ liệu chính xác .
  • Xác đị nh kết nối cơ sở dữ liệu và các lỗi truy vấn .

Kiểm tra sự tương thích trình duyệt

Sự độc lạ trong các trình duy ệt Web, môi trường tự nhiên hoạt động giải trí, và các thiết bị phần cứng ảnh hưởng tác động đến các hoạt động giải trí đúng chuẩn của ứng dụng Web của bạn .
– Trình duyệt thích hợp :

  • Thử nghiệm ứng dụng web của bạn cho chức năng chính xác trên m ột số trình duyệt như Firefox, IE, Chrome, Opera, và Safari. Lý tưởng nhất là ứng dụng web của bạn xử lý sự khác biệt trình duy ệt thanh lịch.
  • Kiểm tra chức năng ứng dụng với một loạt các cài đặt cấu hình bảo mật trình duyệt.
  • Kiểm tra chức  năng  ứng  dụng  với  các  tính  năng  trình  duyệt bật -tắt (JavaScript, cookies).
  • Kiểm tra dựng hình trình duyệt của giao diện người dùng ứng dụng của bạn.
  • Kiểm tra các thiết lập bảo mật của trình duyệt cho tên miền chéo truy cập và hack.
  • Kiểm tra chức năng ứng dụng nhất quán trên nhiều phiên bản của một trình duyệt.

– Môi trường hoạt động giải trí thích hợp :

  • Kiểm tra ứng dụng giao diện ng ư ời d ùng vẽ trên hệ thống cửa sổ hệ điều hành.
  • Kiểm tra chức năng tích hợp máy tính đ ể bàn, bao gồm kéo và thả tập tin và lựa chọn.
  • Thử nghiệm ứng dụng web của bạn trên các hệ điều hành khác nhau, bao gồm cả Windows, Unix, Mac, Linux, và Solaris .

– Thiết bị di động thích hợp :

  • Kiểm tra khả năng tương thích ứng dụng với các dịch vụ thiế t bị, bao gồm cả vị trí và các dịch vụ quay số.
  • Kiểm tra giao diện người dùng vẽ tr ên điện thoại di động kích thước màn hình thiết bị, bao gồm cả màn hình xoay.
  • Kiểm  tra  hoạt  động  ứng  dụng  chính  xác  khi  điện  thoại  đang  trong  và  ra khỏi phạm vi của các dịch vụ mạng.

Thử nghiệm tính năng

Load Test:

  • Tuyến tính khả năng mở rộng – nơi hiệu suất của một ứng dụng không thay đổi khi số lượng người dùng tăng lên. Kiểm tra tải trọng xác định một chỉ số Khả năng mở rộng cho hiệu suất ứng dụng web của bạn.
  • Kiểm tra phản ứng máy chủ để dưới dạng trình duyệt gửi yêu cầu .
  • Xác định thay đổi hoạt động trong một khoảng thời gian .
  • thử nghiệm cho các chức năng mà ngừng làm việc ở các cấp độ cao hơn của người sử dụng tải.
  • Xác đị nh các vấn đề về độ trễ mạng về chức năng ứng dụng Web .

Stress Test:

  • Xác định cách thức ứng dụng đáp ứng theo mức độ tải .
  • Xác định các phần của ứng dụng web mà không theo mức độ tải .
  • Xác định các chức năng ứng dụng sau khi một vụ tai nạn hệ thống hoặc thành phần thất bại.
  • Xác định các hình th ức v à các liên k ết hoạt động khác nhau theo mức độ tải.

Kiểm tra bảo mật

  • Bảo vệ dữ liệu ứng dụng Web và duy trì chức năng như thiết kế.
  • Kiểm tra các hoạt động mà không cần loging .
  • Kiểm tra xác thực cơ bản sử dụng tên giả và các thông tin mật khẩu
  • Kiểm tra giấy chứng nhận X.509 an ninh an toàn trên các trang web
  • Thử  nghiệm  cho  các  chức  năng  ứng  dụng  chính  xác  dựa  trên  các  giá trị thu ộc tính không hợp lệ URL.
  • Kiểm tra các chức năng ứng dụng với các lĩnh vực đầu vào không hợp lệ, bao gồm các lĩnh vực văn bản.
  • Kiểm  tra  bảo  vệ  máy  chủ  web  của  các  thư  mục  web  không  thể  truy  cập hoặc các tập tin.
  • Kiểm tra để xác định ứng dụng Web vi phạm an ninh, bao gồm cả thông báo l ỗi và vi phạm an ninh nỗ lực đang được đăng nhập.
  • Kiểm tra các lĩnh vực CAPTCHA cho các hình th ức web và đăng nhập.
  • Kiểm tra các thiết lập bảo mật trình duyệt để di chuyển từ an to àn vào các trang web không an toàn.

Giám sát sản xuất

  • Vận hành thử nghiệm ứng dụng web theo định kỳ và lưu các bản ghi kiểm tra như là bằng chứng của Hiệp định Cấp Servlice (SLA) tuân thủ .
  • Định kỳ kiểm tra kinh nghiệm người dùng cuối.
  • Cung cấp tự động mở rộng quy mô và h ệ thống cân bằng tải với cuối số liệu kinh nghiệm người dùng.
  • Kiểm tra các chức năng ứng dụng đúng từ nhiều vị trí địa lý.

Kiểm tra khả năng sử dụng

Việc phong cách thiết kế và trình diễn của một ứng dụng có tác động ảnh hưởng lớn đến thành công xuất sắc người dùng của bạn sẽ có trong việc sử dụng các ứng dụng Web .

Kiểm tra đối với Danh mục chính:

  • Kiểm tra người sử dụng có kiểm soát rõ ràng và d ễ dàng di chuy ển từ trang này sang trang.
  • Kiểm tra dòng chảy của một ứng dụng web bằng cách quan sát cách người sử dụng hoàn thành m ục tiêu của họ – Kiểm tra xem người dùng có thể tìm thấy  hướng dẫn nên họ không trực giác biết làm thế nào để vận hành một chức năng
  • Kiểm tra các đối t ư ợng chuyển h ư ớng chung xuất hiện tr ên t ất cả các trang luôn
  • Chức năng tìm kiếm thử nghiệm cho các chức năng ứng dụng thích hợp

Kiểm tra nội dung:

  • Kiểm tra nội dung là hợp lý sắp xếp và dễ dàng cho người sử dụng hiểu.
  • Kiểm tra lỗi chính tả.
  • Kiểm tra xem trang adhear đến m àu s ắc và hoa văn hướng dẫn phong cách, bao gồm phông chữ, khung hình, và biên giới.
  • Kiểm tra xem các h ình ảnh tải một cách chính xác và có kích thước phù hợp.

Một số chú ý quan tâm khi test web và test windows application :

– Window Application hay còn gọi Desktop Application sử dụng kiến trúc 2 tầng giữa client và server.

  • Install rồi chạy trên những máy tính cố định
  • Nếu có thay đổi, thường là phải install lại và test lại ứng dụng.
  • Hệ thống thường là một người dùng, nếu có share dữ liệu thì cũng là share mạng LAN là chủ yếu.
  • Thực thi trên máy tính cá nhân, server, vì vậy khi test trên ứng dụng desktop người ta chú trọng trên 1 môi trường cụ thể.
  • Vì thường chỉ sử dụng bởi 1 người dùng trên máy cụ thể nên không cần thực thi Load Test với giả lập số lượng user nhiều.
  • Kiểm thử bảo mật cũng đơn giản và dễ dàng hơn.
  • Background và màu sắc, layout thường giống nhau đối với các cửa sổ.

– Web Application sử dụng kiến trúc đa tầng ( user client, database và server )

  • Nhiều người dùng tại 1 thời điểm.
  • Duyệt bằng trình duyệt, không biết trước môi trường duyệt web của người dùng, vì thế phải test tất cả trình duyệt và tất cả hệ điều hành
  • Thường phải thực hiện load test.
  • Kiểm thử bảo mật phức tạp hơn, khó khăn hơn.
  • Background và màu sắc thì thay đổi theo từng ứng dụng, layout và font chữ có thể hiển thị khác nhau trên từng trình duyệt.

Kiểm thử web

Các website là các ứng dụng client / server ( các sever web và “ trình duyệt ” của người mua ) cơ bản. Cần xem xét đến sự tương tác giữa các trang html, dịch vụ web, thông tin liên lạc đã được mã hóa, liên kết Internet, tường lửa, các ứng dụng chạy trong các website ( như javascript, flash, plug-in các ứng dụng ), nhiều ứng dụng hoàn toàn có thể chạy ở phía sever, vv … Ngoài ra, có rất nhiều loại sever và các trình duyệt, các phiên bản khác nhau của từng, nhỏ nhưng nhiều lúc sự độc lạ giữa chúng, các biến hóa trong vận tốc liên kết, công nghệ tiên tiến biến hóa nhanh gọn, các tiêu chuẩn và giao thức. Kết quả sau cuối là kiểm thử các website hoàn toàn có thể trở thành một nỗ lực lớn đang diễn ra. Những điều cần xem xét khác hoàn toàn có thể gồm có :

  • Tải mong muốn trên máy chủ là gì (ví dụ, số lượt truy cập trên một đơn vị thời gian?), loại hiệu năng yêu cầu là gì (như thời gian đáp ứng của máy chủ web, thời gian đáp ứng của truy vấn cơ sở dữ liệu). Những loại công cụ cần thiết để thử nghiệm hiệu năng (ví dụ như load testing tool, các công cụ có sẵn khác có thể điều chỉnh, thiết bị tạo tải, vv…)
  • Đối tượng mục tiêu là ai? Loại và phiên bản nào của trình duyệt sẽ được họ sử dụng, và mức độ bao quát sẽ kiểm thử cho các thay đổi này? Loại kết nối nào sẽ được họ sử dụng? Họ nằm trong nội bộ của một tổ chức (nếu như vậy, thì tốc độ kết nối có khả năng cao và các trình duyệt tương tự nhau) hoặc bên ngoài internet (nếu như vậy, thì có nhiều tốc độ kết nối và các loại trình duyệt khách nhau)
  • Những hiệu năng nào mong muốn trên phía máy khách (ví dụ, trang web sẽ xuất hiện nhanh như thế nào, flash sẽ nhanh như thế nào, các ứng dụng applet, v.v… thời gian tải và chạy)
  • Thời gian nghỉ cho server và việc bảo trì/nâng cấp nội dung sẽ cho phép hay không? Bao nhiêu
  • Loại bảo mật nào (firewalls, encryption, passwords, functionality, v.v…) sẽ được yêu cầu và mong muốn sẽ làm gì? Có thể kiểm thử như thế nào
  • Các yêu cầu quốc tế hóa/nội địa hóa/ngôn ngữ có yêu cầu hay không, và làm thế nào để kiểm tra các điều này
  • Mức độ tin cậy kết nối Internet của trang web sẽ được yêu cầu như thế nào? Và ảnh hưởng đến hệ thống dự phòng hoặc các yêu cầu kết nối dự phòng và kiểm thử như thế nào
  • Qui trình sẽ được yêu cầu để quản lý cập nhật nội dung trang web, và các yêu cầu cho việc bảo trì, theo dõi và điều khiển nội dung, đồ họa, link, v.v… của trang web là gì
  • HTML và mô tả chi tiết (spec) liên quan nào sẽ được sử dụng? Mức độ chặt chẽ thế nào? Các thay đổi dự định sẽ được phép đối với các trình duyệt
  • Liệu có bất kỳ tiêu chuẩn hoặc yêu cầu đối với sự giao diện và/hoặc đồ họa của một phần hoặc một trang web
  • Liệu có bất kỳ quá trình phát triển thực tế/tiêu chuẩn sử dụng cho các thành phần và nhận dạng của trang web (components và identifiers), nó có thể tác động đáng kể đến việc kiểm thử tự động.
  • Liên kết nội bộ và bên ngoài sẽ được xác nhận và cập nhật như thế nào? Mức độ thường xuyên ra sao
  • Cả hệ thống sản phẩm có thể được kiểm thử hết, hoặc sẽ tách riêng một phần hệ thống để kiểm thử? Trình duyệt caching (lưu bộ nhớ đệm) như thế nào, thay đổi thiết lập tùy chọn trong trình duyệt, thay đổi kết nối, và vấn đề “tắc nghẽn giao thông” của Internet trong thế giới thực sẽ được tính toán cho vào kiểm thử
  • Làm thế nào mở rộng hay tùy biến nhật ký (log) của máy chủ và các yêu cầu báo cáo; chúng có được coi là một phần của hệ thống và chúng có được yêu cầu thử nghiệm không
  • Các thành phần như flash, applet, javascript, ActiveX component, v.v… sẽ được bảo trì, theo dõi, điều khiển, test như thế nào

Vậy những điều cần chú ý quan tâm khi test website ?

Kiểm thử chức năng

Test tổng thể các link trong website, liên kết cơ sở tài liệu, định dạng được sử dụng trong các website để gửi / nhận những thông tin thiết yếu từ người dùng, kiểm tra cookie

Kiểm tra tất cả các liên kết (links):

  • Kiểm tra các links liên kết ngoài trang web
  • Kiểm tra tất cả các links nội bộ
  • Kiểm tra các links tới các vị trí trong cùng trang
  • Kiểm tra cá links sử dụng để gửi mail tới admin hoặc người dùng khác từ trang web
  • Kiểm tra xem có trang trống nào không
  • Kiểm tra các links bể trong tất cả các links nói trên

Kiểm tra form của tất cả các trang: Form là phần cơ bản của bất kỳ trang web nào. Form được sử dụng để nhận thông tin từ người dùng và tương tác với họ. Vậy, những gì cần phải được kiểm tra trong form?

  • Kiểm tra tất cả trường bắt buộc
  • Kiểm tra các giá trị mặc định của các trường
  • Các đầu vào sai cho các trường
  • Kiểm tra các form bất kỳ: xóa, xem, sửa

Kiểm thử cookie: Cookies là các file nhỏ được lưu trong máy người dùng. Đây là cách cơ bản để duy trì các phiên làm việc, đặc biệt là các phiên đăng nhập. Kiểm tra ứng dụng bằng cách chọn “cho phép lưu” (enable) hoặc “không cho phép lưu” (disable) cookies từ trình duyệt của bạn. Kiểm tra các cookies có được mã hóa trước khi ghi vào máy người dùng? Nếu bạn đang kiểm thử cookies (cí dụ cookies hết hạn sau khi kết thúc phiên làm việc), hãy kiểm tra các phiên đăng nhập và trạng thái của người dùng sau khi phiên làm việc kết thúc. Kiểm tra bảo mật ứng dụng bằng cách xóa các cookies.

Xác minh HTML/CSS của bạn: Nếu bạn đang tối ưu hóa trang web của bạn cho các công cụ tìm kiếm (Search engines) thì việc xác minh HTML/SCC rất quan trọng. Việc xác minh chủ yếu là các lỗi cú pháp HTML. Kiểm tra xem trang web có được nhận diện với các công cụ tìm kiếm khác nhau hay ko?

Kiểm thử cơ sở tài liệu :

  • Sự nhất quán về dữ liệu rất quan trọng trong ứng dụng web. Kiểm tra tính toàn vẹn của dữ liệu và các lỗi khi bạn tạo/sửa/xóa các forms hoặc thực hiện bất kỳ chức năng nào có liên quan tới CSDL
  • Kiểm tra tất cả các truy vấn CSDL có được thực thi chính xác không? Dữ liệu có được lấy và cập nhật chính xác không? Ngoài ra cần kiểm tra việc tải dữ liệu vào DB, chúng tôi sẽ trình bày vấn đề kiểm thử tải và kiểm thử hiệu năng sau.

Kiểm thử tính khả dụng

Kiểm thử cho chuyển hướng: Chuyển hướng nghĩa là cách thức người dùng lướt web (xem các trang webs), sử dụng các điều khiển khác nhau như các nút bấm, các hộp (textbox, listbox…) hay cách người dùng sử dụng các đường links trong các trang để lướt web.

Kiểm thử tính khả dụng: Trang web phải dễ sử dụng. Cung cấp các hướng dẫn rõ ràng, rành mạch. Kiểm thử xem các hướng dẫn đó có đúng như những gì nó phải đáp ứng ko? Mỗi trang đều cần có menu chính, và menu này phải nhất quán.

Kiểm thử nội dung: Nội dung trang web phải hợp lý và dễ hiểu. Kiểm tra các lỗi chính tả. Các màu tối sẽ gây phiền phức cho người dùng và do đó ko nên được sử dụng. Bạn có thể theo một vài chuẩn nào đó được sử dụng cho việc xây dựng nội dung web. Đây là những chuẩn được chấp nhận phổ biến như tôi đã chú ý ở trên, về màu sắc, fonts, frames… Nội dung cần phải đầy đủ ý nghĩa. Tất cả các đường links được gán phải làm việc tốt. Các tranh ảnh phải được đặt đúng chỗ với đúng kích thước. Có một vài chuẩn cơ bản nên theo khi phát triển ứng dụng web. Nhiệm vụ của bạn là xác minh tất cả khi kiểm thử giao diện.

Các thông tin hỗ trợ người dùng: Như lựa chọn tìm kiếm, sơ đồ trang web, các file hỗ trợ…Sơ đồ trang web cần có trong tất cả các links trong trang web với cây thư mục để hỗ trợ chuyển hướng. Kiểm tra tất cả cá links trong sơ đồ.Tùy chọn “Tìm kiếm trong trang web” sẽ giúp người dùng tìm kiếm các trang nội dung một cách dễ dàng và nhanh chóng. Tất cả các mục cần được phô bày và phải được xác minh

Kiểm tra giao diện

Các giao diện chính :

  • Giao diện web server và server ứng dụng
  • Giao diện server ứng dụng và giao diện server cơ sở dữ liệu

Kiểm tra tổng thể các tương tác giữa các servers có được thực thi đúng không ? Các lỗi phải được chớp lấy đúng chuẩn. Nếu server CSDL hoặc web server trả lại bất kể thông điệp lỗi nào cho bất kể truy vấn nào từ server ứng dụng, thì server ứng dụng phải bắt được và hiển thị thông điệp cảnh báo nhắc nhở đó cho người sử dụng ngay lập tức. Kiểm tra điều gì sẽ xảy ra nếu người dùng ngắt thanh toán giao dịch bất ngờ đột ngột ? Kiểm tra điều gì xảy ra nếu liên kết tới web server bị khởi động lại ?

Kiểm thử khả năng tương thích

Kiểm thử năng lực thích hợp của website là một phần rất quan trọng. Trong đó ta cần thực thi các việc sau :

  • Kiểm thử sự tương thích với trình duyệt.
  • Kiểm thử sự tương thích với hệ điều hành.
  • Kiểm thử sự tương thích với thiết bị di động.
  • Kiểm thử sự tương thích với tùy chọn các thiết bị ngoại vi (máy in…).

Tương thích với trình duyệt:

  • Một vài ứng dụng phụ thuộc rất nhiều vào trình duyệt. Các trình duyệt khác nhau có các cấu hình khác nhau và trang web của bạn cần tương thích với nó. Trang web của bạn phải được lập trình đáp ứng tương thích với các platform của trình duyệt. Nếu bạn sử dụng Javascript, AJAX để xây dựng các chức năng giao diện người dùng, kiểm thử bảo mật hay xác minh, hãy kiểm tra tải trên trình duyệt cho ứng dụng của mình.
  • Kiểm thử các ứng dụng web trên các trình duyệt khác nhau như IE, Firefox, Netscape, AOL, Safari, Opera với các phiên bản khác nhau.

Tương thích với hệ điều hành:

  • Một vài chức năng trong ứng dụng web của bạn có thể không tương thích với tất cả các hệ điều hành. Tất cả các công nghệ mới được sử dụng trong phát triển web như thiết kế đồ họa, giao diện được gọi như các API khác có thể không có sẵn trong mọi hệ điều hành.
  • Hãy kiểm thử các ứng dụng web của mình trên các hệ điều hành khác nhau như Windows, Unix, MAC, Linux, Solaris…

Trình duyệt trên thiết bị di động:

  • Đây là thời đại công nghệ mới. Các trình duyệt di động sẽ phát triển mạnh trong tương lai. Hãy kiểm thử các trang web của bạn trên các trình duyệt di động. Các vấn đề về tương thích có thể xuất hiện trên các thiết bị di động.

Tùy chọn in:

  • Nếu bạn nhận được tùy chọn “in trang” thì phải đảm bảo tính chính xác của fonts, liên kết trang, đồ họa…Các trang phải được khớp với cỡ giấy.

Kiểm thử hiệu năng

Ứng dụng web phải được duy trì với tải lớn. Kiểm thử hiệu năng gồm có :

  • Kiểm thử tải
  • Kiểm thử áp lực

Kiểm thử hiệu năng ứng dụng với các vận tốc liên kết mạng khác nhau .
Trong kiểm thử tải phải kiểm tra xem khi có nhiều người dùng cùng truy vấn hoặc cùng nhu yếu một trang thì sao ? Hệ thống hoàn toàn có thể duy trì hoạt động giải trí trong giờ bận được không ? Trang web phải chớp lấy được nhiều nhu yếu đồng thời của người dùng, tài liệu nguồn vào lớn từ các người dùng, liên kết đồng nhất với DB, tải lớn trên các trang đặc biệt quan trọng …

Kiểm thử chịu tải: Thông thường stress test có nghĩa là đẩy hệ thống vượt ra ngoài giới hạn của nó. Kiểm thử chịu tải một trang web là làm gián đoạn trang web đó bằng cách tăng lượng tải cao hơn và kiểm tra xem hệ thống phản ứng lại với từng mức tải cụ thể đó như thế nào? Hệ thống phục hồi lại như thế nào? Tải có thể nhận dữ liệu đầu vào từ các phần đăng nhập, đăng ký, seach…

Trong kiểm thử hiệu năng web, các công dụng của website trên các hệ điều hành quản lý, các nền tảng phần cứng khác nhau phải được kiểm tra để tìm ra các lỗi ứng dụng, thất thoát bộ nhớ …

Kiểm thử bảo mật

Một vài test case cho kiểm thử bảo mật thông tin web :

  • Kiểm thử bằng cách gõ trực tiếp url vào thanh địa chỉ của trình duyệt mà không qua đăng nhập. Các trang nội bộ phải không được mở.
  • Nếu bạn đã đăng nhập với username và password, và mở các trang nội bộ, hãy thử thay đổi url trực tiếp. Ví dụ, nếu bạn kiểm tra một vài thống kê trang với ID = 123, hãy thay đổi trực tiếp tham số ID của trang tới trang thuộc quyền người dùng đã đăng nhập. Truy cập phải bị từ chối bởi người dùng này bởi không cho phép xem số liệu thống kê của người dùng khác.
  • Thử các giá trị đầu vào không hợp lệ trong các trường nhập như password, username…vào các textboxes. Kiểm tra phản ứng của hệ thống trước các đầu vào không hợp lệ này.
  • Các thư mục web hay các tệp tin không được truy nhập trực tiếp mà không có tùy chọn “download”
  • Kiểm tra CAPTCHA cho các đăng nhập tự động
  • Kiểm tra SSL có được sử dụng cho đo mức bảo mật? Các thông điệp có được hiển thị khi người dùng chuyển từ các trang không bảo mật sang các trang có bảo mật và ngược lại
  • Tất cả các phiên giao dịch, các thông điệp lỗi, các hành vi cố gắng xâm phạm an ninh phải được ghi trong các tệp nhật ký (log) và lưu tại web server.
5/5 - (1 vote)

Bài viết liên quan

Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments