Phát triển ứng dụng Web với Mink

Một phần của tài liệu Nghiên cứu phát triển phần mềm hướng hành vi ứng dụng công cụ behat (Trang 59 - 60)

Ngƣời dùng làm việc với ứng dụng web thông qua trình duyệt web. Trình duyệt chính là cửa sổ để ngƣời sử dụng tƣơng tác với ứng dụng và các ngƣời dùng khác. Để kiểm thử ứng dụng web, đặc biệt là kiểm thử chấp nhận tƣ̣ đô ̣ng cần có các biê ̣n pháp mô phỏng tƣơng tác giữa trình duyệt và ứng dụng web. Có khá nhiều trình duyệt mô phỏng, mỗi loại hoạt động theo cơ chế khác nhau. Tuy nhiên, có hai nhóm trình duyệt mô phỏng chính là:

 Trình duyệt giả định headless.  Bộ điều khiển trình duyệt.

Loại trình duyệt đầu tiên khá đơn giản, và thƣờng chỉ là các cài đặt để thực hiện HTTP đơn thuần, chúng gửi một yêu cầu HTTP và nhận nội dung phản hồi. Trình duyệt loại này thƣờng là các đoạn mã chƣơng trình đƣợc thực hiện thông qua việc gọi các lệnh tƣ̀máy chủ (server), chúng không có giao diện đồ họa vì thế tốc độ thực hiện nhanh. Tuy nhiên, trình duyệt headless thƣờng không hỗ trợ JS, Ajax, CSS nên không thể sử dụng để kiểm thử giao diện của ứng dụng web.

Loại thứ hai là các bộ điều khiển trình duyệt nhằm mục đích điều khiển các trình duyệt thực sự. Các bộ điều khiển trình duyệt mô phỏng tƣơng tác của ngƣời sử dụng trên trình duyệt và có thể khôi phục thông tin từ trình duyệt trang hiện thời. Loại này hỗ trợ JS/Ajax, tuy nhiên chúng yêu cầu phải cài đặt các trình duyệt thực sƣ̣ và thêm một số cấu hình vì thế tốc độ của nó chậm hơn loại trình duyệt mô phỏng đầu tiên.

Khi kiểm thử một ứng dụng, tùy thuô ̣c vào mục đích và nội dung kiểm thử để chọn loại trình duyệt mô phỏng phù hợp . Thông thƣờng để kiểm thử ứng dụng web mô ̣t cách tro ̣n ve ̣n cần phải sử dụng cả hai lo ại trình duyệt mô phỏng nêu trên.

Mink là mô ̣t nền tảng mã nguồn mở , đƣợc viết bằng PHP 5.3 hỗ trợ cả hai loại trình duyệt trên. Mink đƣợc sƣ̉ du ̣ng rô ̣ng rãi trong kiểm thƣ̉ chấp nhâ ̣n ƣ́ng dụng Web . Mink loại bỏ các API (Application Programming Interface – Giao diê ̣n chƣơng trình ƣ́ng du ̣ng ) khác nhau giữa các trình duyệt trình duyệt mô phỏng khác nhau, cung cấp cách đơn giản nhất để kiểm soát các trình duyệt, các trang và các thành phần của trang.Mink cũng cung cấp các API phù hợp cho các loại trình duyệt khác nhau hay viết bằng ngôn ngữ khác nhau thông qua các bô ̣

điều khiển. Thành phần điều khiển đƣợc viết tro ng lớp Driver \DriverInterface, lớp này cung cấp các phƣơng thức làm cầu nối giữa Mink và trình duyệt thực sự.

Một phần của tài liệu Nghiên cứu phát triển phần mềm hướng hành vi ứng dụng công cụ behat (Trang 59 - 60)