WEB ENGINEERING – KIỂM THỬ ỨNG DỤNG WEB

17 989 10
WEB ENGINEERING – KIỂM THỬ ỨNG DỤNG WEB

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Kiểm thử là một hoạt động để đánh giá chất lượng của 1 sản phẩm phần mềm và quan trọng là cải thiện nó bằng cách tìm ra những thiếu xót, khiếm khuyết

BÁO CÁO NHÓM 15 08110CLC1 BÀI TẬP LỚN: MÔN CÔNG NGHỆ PHẦN MỀM ĐỀ TÀI: WEB ENGINEERING KIỂM THỬ ỨNG DỤNG WEB DANH SÁCH SINH VIÊN THỰC HIỆN: • Huỳnh Tấn Phát • Vũ Việt Hùng • Cao bá Lộc 1 Mục Lục I. Lời giới thiệu. Trong thế giới điện toán ngày nay, các ứng dụng Web đã thực sự phát triển rất mạnh, nhanh. Hàng loạt công nghệ mới ra đời để đáp ứng những đòi hỏi của những người sử dụng muốn có mỗi khi họ bật trình duyệt Web của mình lên. Gần như những gì mà phần mềm truyền thống có thể làm được thì Web cũng làm được. Từ nghe nhạc, xem phim, đọc báo, cả những công việc mà trước đây chỉ có phần mềm truyền thống mới có thể thực hiện được như soạn thảo văn bản, các sản phầm chế bản văn phòng, chuyển đổi định dạng các file, hay thậm chí cả những bài toán quản lý phức tạp của các doanh nghiệp cũng có thể triển khai trên Web. Rõ ràng, Web là tương lai của điện toán hiện đại. Thế nhưng để tạo được ra những ứng dụng Web tuyệt vời như vậy thì đằng sau đó là một loạt những công đoạn, thao tác từ phân tích thiết kế, lập trình, kiểm thử, định giá. Trong đó vấn đề kiểm thử các ứng dụng Web tuy cũng có một số điểm tương đồng với kiểm thử phần mềm truyền thống nhưng nó có những điểm khác biệt rõ nét. Trong đề tài bài tập lớn này, chúng em chỉ tìm hiểu khái quát về “thế nào gọi là kiểm thử ứng dụng Web” để có 1 cái nhìn bao quát và nhìn ra sự khác biệt giữa kiểm thử Webkiểm thử phần mềm truyền thống. II. Thế Nào Là Kiểm Thử 1 Ứng Dụng Web? 1. Khái quát. 2 Các ứng dụng Web đã được phát triển và trở thành 1 nền tảng kết nối 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 của thương mại điện tử (e-commerce), trao đổi thông tin. Để 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 tin cậy v.v… Việc đưa ra 1 ứng dụng Web hoàn hảo cho những người đang và sẽ sử dụng ứng dụng đã trở thành 1 thử thách chính trong đảm bảo chất lượng. Kiểm thử là một trong những công việc quan trọng để có thể đánh giá chất lượng của 1 sản phẩm và đương nhiên là các ứng dụng Web cũng không phải là ngoại lệ. Các phương pháp kiểm thử thông thường và các kĩ thuật sẽ 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 thể nào tập trung được vào hết tất cả các chức năng yêu cầu. Bởi có rất nhiều chức năng quan trọng cho người sử dụng ứng dụng như đó là: tính hiệu năng, tính dễ sử dụng, độ tin cậy, và tính bảo mật cần phải được xem xét. Những yêu cầu và mong đợi của người sử dụng, những vấn đề về nền tảng và cấu hình, mô hình nghiệp vụ, sự phát triển và chi phí cho việc kiểm thử là những vấn đề thường hay gặp phải và thay đổi liên tục đổi xuyên suốt chu trình của 1 ứng dụng Web. Vì thế, cần thiết phải phát triển 1 chiến lược hiệu quả cho việc kiểm thử mà có thể bao quát được giới hạn tổng thể rộng lớn của những yêu cầu, chức năng cho 1 ứng dụng Web qua đó có thể giúp cho việc cài đặt, hoàn thành ứng dụng cũng như tránh được các rủi ro có thể gặp. 2. Tại Sao Phải Kiểm Thử Ứng Dụng Web Các ứng dụng Web đưa ra những thử thách mới trong việc đánh giá và kiểm thử. Các ứng dụng Web bao gồm nhiều thành phần khác nhau có thể được cung cấp bởi những nhà phát triển khác nhau. Chất lượng của 1 ứng dụng Web về cơ bản phụ thuộc vào các thành phần kể trên và khả năng tương tác giữa chúng. Kiểm thử là 1 trong những công cụ quan trọng nhất trong quá trình phát triển 1 ứng dụng Web để tạo ra những sản phầm với chất lượng cao đáp ứng được mong đợi của người dùng. Việc 3 kiểm thử 1 cách có phương pháp và hệ thống các ứng dụng Web là một điều quan trọng, và chúng nên được quan tâm xứng đáng trong quy trình tạo ra 1 sản phẩm Web. Kiểm thử là một biện pháp ngắm vào việc tìm ra các lỗi, thiếu sót trong ứng dụng dưới góc độ kĩ thuật. Hiện nay có rất nhiều phương pháp và kĩ thuật tiên tiến, hiệu quả để kiểm thử những hệ thống phần mềm. Tuy nhiên, chúng ta không thể áp dụng 1 cách cứng nhắc những phương pháp hay kĩ thuật áp dụng cho phần mềm truyền thống lên những ứng dụng Web. Vậy vấn đề đặt ra ở đây là chúng ta cần phải linh hoạt khi áp dụng làm cho những phương pháp này phù hợp, thích ứng với việc kiểm thử các ứng dụng Web. Những kiểm thử cần có cho 1 ứng dụng Web Kiểm thử các ứng dụng Web đã vượt qua giới hạn của kiểm thử những hệ thống phần mềm truyền thống. Như chúng ta biết, 1 ứng dụng Web thường có rất nhiều nhóm người sử dụng với rất nhiều những nền tảng khác nhau (hệ điều hành, trình duyệt v.v…), điều này dẫn tới việc kiểm thử 1 ứng dụng Web cần phải có những phương pháp đặc biệt khác với phần mềm truyền thống. Thông thường, rất khó để có thể đoán trước được số lượng người sẽ sử dụng 1 ứng dụng Web là bao nhiêu. Thời gian hồi đáp lại yêu cầu của người sử dụng là 1 yếu tố then chốt trong số những yếu tố quyết định thành công của 1 ứng dụng Web trên Internet và nó cần được quan tâm và kiểm thử sớm. Những yếu tố còn lại như khả năng - giá trị sử dụng, tính bảo mật, tính tương thích với các trình duyệt, hiệu năng cũng rất quan trọng và cần được quan tâm đến sớm trong công việc kiểm thử. Chúng ta sẽ đề cập đến những giải pháp, phương thức và công cụ cho kiểm thử Web. Kinh nghiệm đúc kết từ những dự án nghiên cứu và rất nhiều các dự án trong thực tế đã góp phần hình thành những nền tảng cơ sở cho sự phát triển của các phương pháp kiểm thử ứng dụng Web. 3. Những công việc khi kiểm thử 1 ứng dụng Web. Kiểm thử là một hoạt động để đánh giá chất lượng của 1 sản phẩm phần mềm và quan trọng là cải thiện nó bằng cách tìm ra những thiếu xót, khiếm khuyết. “Nếu chúng ta chạy 1 phần mềm mà với ý định tìm ra lỗi của nó tức là chúng ta đang nói đến việc kiểm thử” (Myers 1979). Trong hình sau, chúng ta thấy kiểm thử là 1 phần của công việc phân 4 tích, đánh giá chất lượng. Bằng việc tìm ra các lỗi và kiểm tra chất lượng của 1 chương trình là 1 cách cơ bản để cải thiện chất lượng cho 1 phần mềm. Cấu trúc của kiểm định chất lượng phần mềm Mục đích của bất kì chương trình nào chính là xử lý thông tin. Chúng ta nói rằng “lỗi” là khi chương trình không đưa ra kết quả như mong đợi.Tức là sự khác biệt giữa kết quả thực tế và kết quả mong đợi sẽ là lỗi. Định nghĩa này ngụ ý rằng các định nghĩa yêu cầu được sử dụng như một cơ sở cho việc thử nghiệm được hoàn tất và có sẵn trước khi cài đặt và kiểm tra. Một vấn đề thường hay xảy ra trong quá trình phát triển các ứng dụng Web đó là các yêu cầu này thường không đầy đủ, tường minh và có thể thay đổi bất cứ lúc nào. Thông thường, chúng ta cần có được cái nhìn khái quát về các chức 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 để thực hiện phát hành lần đầu ứng dụng. Kết quả là, các chu kì nhỏ hơn của các chức năng mới được bổ sung sẽ theo sau các chu trình phát triển ban đầu này. Phương pháp tiếp cận nhanh tập trung vào tính chất lặp và tiến hóa của 1 ứng dụng Web và vòng đời phát triển của chúng mà không hề có bất cứ 1 văn bản cụ thể nào định nghĩa về phương pháp này. Các mục tiêu, mối quan tâm và mong đợi của các bên liên quan có để hình thành cơ sở cho việc thử nghiệm. Các bên liên quan (trong công việc phát triển 1 ứng dụng Web) thường có những mong đợi, kỳ vọng khác nhau, thậm chí 1 số kỳ vọng còn có thể mơ hồ. Chính vì lý do này, mong đợi, kỳ vọng của các bên liên quan sẽ không thể thống nhất và quyết định xem 1 kết quả mà ứng dụng đưa ra có là sai sót hay không trừ khi các bên liên quan đã có 1 thỏa thuận về các yêu cầu, mong đợi cụ thể từ ứng dụng và những mong đợi, yêu cầu này ở dạng có thể kiểm thử. Để hỗ trợ giúp cho những “kiểm thử viên” có thể có được cái nhìn sâu sắc và thấu đáo những mong đợi, kỳ vọng 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 công việc xác định và định nghĩa các yêu cầu. 4. Các Đặc Điểm Về Chất Lượng Của Một Ứng Dụng Web. Một người sử dụng không chỉ mong đợi chương trình của họ sẽ vận hành 1 cách ổn định, đúng đắn mà họ còn yêu cầu một số chức năng nào đó phải luôn 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 5 những ưu điểm sau: tính dễ sử dụng, độ tin cậy, tốc độ, tương thích với các hệ thống khác nhau và tương thích với các phiên bản trong tương lai. Còn với 1 ứng dụng Web, thì những yêu cầu về chất lượng bao gồm: • 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 1 ứng dụng để duy trì sự hiệu quả của nó trong 1 điều kiện cụ thể và trong 1 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 1 ứng dụng. Vấn đề này có thể được thẩm định bởi 1 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 1 ứ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 điểm về chất lượng và sự khác biệt ở cách mà chúng được kiểm thử, nhiều phương pháp để kiểm thử 1 ứng dụng Web tập trung vào một vài các đặc điểm. Tuy nhiên tất cả các đặc điểm đều quan trọng đối với 1 ứng dụng Web. Và công việc kiểm thử phải đảm bảo những yêu cầu này được cài đặt thành công. 5. Các Mục Tiêu Của Việc Kiểm Thử Một ứng dụng được kiểm thử không có nghĩa là ứng dụng đó được cải thiện về chất lượng trừ khi các lỗi và khiếm quyết được phát hiện và loại bỏ. Mục tiêu chính của kiểm thử chính là phát hiện lỗi thay vì chứng minh rằng 1 ứng dụng không có lỗi. Kiểm thử phần mềm không thể chứng minh 1 sản phẩm là không có lỗi mà sẽ làm điều ngược lại. Vì khi 1 sản phẩm sau khi thử nghiệm không bị phát hiện lỗi thì không có nghĩa là nó không có lỗi. Đơn giản là vì các lỗi chưa được phát hiện. Một số lượng lớn các đặc điểm về chất lượng cần được xem xét cùng vô vàn các giá trị đầu vào làm cho việc kiểm thử không thể được hoàn tất. Ngay cả khi kiểm thử trên diện rộng cũng không thể thực hiện được vì thông thường 1 chu trình phát triển rất ngắn. Do đó, không thể tránh khỏi những thiếu sót khi kiểm thử và các lỗi tiềm tàng sẽ không bị phát hiện. Đây là lý do tại sao việc kiểm thử thường có xu hướng tiếp cận với các lỗi. Những phần của ứng dụng mà có khả năng các chứa lỗi nghiêm trọng cần được tập trung thử nghiệm đầu tiên. Exploring the sources of risk may point to defects more directly than basing tests mainlyon requirements (Bach 1999). As a consequence, a further important test objective is to bring that risk to light, not simply to demonstrate conformance to stated requirements. Một kiểm thử là thành công khi nếu nó tìm ra các lỗi, đồng thời thêm vào đó là các thông tin về trạng thái của ứng dụng được thu thập qua mỗi lần kiểm thử. Trái lại, kiểm thử 6 không thành công tức là kiểm thử không tìm ra lỗi mà chỉ làm lãng phí thời gian. Điều này hoàn toàn chính xác đối với các ứng dụng Web nơi việc kiểm thử luôn bị hạn chế bởi yếu tố thời gian và nguồn lực. Chính vì vậy, các lỗi nghiêm trọng nên được phát hiện càng sớm càng tốt để giảm thiểu chi phí cho những đầu tư không cần thiết vào việc tìm kiếm và tháo gỡ các sai sót với từng giai đoạn phát triển. Những lỗi sảy ra trong giai đoạn đầu phát triển thường rất khó tháo gỡ trong các giai đoạn sau bởi bởi việc loại bỏ chúng thường gây nhiều xáo trộn và yêu cầu rất nhiều yếu tố để có thể đối phó với những lỗi này. Vì thế cần phải tiến hành kiểm thử càng sớm càng tốt, ngay từ lúc bắt đầu dự án. Kiểm thử 1 cách có hiệu quả và hiệu quả của kiểm thử đóng vai trò rất quan trọng. Tóm lại, chúng ta có thể nói đối với công việc kiểm thử nói chung và kiểm thử Web nói riêng, là cần phát hiện ra nhiều sai sót nhất có thể, đặc biệt là các lỗi nghiêm trọng, với chi phí thấp nhất có thể, thực hiện trong một thời gian ngắn nhất có thể, càng sớm càng tốt. 6. Các Mức Độ Kiểm Thử According to the distinct development phases in which we can produce testable results, we identify test levels to facilitate testing of these results. Tùy thuộc vào các giai đoạn phát triển khác nhau, có thể đưa ra những kết quả kiểm thử cho mỗi giai đoạn. Cần xác định rõ mức độ kiểm thử để tạo điều kiện thực hiện mỗi mức độ một cách hiệu quả: 1. Kiểm thử đơn vị (Unit Test): kiểm thử những đơn vị nhỏ nhất có thể kiểm thử độc lập với nhau (các lớp, các trang Web v.v ). Kiểm thử đơn vị thường được thực hiện bởi chính các lập trình viên trong suốt quá trình cài đặt. 2. Kiểm thử độ tích hợp: đánh giá sự tương tác giữa những đơn vị riêng biệt và đã được kiểm thử đơn vị trước đó khi chúng kết hợp với nhau. Kiểm thử độ tích hợp có thể được thực hiện bởi người kiểm thử (tester), lập trình viên hay có sự kết hợp của cả 2. 3. Kiểm thử hệ thống: kiểm tra sự hoàn thiện, tích hợp của hệ thống. Thông thường, kiểm thử hệ thống được thực hiện bởi 1 nhóm chuyên gia. 4. Kiểm thử để nghiệm thu: đánh giá hệ thống cùng sự phối hợp từ phía khách hàng trong những điều kiện gần với môi trường thực tế nhất. Kiểm thử nghiệm thu được tiến hành dựa trên những điều kiện và dữ liệu thực tế nhất. 5. Thử nghiệm Beta: để cho những người sử dụng dùng những phiên bản đầu của sản phầm nhằm mục tiêu nhận thông tin phản hồi sớm từ họ. Thử nghiệm Beta chính là thử nghiệm chính thức (tuy nhiên không có các chiến lược kiểm thử và các trường hợp kiểm thử mà dựa vào sự sáng tạo của 1 số lượng lớn người dùng tiềm năng). Một nguy cơ khi tiến hành các mức độ kiểm thử theo trình tự của các giai đoạn phát triển dự án là các thiếu xót khi không hiểu đúng mong đợi của người sử dụng được phát hiện ra ở những giai đoạn cuối dẫn đến việc xử lý chúng rất tốn kém. Để giảm thiểu nguy cơ này, kiểm thử cần được tích hợp thành một phần của công việc xây dựng sản phẩm. Một quá trình phát triển liên tục và lặp đi lặp lại sẽ làm giảm thiểu nguy cơ này vì 7 những phần nhỏ của hệ thống được kiểm thử trên tất cả các mức độ do đó các lỗi có thể được tìm thấy trước khi chúng ảnh hưởng sâu đến những bộ phận khác trong hệ thống. This means that the sequence of test levels described above does not always dictate the temporal sequence for Web project testing but may be performed several times, e.g. once for each incrementation of functionality. Điều này có nghĩa là trình tự của các mức độ kiểm thử được mô tả ở trên không phải luôn luôn tuân theo trình tự thời gian và có thể được thực hiện nhiều lần. 6. Vai Trò Của Người Kiểm Thử Để tìm ra nhiều lỗi nhất có thể thì yêu cầu người kiểm thử cần có tư tưởng của “kẻ phá hoại”. Trong các dự án Web, cần tập trung vào kiểm thử đơn vị được thực hiện bởi các lập trình viên còn các kiểm thử bổ sung cần được tiến hành bởi chính các phòng ban kinh doanh của khách hàng. Vì vấn đề chất lượng luôn bao gồm nhiều yếu tố, ta không nên tách rời 2 công việc phát triển và kiểm thử và sẽ có thêm nhiều khó khăn nếu cản trở sự hợp tác giữa đội ngũ kiểm thử và đội ngũ phát triển. Sau tất cả, mục tiêu chính là tìm ra các lỗi và những lỗi đó sẽ được gỡ bỏ bởi lập trình viên. Để đạt được điều này, thì một người kiểm thử cần xác định rằng: “Một người kiểm thử giỏi không phải là người tìm ra nhiều lỗi nhất hay người làm cho các lập trình viên lúng túng nhất mà là làm cho nhiều lỗi được sửa nhất”. Vì các nhóm trong 1 dự án Web thường hoạt động ở nhiều lĩnh vực khác nhau và thời gian hợp tác giữa các nhóm thường ngắn nên vì thế nên rất khó khăn cho các thành viên trong nhóm để thiết lập độ tin tưởng cần thiết để hợp tác chặt chẽ giữa những lập trình viên là người kiểm thử. II. Những Phương Pháp Kĩ Thuật Khi Kiểm Thử 1 Ứng Dụng Web Khi thử nghiệm các ứng dụng web, về cơ bản chúng ta có thể áp dụng tất cả các phương pháp và kỹ thuật thường được sử dụng trong thử nghiệm phần mềm truyền thống (xem Myers 1979, 1990 Beizer, Kaner et al 1999,. Jorgensen 2002). Chú ý đến những chi tiết cụ thể của các ứng dụng web vào tài khoản, một số trong những phương pháp thử nghiệm và kỹ thuật sẽ được suy nghĩ đến, hoặc thích nghi và mở rộng (ví dụ, " Những yếu tố nào có ảnh hưởng để được đưa vào tài khoản khi thử nghiệm khả năng tương thích với các trình duyệt Web khác nhau ? "). Ngoài ra, chúng ta sẽ cần các phương pháp thử nghiệm và kỹ thuật mới để che tất cả những đặc điểm mà không có trong thử nghiệm phần mềm truyền thống (ví dụ, thử nghiệm của các cấu trúc siêu văn bản). Bản tóm tắt được hiển thị trong bảng 7-1 tương ứng với sơ đồ thử nghiệm được giới thiệu trong phần 7.5 và có cấu trúc bằng kích thước đối tượng kiểm tra và kích thước các ký tự tiêu biểu. Bảng (xem thêm Ramler et al 2002) tóm tắt mẫu của những phương pháp, kỹ thuật, và công cụ ứng dụng lớp cho thử nghiệm ứng dụng web trong văn học (ví dụ, 2003 Ash, Dustin et al. Năm 2002, Nguyễn et al. 2003, Pressman 2005, Splaine và Jaskiel 2001). Nó cho thấy đại diện tiêu biểu của phương pháp thử nghiệm và các kỹ thuật như là một cơ sở thu xếp một phương pháp của công ty, dự án cụ thể và hộp công cụ. Bảng 7-1 Các phương pháp, kỹ thuật, và các lớp công cụ để thử nghiệm các ứng dụng Web Chức năng Nội dung và cấu trúc Cơ sở hạ tầng và môi trường 8 Chức năng Phù hợp Xem lại và kiểm tra, kiểm tra hướng phát triển Bảng kiểm mục, kiểm tra từ vụng, phong cách hướng dẫn, xem lại Độ chính xác Thu hút / chạy lại kiểm tra hướng phát triển Phân tích tĩnh, kiểm thủ ngữ phát, xem lại. Phân tích tĩnh, kiểm thử ngữ pháp Thao tác giữa các phần Trình duyệt chéo và nền tảng Kiểm tra khả năng tương thích Kiểm thử in ấn, bảng chỉ mục, xem lại, thử tình tương thích Trình duyệt chéo và nền tảng Kiểm tra khả năng tương thích Sự hài lòng Thử nghiệm tương hợp Phong cách hướng dẫn, Kiểm tra khả năng tương thích Bảng kiểm mục, Tương thích thử nghiệm, Phong cách hướng dẫn viên, Xem lại Trình duyệt chéo và nền tảng Kiểm tra khả năng tương thích Bảo mật Phân tích chung tấn công, xét và thanh tra Phân tích chung tấn công, cưỡng- lỗi thử nghiệm, đạo đức hacking Độ tin cậy Đáo hạn Độ bền thử nghiệm Độ bền thử ghiệm Dung sai Buộc-lỗi thử nghiệm , Căng thẳng thử nghiệm Buộc-lỗi thử nghiệm, Nguồn lực thử nghiệm thấp, Căng thẳng thử nghiệm Tính có thể khôi phục Buộc lỗi thử nghiệm Fail-over thử nghiệm Fail-over thử nghiệm, Buộc-lỗi thử nghiệm, Nguồn lực thử nghiệm thấp Khả năng sử dụng Tính dễ hiểu Có thể học được Tìm tòi đánh giá Dễ phân tích để đọc, Có thể học được Có thể học được Nghiên cứu khả năng sử dụng, Tìm tòi đánh giá Tính thực thi Nghiên cứu khả năng sử dụng, Tìm tòi đánh giá Tìm tòi đánh giá Sức hấp dẫn Công khai thử nghiệm 9 Tính hiệu quả Thời gian Hành vi Kiểm thử tải và căng thẳng, Giám sát Kiểm thử tải và căng thẳng, Giám sát Tài nguyên sử dụng Độ bền thử nghiệm Tải thử nghiệm Độ bền thử nghiệm Giám sát 1. Thử nghiệm liên kết (link) Liên kết bên trong một cấu trúc siêu văn mà điểm đến không tồn tại một nút (các trang web, hình ảnh,vv) hoặc mấu neo được gọi là liên kết hỏng và đại diện nổi tiếng và thường xuyên xảy ra sai sót trong các ứng dụng web. Để kiểm tra cho 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 thói quen kiểm tra liên kết, 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 người khác hoặc cái gọi là các trang mồ côi. Những trang mồ côi có thể được đạt đế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 rõ ràng nơi để đi tới, để họ rời bỏ trang web. Các trang là thiết kế lý tưởng để họ kết thúc bằng một đề nghị của nơi người đọc có thể đi tiếp theo. 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 tramg liên quan đến các trang, được đo bằng số lượng các liên kết, hoặc lần tải của các trang. 2. Thử nghiệm trình duyệt Một số lượng lớn các trình duyệt web khác nhau có thể được sử dụng như là các khách hàng cho các ứng dụng web. Tùy thuộc vào nhà sản xuất (ví dụ, Microsoft, Mozilla, Netscape, Opera), hoặc phiên bản (ví dụ, trình duyệt Internet Explorer 5.0, 5,01, 5,5, 6,0), hoặc hệ điều hành (ví dụ, trình duyệt Internet Explorer cho Windows XP/2000, Windows 98/ME/NT, hoặc Macintosh), hoặc các thiết bị phần cứng (ví dụ như, màn hình có độ phân giải và độ sâu màu), hoặc cấu hình (ví dụ, kích hoạt các cookie, script ngôn ngữ, stylesheets), mỗi trình duyệt web cho thấy một hành vi khác nhau. Tiêu chuẩn như những quy định của W3C thường không thực hiện đầy đủ và "nâng cao" do không tương thích nhà cung cấp, mở rộng số liệu thống kê cụ thể và trình duyệt Web và cài đặt có sẵn trên mạng (ví dụ, ở http://www.webreference.com/stats/browser.html). 10 [...]... phổ biến 3 Kiểm thử khả năng sử dụng Kiểm tra đánh giá khả năng sử dụng của các vấn đề của sử dụng các mẫu thiết kế web khác nhau, bố trí tổng thể, và sự điều hướng (xem Chương 11) của một ứng dụng web bằng một tập các đại diện người sử dụng Trọng tâm là sự xuất hiện và khả năng sử dụng Một thử nghiệm khả năng sử dụng chính thức thường được tiến hành trong phòng thí 11 nghiệm thiết lập, sử dụng các phòng... quan đến thử nghiệm các ứng dụng web Ngoài ra W3C còn đánh giá các nguyên tắc cung cấp dịch vụ xác nhận (http://validator.w3.org/) sử dụng kết hợp với hướng dẫn sử dụngthử nghiệm người dùng của tính năng tiếp cận 4 Load, Stress, và Kiểm Thử Tính Liên Tục Tải thử nghiệm, bài kiểm tra căng thẳng, và thử nghiệm liên tục được dựa trên các thủ tục tương tự Một số yêu cầu được gửi đến các ứng dụng web nhỏ... nhỏ hơn đồng thời kiểm tra bởi người dùng mô phỏng để đo lường phản ứng lần và thông qua Các yêu cầu sử dụng trong các thử nghiệm này được tạo ra bởi một hoặc một vài " máy tải " Một ứng dụng kiểm soát phân phối với các tập lệnh kiểm tra trên máy tải; nó cũng đồng bộ hóa các hoạt động thử nghiệm và thu thập các kết quả thử nghiệm Tuy nhiên, tải thử nghiệm, bài kiểm tra căng thẳng, và thử nghiệm liên... lĩnh vực thử nghiệm Cái gì là mới ở đây, khi phát triển ứng dụng web, sự kết hợp của chất lượng các đặc điểm có ý nghĩa quyết định cho sự thành công của một ứng dụng web Trong phát triển phần mềm truyền thống, một số nhưng không phải tất cả các đặc điểm chất lượng là quan trọng, tùy thuộc vào lĩnh vực ứng dụng (ví dụ, các dữ liệu hướng ứng dụng, thời gian thực và nhúng hệ thống, hoặc các ứng dụng phân... dụ như các đối tượng thử nghiệm khác nhau và đặc điểm chất lượng) và chiều sâu của thử nghiệm (ví dụ như số lượng lớn và kết hợp dữ liệu đầu vào) Thử nghiệm tự động hóa mang lại các lợi ích sau đây để thử nghiệm ứng dụng Web (xem thêm Fewster và Graham 1999): • Chạy thử nghiệm hồi quy tự động trên các phiên bản mới của một ứng dụng Web cho phép phát hiện các lỗi gây ra do tác dụng phụ với chức năng...Một trình duyệt Web Thử nghiệm trình duyệt cố gắng để tìm ra lỗi trong ứng dụng web do không tương thích khác nhau giữa các trình duyệt Web Nhằm mục đích này, người ta thường định nghĩa cốt lõi của một ứng dụng web chức năng, thiết kế trường hợp thử nghiệm phù hợp, và chạy các thử nghiệm trên các hệ thống khác nhau với những phiên bản trình duyệt khác nhau Trong những thử nghiệm này, cần hỏi... ích 3 Chọn công cụ thử nghiệm Xu hướng hiện nay trong công cụ thử nghiệm ứng dụng Web là kết hợp chặt chẽ cùng với sự tiến triển liên tục trang web công nghệ và quá trình phát triển hiện đại Ngày nay, một số lượng lớn các công cụ khác nhau đều đã có sẵn Khi lựa chọn công cụ thích hợp để thử nghiệm các ứng dụng web, chúng ta luôn luôn cần phải nghiên cứu và đánh giá lại mọi thứ Đề án thử nghiệm được giới... chí để đánh giá công cụ kiểm tra được mô tả trong (Dustin et al 2002) Ngoài ra, nhiều trang web luôn có một bảng tóm tắt liên tục cập nhật các công cụ để thử nghiệm các ứng dụng web (ví dụ, ở http://www.softwareqatest.com/qatweb1.html) IV Kết Luận Các loạt ứng dụng yêu cầu chất lượng trên Web khuyến khích một sự thay đổi ngoài truyền thống tập trung vào chức năng trong việc kiểm tra và yêu cầu một... quả thử nghiệm và theo dõi lỗi • Kiểm tra trường hợp thiết kế: Công cụ có sẵn để thiết kế các trường hợp thử nghiệm hỗ trợ các nhà phát triển trong các trường hợp thử nghiệm từ định nghĩa các yêu cầu hoặc trong việc tạo dữ liệu để thử nghiệm • Phân tích tĩnh và phân tích động: Dụng cụ có sẵn để phân tích các ứng dụng web, ví dụ như, HTML hoặc cờ liên kết, hãy thử khám phá từ độ lệch chuẩn • Tự động kiểm. .. các ứng dụng web của nhà nước quản lý chính xác, hoặc tiểu bang không phù hợp có thể xảy ra khi điều hướng trực tiếp đến một trang, ví dụ, bằng cách sử dụng nút "Back" của trình duyệt? • Một trang web có thể được đánh dấu trong một giao dịch, và có thể người dùng sẽ trở lại trang đó sau này mà không cần phải nhập tên người dùng và mật khẩu để đăng nhập ? • Người sử dụng có thể sử dụng các ứng dụng Web . với việc kiểm thử các ứng dụng Web. Những kiểm thử cần có cho 1 ứng dụng Web Kiểm thử các ứng dụng Web đã vượt qua giới hạn của kiểm thử những hệ thống . là kiểm thử ứng dụng Web để có 1 cái nhìn bao quát và nhìn ra sự khác biệt giữa kiểm thử Web và kiểm thử phần mềm truyền thống. II. Thế Nào Là Kiểm Thử

Ngày đăng: 24/04/2013, 16:45

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan