Đề tài Nghiên cứu công cụ kiểm thử IBM Rational Funtional Tester V7.0 Ứng dụng kiểm thử phần mềm tại trung tâm phát triển phần mềm Đại Học Duy Tân

Tài liệu Đề tài Nghiên cứu công cụ kiểm thử IBM Rational Funtional Tester V7.0 Ứng dụng kiểm thử phần mềm tại trung tâm phát triển phần mềm Đại Học Duy Tân

doc107 trang | Chia sẻ: hunglv | Lượt xem: 1744 | Lượt tải: 1download
Bạn đang xem trước 20 trang mẫu tài liệu Đề tài Nghiên cứu công cụ kiểm thử IBM Rational Funtional Tester V7.0 Ứng dụng kiểm thử phần mềm tại trung tâm phát triển phần mềm Đại Học Duy Tân, để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
MỤC LỤC DANH MỤC CÁC HÌNH VẼ H I.1: Mô hình khái niệm của quá trình kiểm thử 15 H II.1 The Software Development 14 H II.2 Quá trình bắt lỗi 26 DANH MỤC CÁC KÍ HIỆU VÀ TỪ VIẾT TẮT Bắt buột B CSDL Cơ sỡ dữ liệu GUI Graphical User Interface HTML Hyper Test Markup Language ITLM Information Technology Lifecycle Management RFT Rational Funtional Tester RPA Rational Process Advisor RUP Rational Unified Process UML Unified Modeling Language URL Uniform Resource Locator SAP Service Advertising Protocal SEK The 2007 developerWorks® Software Evaluation Kit Tuỳ chọn T MỞ ĐẦU 1. Lý do chọn đề tài Kiểm thử phần mềm là một thành phần quan trọng trong qui trình phát triển phần mềm. Nó đóng một vai trò quan trọng trong việc kiểm định chất lượng của phần mềm, đảm bảo rằng phần mềm tạo ra có chạy đúng với yêu cầu của khách hàng hay không, có xảy ra những sai sót mà nó khác với bảng phân tích thiết kế ban đầu không. Vì vây, năm 2006 IBM cho ra đời sản phẩm The 2007 developerWorks Software Evaluation Kit (SEK) for Windows, đây là một trong số nhiều phần mềm dùng cho việc kiểm thử. SEK bao gồm 6 Tool và em lựa chọn công cụ Rational Funtional Tester V7.0 để nghiên cứu cho đồ án tốt nghiệp. Đây là công cụ kiểm thử chức năng của phần mềm, một dụng cụ kiểm thử hồi quy tiên tiến, được tự động hóa cho Tester và người phát triển GUI. Bất kỳ một tổ chức nào cũng có một sự tin cậy của riêng mình vào việc phát triển của những trình ứng dụng để phục vụ cho những việc cần thiết như đáp ứng được những chức năng của khách hàng đưa ra, để cho khách hàng tỏ ra hài lòng về chất lượng của những trình ứng dụng và những đòi hỏi về những chức năng, điều kiện được đáp ứng đầy đủ, và không xảy ra sự tuỳ tiện trong sản phẩm. Một thành phần chủ yếu cho sự thành công này là tính hiệu quả, quy trình kiểm tra phải có tính kỷ luật tiến tới sự xác minh của những trình ứng dụng đã hoàn thành, quá trình kiểm tra phải có tính kỷ kuật để xem xét những trình ứng dụng đã hoàn thành đến mức độ nào, đó là sự phù hợp thích đáng hay là vượt ra khỏi những mong đợi trong đề án. Lịch trình làm việc không đúng, thường xuyên thay đổi những vấn đề chung của trình ứng dụng. IBM Rational Funtional Tester được xây dựng dựa trên những vấn đề này. Sau khi nghiên cứu một số tài liệu liên quan, được sự đồng ý của Khoa Công Nghệ Thông Tin – Đại Học Duy Tân Đà Nẵng, em đã thực hiện đề tài khóa luận tốt nghiệp mang tên: “Nghiên cứu công cụ kiểm thử IBM Rational Funtional Tester V7.0- Ứng dụng kiểm thử phần mềm tại trung tâm phát triển phần mềm Đại Học Duy Tân.” 2. Mục tiêu Đề tài giới thiệu các vấn đề trong kiểm thử và đi sâu nghiên cứu các tính năng cơ bản của công cụ IBM Rational Funtional Tester V7.0, đưa ra tài liệu hướng dẫn cài đặt, sử dụng công cụ một cách đơn giản và hiệu quả. Đề tài áp dụng được trong thực tế để kiểm thử phần mềm tại các công ty phần mềm, đặc biệt là CSE. 3. Phạm vi nghiên cứu Trong đề tài này em sẽ nghiên cứu về: -Lý thuyết kiểm thử. -Nghiên cứu các tính năng cơ bản của Tool Rational Funtional Tester V7.0. -Thực hiện kiểm thử trên bảng Demo. 4. Bố cục của đề tài Nội dung của luận văn được trình bày trong 3 chương Chương I: Cơ Sở Lý Thuyết Chương này giới thiệu tổng quan về quá trình kiểm thử, những khái niêm, những thuật ngữ, vấn đề liên quan đến kiểm thử, những mô hình kiểm thử và các loại kiểm thử thông dụng hiện nay. Chương II:Nghiên cứu về phần mềm SEK của IBM Trong chương này em tìm hiểu những công cụ có trong bộ The 2007 developerWorks® Software Evaluation Kit (SEK) for Windows® của IBM và ứng dụng của nó. Chương III. Nghiên cứu công cụ kiểm thử IBM Rational Funtional Tester V7.0. Trong chương này em giới thiệu chi tiết về công cụ, IBM RFT làm việc như thế nào, những tính năng và lợi ích mà nó mang lại, Thực hiện kiểm thử để chỉ ra những lợi ích mà nó mang lại đồng thời hướng dẫn cách thức kiểm thử để người dùng có thể thực hiện một cách đơn giản. Chương IV. Thực hiện kiểm thử trên một phần mềm có sẳn. Trong chương này em tiến hành kiểm thử trên một phần mềm có sẳn để khẳng định và chỉ ra những vấn đề mà em đã nêu ở chương III. Kết thúc luận văn là phần kết luận về những vấn đề đạt được và hướng phát triển của khóa luận và danh mục các tài liệu tham khảo CHƯƠNG I. CƠ SỞ LÝ THUYẾT I. TỔNG QUAN VỀ QUÁ TRÌNH KIỂM THỬ I.1 Một số định nghĩa về quá trình kiểm thử phần mềm Kiểm thử là việc kiểm tra kết quả thực hiện của chương trình máy tính xem có đúng với các mục tiêu đã đặt ra với nó không thông qua việc thực hiện ở một số mẫu thử. Kiểm thử là việc tìm ra những lỗi trong bản thân phần mềm, việc kiểm thử này trong phần mềm sẽ biểu thị ra những thiếu sót mà ta có thể nhận thấy trong hành vi của phần mềm, và tìm ra những phần không tuân theo quy định và đi lệch ra khỏi những yêu cầu của phần mềm. Theo một số nhà nghiên cứu thì kiểm thử phần mềm được định nghĩa như sau: Dijkstra: Kiểm thử sẽ hiện thị những lỗi hiện có, nhưng không hiển thị lỗi chưa thấy. Beizer: Định luật 1: Mọi phương pháp bạn sử dụng để ngăn ngừa hoặc tìm thấy lỗi bỏ đi một phần lỗi rắc rối, cái mà những phương thức cần. Định luật 2: Phần mềm phức tạp lớn hơn những giới hạn khả năng quản lý. Những người kiểm thử không tốt hơn trong thiết kế lỗi so với những lập trình viên kiểm thử trong thiết kế mã. IEEE: Kiểm thử là tiến trình vận hành hệ thống hoặc thành phần dưới những điều kiện xác định, quan sát hoặc ghi nhận kết quả và đưa ra đánh giá về hệ thống hoặc thành phần đó. Myers: Kiểm thử là tiến trình thực thi chương trình với mục đích tìm thấy lỗi.(The art of software testing) Giữa kiểm thử và gỡ rối có sự khác biệt: Kiểm thử nhằm phát hiện ra lỗi trong khi đó gỡ rối là việc xác định bản chất lỗi và định lỗi trong chương trình, sau đó tiến hành sữa lỗi. I.2 Những khái niệm liên quan đến kiểm thử Một sai sót(Error): Là một sự nhầm lẫn hay một sự hiểu sai trong quá trình phát triển phần mềm của người phát triển. Một lỗi(fault, defect): Xuất hiện trong phần mềm như là kết qủa của một sai sót. Một hỏng hóc(failure):là kết quả của một lỗi xuất hiện làm cho chương trình không hoạt động được hoặc hoạt động được nhưng không cho kết quả như mong muốn. Hỏng hóc Lỗi Sai sót Dữ liệu thử(test data): Dữ liệu vào cần cung cấp cho phần mềm khi thực thi. Kịch bản kiểm thử(test scenario): Các bước thực hiện khi kiểm thử. Phán xét kiểm thử(test oracle): Là việc đánh giá của kiểm thử, có hai cách đánh giá đó là bằng chương trình(tự động), bằng con người(thủ công). Kiểm thử viên(tester): Người thực hiện kiểm thử. Ca kiểm thử(test case):Tập dữ liệu kiểm thử, điều kiện kiểm thử, để đưa ra kết quả mong đợi. I.3 Mô hình khái niệm của quá trình kiểm thử H I. 1: Mô hình khái niệm của quá trình kiểm thử I.4 Mục tiêu của kiểm thử Việc kiểm thử nhằm thực hiện hai mục tiêu: Bằng việc kiểm thử sẽ tìm ra được những lỗi trong phần mềm (Myers,1979)và thiết lập chất lượng của phần mềm(Hetzel,1988) Việc kiểm thử thành công khi bạn tìm được ít nhất một lỗi, và đưa ra sự đánh giá với độ tin cậy lớn. I.5 Vai trò Testing để tìm ra lỗi, ghi nhận các thông tin về lỗi, nhưng không sữa lỗi. Testing giúp kiểm định phần mềm, đảm bảo rằng phần mềm “đủ tốt” với độ rủi ro “thấp nhất” có thể. II. NHỮNG VẤN ĐỀ LIÊN QUAN ĐẾN KIỂM THỬ II.1 Vòng đời kiểm thử Vòng đời của kiểm thử bắt đầu từ việc lập kế hoạch kiểm thử. Sau đó là ghi ra các ý tưởng các trường hợp kiểm thử. Từ các trường hợp kiểm thử này đưa ra tất cả các trường hợp kiểm thử và các kịch bản kiểm thử. Sử dụng các thủ tục hay kịch bản kiểm thử này, người kiểm thử có thể phát họa toàn bộ kiểm thử hệ thống hay kiểm thử tích hợp. Kết quả kiểm thử sẽ được đánh giá bởi các tiêu chí kiểm thử đặt ra ban đầu. Mô hình kiểm thử là một dãy các kế hoạch, các trường hợp kiểm thử và các thủ tục kiểm thử. Trong tiến trình bảo trì và nâng cấp dự án, thì kiểm thử đóng vai trò quan trọng. II.2 Tiến trình kiểm thử Tiến trình kiểm thử thông thường bao gồm những bước sau: Thiết kế các ca kiểm thử Tạo dữ liệu kiểm thử: trong bước này chúng ta kiểm thử tất cả các dữ liệu vào là cần thiết mà không thể thực hiện kiểm thử”vét cạn” và chọn tập các dữ liệu thử đại diện từ miền dữ liệu vào dựa trên các tiêu chuẩn chọn dữ liệu thử. Thực thi chương trình trên dữ liệu thử: Cung cấp dữ liệu thử Thực thi Ghi nhận kết quả Quan sát kết quả kiểm thử: Bước này ta thực hiện trong hoặc sau khi kiểm thử và sau đó ta so sánh kết quả kiểm thử với kết quả mong đợi II.3 Những thành phần của một kế hoạch kiểm thử Đầu vào để lập lên kế hoạch kiểm thử:Kế hoạch của dự án, đặc tả yêu cầu của phần mềm, người lập kế hoạch Test, người tham gia Test, thời gian kiểm thử, phạm vi Test, kinh phí giành cho việc Test, công cụ Test. Người lập kế hoạch kiểm thử thường là trưởng nhóm Test có kinh nghiệm dựa vào các yêu cầu của phần mềm mà đưa ra phạm vi Test cho phù hợp với trình độ người Test, thời gian, chi phí. Khi đưa ra phạm vi rồi thì làm tốt phạm vi đó thì coi như đạt yêu cầu theo kế hoạch Test đưa ra. Các công việc cần thực hiện là đầu ra của kế hoạch kiểm thử: Nghiên cứu tài liêu dự án(phân tích, thiết kế), tìm hiểu công cụ Test cho kiểu Test đã đặt ra. Thiết kế Test Case theo phạm vi Test. Thực hiện kiểm tra phần mềm theo nội dung Test Case Báo lỗi khi phát hiện được Viết báo cáo kết quả Test sau khi thực hiện xong II.4 Những điểm cần tập trung kiểm thử trước nhất nếu không có đủ thời gian. Những chức năng quan trọng nhất(mục đích) của dự án Những chức năng được người dùng xem nhiều nhất Những chức năng có thể ảnh hưởng nhiều nhất đến độ án toàn Những chức năng có thể ảnh hưởng nhiều nhất đến tài chính Những phần quan trọng nhất đối với người dùng Những phần có thể kiểm thử sớm nhất trong chu trình phát triển ứng dụng Những phần có Code phức tạp nhất Những phần được Code vội vả hoặc áp lực nhất Những phần tương tự hoặc liên quan những dự án trước và đã gây lỗi Những phần tương tự hoặc liên quan những dự án trước và tốn nhiều chi phí bảo trì Những phần mà yêu cầu và thiết kế không rõ ràng Những phần mà Coder xem là rủi ro nhất II.5 Các chỉ tiêu đánh giá kiểm thử Tiêu chí đánh giá kiểm thử là đo độ bao phủ và chất lượng của kiểm thử Sự bao phủ của kiểm thử là một tiêu chí quan trọng trong tiến trình kiểm thử, nó phải bao phủ toàn bộ các yêu cầu cần kiểm thử và các trường hợp kiểm thử hay toàn bộ đoạn chương trình. Chất lượng của kiểm thử là một tiêu chí quan trọng để đánh giá độ tin cậy, tính hiệu năng, sự ổn định của chương trình. Chất lượng của kiểm thử phụ thuộc vào việc đánh giá, phân tích để phát hiện ra lỗi của chương trình trong suốt tiến trình kiểm thử. III. MỘT SỐ LOẠI KIỂM THỬ THÔNG DỤNG 1.Mô hình phát triển chữ V Kiểm thử và bảo trì là một pha quan trọng trong quá trình phát triển phần mềm. Sau đây là mô hình chữ V trong kiểm thử: H II. 1: The Software Development V-Model Bên trái chữ V là quá trình phát triển phần mềm, và bên phải là kiểm thử. Tại mỗi một mức trong tiến trình phát triển thì có một pha kiểm thử tương ứng . Các mức kiểm thử có thể được lập kế hoạch và thiết kế song song. Sau đó chúng ta thực hiện kiểm thử từ đáy tháp chữ V nên tương ứng với từng mức phát triển . Kế hoạch kiểm thử hệ thống cần phải thực hiện sớm hơn trước khi pha kiểm thử bắt đầu: Kế hoạch kiểm thử hệ thống là phải khớp với các yêu cầu phần mềm . Các trường hợp kiểm thử cần phải hoàn thành khi mà các thiết kế chi tiết đã xong. Kiểm thử hệ thống bắt đầu từ ngay sau khi lập trình . 2 Kiểm thử unit Kiểm thử unit ứng dụng ở mức môđun. Thường là được thực hiện bởi nhà phát triển trước khi các môđun được tích hợp với các mô đun khác . Kiểm thử unit là mức thấp nhất trong tiến trình kiểm thử, thường là áp dụng phương pháp kiểm thử hộp trắng . Kết quả của kiểm thử Unit thường tìm ra khoảng 20% lỗi trong tất cả cá lỗi của dự án. 2.1 Tiến trình kiểm thử Unit 2.1.1 Kế hoạch kiểm thử Unit Lập kế hoạch cho kiểm thử khác nhau (như kiểm thử hệ thống, kiểm thử tích hợp). Quyết định xem đặc điểm nào cần phải kiểm thử. Các hướng tiếp cận để kiểm thử unit Phương thức phân tích kiểm thử. Kĩ thuật kiểm thử (hộp đen hay hộp trắng). Các công cụ dùng trong kiểm thử. 2.1.2 Thiết kế kiểm thử Tạo các trường hợp kiểm thử Thiết kế các thủ tục kiểm thử: Thủ tục làm thế nào để thực thi một trường hợp kiểm thử Một thủ tục có thể áp dụng cho một vài trường hợp kiểm thử khác Triển khai chương trình kiểm thử: Kiểm thử gốc(stub): Kiểm thử lần lượt từ gốc của chương trình, sau khi xong thì tiếp tục kiểm thử Stub tiếp theo ở bên dưới. Kiểm thử driver : Driver là một trình điều khiển kiểm thử unit. 2.1.3 Thực hiện và đánh giá kiểm thử unit Chuẩn bị kiểm thử môi trường. Thực hiện kiểm thử unit. Phát hiện ra lỗi trong kiểm thử unit. Làm báo cáo ghi lại toàn bộ sự thành công hay thất bại trong từng unit một dựa theo các kết quả yêu cầu. 2.2 Kế hoạch kiểm thử unit Để thực hiện một kiểm thử có hiệu quả, thì cần thiết phải có một kế hoạch kiểm thử có hiệu quả. Cần phải lập kế hoạch thật chi tiết, càng chi tiết càng tốt. Kế hoạch kiểm thử unit cần phải đưa ra các tài liệu chỉ dẫn việc thực hiện kiểm thử trên từng môđun như thế nào. Mục tiêu là mỗi môđun sau khi được kiểm thử thì phải thoả mãn tất các yêu cầu đặt ra về chức năng Kế hoạch kiểm thử cần phải đưa ra một danh sách các đầu vào cho môđun và một danh sách các đầu ra phù hợp với các mô đun đó. Một môđun được gọi là đạt nếu tất cả các đầu vào đều có đầu ra tương ứng. Mỗi một sự sai trệch nào của đầu ra đều phải cần xem xét cụ thể. Danh sách các đầu vào phải thoả mãn yêu cầu của phần mềm, tối thiểu là lần đầu tiên. Kế hoạch kiểm thử giúp cho các nhà phát triển có thể đảm bảo chắc chắn rằng mỗi dòng mà, và mỗi câu lệnh điều kiện đều phải thực hiện được tối thiểu một lần 2.3 Kiểm thử hộp đen Hướng vào các đặc tả bên ngoài Chủ yếu là kiểm tra giao diện của các hàm vào ra Các kĩ thuật thường dùng: Lược đồ nguyên nhân kết quả. Phân đoạn tương đương. Phân tích giá trị biên. 2.4 Kiểm thử hộp trắng Thực hiện bên trong chương trình. Sử dụng các đặc tả chi tiết. Bao gồm các thứ sau:. Các chỉ dẫn bao quát. Bao quát toàn bộ các câu lệnh điều kiện đơn. Các điều kiện, đa điều kiện. Kiểm thử hộp trắng là một thiết kế kiểm thử sử dụng cấu trúc của thiết kế chi tiêt. Sử dụng thiết kế chi tiết người sử dụng có thể đảm bảo rằng: Bảo đảm rằng tất cả các đường dẫn độc lập ở bên trong môđun đều được thử tối thiểu một lần. Thử nghiệm tất các các trường hợp lôgic trong các câu lệnh điều kiện. Thực hiện tất cá các vòng lặp tới giá trị biên của chúng. Thử nghiệm tất cả các giá trị biên bên trong đảm bảo chúng hợp lệ. 2.4.1 KIểm thử nhánh cơ bản (Basis Path Testing) Là một cách kiểm thử hộp trắng. Trường hợp kiểm thử bắt nguồn từ các đặc tả yêu cầu độc lập. Một tập các trường hợp kiểm thử có thể được phát sinh bởi các tập kiểm thử cơ bản. Đây là một cái tên đến từ thực tế rằng các kiểm thử nầy đều kiểm thử từ tất cả các hướng có thể thông qua chương trình. Tóm tắt Basis Path Testing Bước 1 Vẽ biểu đồ luồng chương tình cho một đoạn mã được lựa chọn nào đó If -then - else loop - while case - of Thực hiện từng câu lệnh một. Bỏ qua các dòng lệnh liên tục. Thêm một nút cho mỗi một nhánh hay câu lệnh quyết định. Triển khai các nút phù hợp với sự thể hiện của nó. Bước 2 Độ phức tạp tính toán từ lưu đồ luồng tính như sau C = # Edges - # Nodes + 1 Bước 3 Tìm C cho mỗi trường hợp kiểm thử -Chọn một trường hợp kiểm thử để bắt đầu. -Trường hợp sau giống cái đầu chỉ thay đổi một số thông số cho phù hợp thôi. -Tiếp tục cho đên 'C' xuất phát. Bước 4 Thu được các kết quả dự đoán cho mỗi trường hợp kiểm thử Sử dụng các đặc tả của chương trình dể quyết định xem loại dữ liệu nào nên làm(tốt nhất là việc này nên làm bởi các nhà phân tích) Bước 5 Confirm that actual results match expected results So sánh kết quả giữa thực tế và lí thuyết Thực hiện đi bộ qua chương trình Hiệu quả của kiểm thử nhánh cơ bản ( Basis Path Testing ) Hiệu quả Bao phủ hầu hết toàn bộ các vấn đề. Sẽ phát hiện ra hầu hết các lỗi. Hầu hết các loại lỗi. Là một phương tiện hay để xem lại toàn bộ mã nguồn và đi bộ qua giải thuật. Có thể ứng dụng cho các mức lôgic cao hơn hay các đoạn mã giả. Hiệu lực Là một qui trình xác định tốt. Hiệu quả trong việc sử dụng tài nguyên máy và thời gian thiết kế. Phát sinh đơn giản và dễ thực thi các trường hợp kiểm thử. Giá cả thì chấp nhận được trong thương mại. 2.5 Các trường hợp kiểm thử và dữ liệu kiểm thử Kiểm tra các toán tử ở mức giá trị thông thường. Kiểm tra với các giá trị giới hạn. Kiểm tra ngoài vùng giá trị. Kiểm tra các lỗi ở trong vòng lặp. Kiểm tra các kết thúc không bình thường trong vòng lặp. Kiểm tra các kết thúc không bình thường trong đệ quy. Kiểm tra tất các các cấu trúc dữ liệu được truy nhập bởi hàm. Kiểm tra tất cả các loại file được truy nhập bởi hàm thành viên. Kiểm tra tất cả các lỗi điều kiện. Kiểm tra tính hiệu quả của kiểm thử nếu thấy cần thiết. Đảm bảo rằng mọi câu lệnh đều được thực hiện. Đảm bảo rằng mọi câu lệnh điều kiện đều thực hiện ở tất cả các nhánh. 3. Kiểm thử tích hợp 3.1 Tạo dữ liệu và file kiểm thử Các hoạt động chính: Xác định nội dung của kiểm thử dữ liệu và file. Tạo dữ liệu kiểm thử, dữ liệu kiểm thử có thể tạo ra bằng một trong các phương pháp luận sau. Vào thủ công. Phần mềm sinh dữ liệu kiểm thử. Giúp ra từ cơ sở dữ liệu sống. Điền đầy các dữ liệu kiểm thử với sự giúp đỡ của các chương trình quản lí cơ sở dữ liệu. Kiểm tra xem có khớp với các yêu cầu đặt ra không 3.2 Các chiến thuật và kĩ nghệ kiểm thử 3.2.1 Kiểm thử tích hợp không tăng tiến Big Bang là một kiểm thử tích hợp không tăng tiến.Tất cả các mô đun đều được phối hợp ngay từ đầu. Phần mềm được kiểm thử toàn bộ - kết quả ban đầu thường là lộn xộn. Để đúng được là rất khó vì một dãy các lỗi gặp phải. Khi một lỗi được sữa thì lại bắt gặp một lỗi khác chỉ cho tới khi nào vòng lặp dừng thì thôi.Cho nên phương pháp này không được đề nghị 3.2.2 Kiểm thử tích hợp tăng tiến Là một kiểm thử trái ngược lại với kiểm thử Big Bang Phần mềm được xây dựng và kiểm thử từng đoạn một. Lỗi dễ bị cô lập và xử lí. Giao diện dễ kiểm thử hơn và có thể áp dụng kiểm thử hệ thống. Kiểm thử hệ thống bao gồm các phương pháp luận sau: Kiểm thử tích hợp Top-Down. Kiểm thử tích hợp Bottom-up. Kiểm thử Sandwich. 1. Kiểm thử tích hợp Top-Down Hàm Main là nút gốc còn tất cả cá môđun ở bên dưới là các gốc con(bới vì sau khi kiểm thử xong nút gốc này thì tất cả cá nút gốc con sẽ được kiểm thử). Nút gốc sẽ được thay thế bằng các môđun cụ thể, phụ thuộc vào hướng kiểm thử tích hợp được lựa chọn. Cứ tiếp tục quá trình như vậy cho đến khi nào kết thúc chương trình thì thôi. Thuận tiện Không cần có driver kiểm thử. Lỗi giao diện được phát hiện sớm. Bất tiện Cần gốc (stubs). Làm chậm tiến trình kiểm thử. Lỗi ở trong các môđun ở mức thấp khó tìm ra. Chú thích Chương trình làm việc đầu tiên nâng lên tinh thần. Rất khó để có thế duy trì thuần top-down trong thực tế. Tích hợp Bottom-Up Mô đun ở mức thấp nhất sẽ được kiểm thử đầu tiên Mỗi một driver được viết để theo dõi các đầu vào và đầu ra Kiểm thử từng khối Driver sẽ bị xoá đi và các cụm sẽ được kết hợp lại, sau đó di chuyển nên trên trong cấu trúc chương trình Thuận tiện Không cần đến gốc Rất dễ điều chỉnh số lượng người cần thiết Lỗi quyết định sớm được tìm thấy Sự bất tiện Các driver kiểm thử là cần thiết Rất nhiều môđun phải được tích hợp trước khi làm việc Lỗi giao diện khám phá muộn Chú thích Phải kiểm tra nhiều các đoạn mã hơn là so với Top-Down Bottom-up là một cách mang tính trực giác nhiều hơn 2.Kiểm thử Sandwich Là một phương pháp kiểm thử kết hợp cả top-down và bottom-up Tất cả các môđun và giao diện đều phải kiểm thử bằng phương pháp Top-Down Cả driver và stub đều được sử dụng khi cần thiết Tất cả các môđun đều được xây dựng và kiểm thử unit bắt đầu từ mức thấp nhất, sử dụng chiến thuật Bottom-Up Tiêu chí để hoàn thành Một tester phải biết khi nào kiểm thử là đủ. Kiểm thử có thể dừng khi: Nó không phát sinh lỗi Nó đã bao phủ gần như hoàn toàn Nó phát hiện ra một số lượng lỗi Kế hoạch kiểm thử kết thúc 3.2.4 Các lời bình về kiểm thử môđun Đúng với các yêu cầu phần mềm Có mức điều khiển cao Có phức tạp hay ẩn chứa lỗi hay không Có các yêu cầu hiệu năng xác định hay không Các bình luận nên càng sớm càng tốt 3.2.5 Đề nghị phương pháp luận kiểm thử tích hợp Lựa chọn một nhóm các môđun không quá phức tạp để kiểm thử. Kết nối các nhóm môđun vào chương trình. Kiểm thử tích hợp trên bộ khung của hệ thống. Thử nghiệm tất cả các môđun. Thử nghiệm tất cả các lựa chọn của chương trình với các tiện ích của nó. Thực thi kiểm thử trên bộ khung của chương trình. Nạp kiểm thử. Kiểm thử hiệu năng của chương trình. Cố gắng phá vỡ bộ khung. Lặp lại bốn bước trên nhiều lầm nếu thấy cần thiết để xây dựng một mức hoàn chỉnh. 4 Kiểm thử hệ thống Mỗi lần kiểm thử thủ tục hỗ trợ kiểm thử hệ thống được thực hiện, đội kiểm thử so sánh kết quả mong đợi của mỗi kiểm thử thủ tục với kết quả thực tế. Nếu kết quả thực tế khác so với kết quả mong đợi, sự khác nhau này phải được xem xét lại kỹ hơn. Kiểm thử hệ thống thường thực hiện sau tất cả các môđun, kiểm thử tích hợp và kiểm thử unit được chấp nhận một cách thành công. Đội kiểm thử cần có thể tái tạo lại vấn đề và phải chắc chắn là vấn đề này không phải gây ra do lỗi kiểm thử, lỗi thiết lập môi trường, lỗi thủ tục kiểm thử, hay lỗi kiểm thử kịch bản. Nếu báo cáo lỗi bởi vì những lỗi được xác định trong lỗi kiểm thử, lỗi thiết lập môi trường, lỗi kiểm thử thủ tục, hay lỗi kiểm thử kịch bản, hành động thích hợp để hiệu chỉnh nên được thực hiện và thực hiện lại kiểm thử. Nhược điểm của sản phẩm nên được ghi lại trong DMS. 5 Kiểm thử xác nhận Kiểm thử kiểm nhận chứng minh cho khách hàng rằng tiêu chuẩn kiểm nhận xác định trước đã được xác định bởi hệ thống. Điển hình nó được sử dụng như một kỹ thuật để bàn giao hệ thống. 6 Kiểm thử hồi quy Thực hiện kiểm thử hồi quy thông thường mất rất nhiều nỗ lực cố gắng. Vì thế, kiểm thử hồi quy có thể được thực hiện sau một giai đoạn. Tuy nhiên, kiểm thử hồi quy phải được thực hiện khi: Tổng số những yêu cầu thay đổi xảy ra từ bản cơ sở cuối cùng với kiểm thử hồi quy lớn hơn 10% tổng số những yêu cầu trong cơ sở đó. Tỉ lệ tổng số lỗi được phát hiện sau kiểm thử kiểm nhận hay trong trong thao tác chia tổng số man-months của dự án lớn hơn 1. Với những dự án bảo trì, khởi động cho kiểm thử hồi quy phải được xác định trong kế hoạch kiểm thử. Leader kiểm thử phải xác định khi nào đội dự án kiểm soát kiểm thử hồi quy và phạm vi kiểm thử hồi quy. Lập biểu của kiểm thử hồi quy phải được xác định trong lập biểu của dự án. 7 Lỗi dữ liệu 7.1 Vòng đời của lỗi Một lỗi trong phần mềm là một cái gì đó mà gây ra cho phần mềm chạy theo cách mà nó không nhất quán với những yêu cầu hay sự cần thiết của khách hàng hay những chuẩn liên quan. Để có phần mềm chất lượng cao, sản phẩm cuối cùng nên có vài lỗi có thể. Một lỗi được tìm thấy và phải được ghi lại trong DMS bởi một nhân viên. Lỗi được vào trong DMS với trạng thái “Error” và thông tin khác. Lãnh đạo dự án phải xem lại dữ liệu của một lỗi (như là dạng lỗi, nguồn gốc,tính nguy hại,..), sửa nó và giao cho người sửa lỗi. Thông thường thành viên được giao là tác giả của văn bản hay đoạn mã nguồn mà lỗi được tìm thấy trong đó. Trạng thái của lỗi được thay đổi thành “Assigned”. Sau khi sửa lỗi, tác giả đổi trạng thái lỗi thành “Pending” Người kiểm thử kiểm thử lại lỗi chưa giải quyết và cập nhật trạng thái thành “Tested” nếu lỗi được sửa một cách hài lòng, hay thành “Error”. Nếu một lỗi với trạng thái “Error” có thể được chấp nhận mà không có một hành động hiệu chỉnh nào, lãnh đạo dự án cần đổi trạng thái thành “Accepted”. Vòng đời của lỗi được mô hình hoá trong flowchart sau đây: H II. 2 Quá trình bắt lỗi 7.2 Lỗi dữ liệu Thông tin quan trọng của lỗi bao gồm: TT Dữ liệu Mô tả dữ liệu Bắt buộc/Tuỳ chọn 1 Project Code Dự án hay sản phẩm bị mắc một lỗi B 2 Defect ID Tên của lỗi B 3 Title Miêu tả ngắn gọn của lỗi B 4 Description Miêu tả đầy đủ của lỗi B 5 Severity Tính nguy hại của lỗi B 6 Type Phân loại của lỗi B 7 Status Trạng thái hiện tại của lỗi B 8 Stage detected Phạm vi hoạt động của dự án xác định vòng đời khi lỗi được phát hiện T 9 QC activity Hoạt động phát hiện ra lỗi B 10 QC activity type Dạng của hoạt động QC như là xem lại, kiểm tra....... B 11 Stage injected Phạm vi hoạt động trong dự án xác định vòng đời mà từ đó lỗi được gây ra T 12 Process origin Tên hay mã nguồn của đoạn phần mềm mà trong đó lỗi là nguồn gốc B 13 Priority Mức ưu tiên sửa lỗi T 14 Creator Người phát hiện lỗi, người kiểm thử hay người xem lại B 15 Create date Ngày ghi lại lỗi trong dữ liệu lỗi B 16 Assigned to Người chịu trách nhiệm sửa lỗi, thường là tác giả T 17 Due date Hạn chót mà việc sửa lỗi phải hoàn thành T 18 Work product Trong sản phẩm mà lỗi được tìm thấy. B 19 Module Phần của sản phẩm mà lỗi được tìm thấy trong đó. Nó là mức CI cao như bình thường. T 20 Corrective action Hành động để sửa lỗi T 21 Close date Ngày mà lỗi được đóng. B 22 Reference Tài liệu tham khảo hay miêu tả về lỗi T 23 History Thông tin về lỗi. Tất cả những phần như hiệu chỉnh,.....của lỗi được thể hiện. T 24 Attached picture Ảnh minh hoạ lỗi T 7.3 Dạng của lỗi Sau đây là một số dạng chung của lỗi: TT Dạng lỗi Ví dụ 1 Functionality Chức năng được chỉ ra không làm việc Requirement misunderstanding Những yêu cầu đầu vào không được hiểu rõ Feature missing Một phần của đặc tính hay đặc tính không hoàn thành Coding logic Kỹ năng kỹ thuật, đánh giá dữ liệu... hay những lý do khác không được xác định như là vấn đề viết code Business logic Không theo luồng công việc 2 User Interface Lỗi trong giao diện, bố cục 3 Performance tôc độ xử lý chậm hay lỗi hệ thống do cấu hình; vấn đề bộ nhớ 4 Design issue Thiết kế được chỉ rõ liên quan vấn đề 5 Coding standard Vấn đề với chuẩn viết mã nguồn 6 Document Lỗi phát hiện trong khi xem lại văn bản: Kế hoạch dự án, SRS, Kế hoạch kiểm thử,… liên quan tới chuẩn văn bản (mẫu, phiên bản, header/footer,...) 7 Data and Database Integrity Vấn đề với xử lý dữ liệu hay luồng dữ liệu: vào/ra 8 Security and Access Control Vấn đề với đặc quyền người dùng, vấn đề bảo mật 9 Portability Mã nguồn không độc lập với platform 10 Other Không như những dạng trên 11 Tools Lỗi gây ra bởi sử dụng công cụ 7.4 Lỗi nguy hại # Dạng nguy hại Giải thích 1 Fatal Lỗi không cho người sử dụng tiếp tục sử dụng hệ thống, có lẽ hệ thống bị tấn công 2 Serious Hệ thống không thể làm việc tốt 3 Medium Lỗi này không ngăn người sử dụng xử lý, nhưng gây ra sự bất tiện 4 Cosmetic Một lỗi mà không có cách nào ảnh hưởng đến hiệu năng của sản phẩm. Nó có lẽ là một lỗi ngữ pháp. 7.5 Trạng thái lỗi Một lỗi có một vài trạng thái sau đây trong vòng đời của nó: # Status Description 1 ERROR Lỗi không được sửa hay sửa nhưng không được hài lòng như mong muốn 2 ASSIGNED Lỗi được xem lại và được giao sửa nó 3 PENDING Lỗi được sửa xong và được kiểm thử lại 4 TESTED Lỗi được sửa một cách hài lòng như mong muốn 5 ACCEPTED Lỗi không được sửa một cách hài lòng như mong muốn, nhưng nó được chấp nhận bởi sự nhượng bộ của tác giả hay khách hàng. 6 CANCELLED Nó không là một lỗi hay lỗi được loại bỏ bởi những hành động khác với sửa lỗi 7.6 Xử lý nguồn gốc Xử lý nguồn gốc: là xử lý mà trong nó bị nhiễm lỗi. Xác định rằng những phân tích yêu cầu của xử lý này là của một lỗi. Nó được đánh giá từ độ tự nhiên của lỗi và những thông tin khác về lỗi. # Tên Code Ví dụ lỗi 1 Contract Management 01-QT Những thủ tục không thích hợp; những thông tin khách hàng thiếu; những yêu cầu khách hàng không hiểu; quản lý thay đổi yêu cầu khách hàng không chặt chẽ 2 Requirements 02-QT Giả định không đúng; đặc tả giao diện không hoàn hảo; luồng xử lý không rõ ràng; yêu cầu không có đặc tả, nhập nhằng, không hoàn hảo 3 Design 03-QT Yêu cầu không được thực thi đầy đủ; lôgic vấn đề; vấn đề liên quạn đến chuẩn. 4 Coding 04-QT Vấn đề với viết code, logic, xử lý dữ liệu, vào/ra 5 Deployment 05-QT Sự triển khai kế hoạch không thích hợp, giải pháp; những vấn đề môi trường 6 Customer support 06-QT Kế hoạch hỗ trợ không rõ ràng 7 Test 07-QT Sự cố gắng không thích hợp hay lịch biểu cho kiểm thử; sự không hoàn hảo của yêu cầu kiểm thử hay vạch kế hoạch; kiểm thử case sai; kiểm thử dữ liệu thích hợp không xác định; tiêu chuẩn kiểm thử không thích hợp. 8 Configuration management 08-QT cấu trúc quản lý cấu hình không thích hợp; những vấn đề trong đặt tên và quản lý cấu trúc; quản lý thay đổi trong kế hoạch CM còn thiếu. 9 Project management 09-QT Nỗ lực hay đánh giá lập biểu không thích hợp; những vấn đề trong đánh giá rủi ro; sự không hoàn hảo của kế hoạch dự án 10 Subcontract Management 10-QT Lựa chọn nhà thầu phụ không thích hợp; quản lý chất lượng nhà thầu phụ không chặt chẽ 7.7 Ưu tiên lỗi PL hay tác giả có thể dựa vào ưu tiên lỗi để sửa nó # Ưu tiên Miêu tả 1 Immediately Lỗi phải được sửa ngay lập tức 2 High priority Lỗi nên được đưa lên mức chú ý cao hơn 3 Normal priority 4 Low priority CHƯƠNG II. NGHIÊN CỨU PHẦN MỀM SEK CỦA IBM. The 2007 developerWorks® Software Evaluation Kit (SEK) for Windows® là một trong trong số nhiều phần mềm có sẵn từ IBM. SEK bao gồm hai DVD với hơn 15 GB là những sản phẩm mới ra gần đây nhất của IBM. Đây là công cụ phát triển và kiểm thử, cũng như hệ thống thời gian thực từ IBM® Information Management, Lotus®, Rational®, Tivoli®, and WebSphere® software. Những sản phẩm đang được thiết kế cho những người muốn phát triển và kiểm thử ứng dụng của họ sử dụng những công cụ trên nền Windows từ WebSphere và Rational. Và sau đó triển khai những ứng dụng của họ trên Windows, Linux, và được hỗ trợ platform middleware từ IBM Information Management, Lotus, Tivoli, and WebSphere. Bộ tool gồm 6 Tool nhỏ: IBM Rational Functional Tester V7.0 IBM Rational Functional Tester là một dụng cụ thử nghiệm hồi quy tiên tiến, được sử dụng tự động hóa cho tester và người phát triển GUI. Là những người cần kiểm soát cấp cao hơn cho việc kiểm thử với công nghệ java, Microsoft® Visual Studio .NET, và ứng dụng Web-based. IBM Rational Manual Tester V7.0 IBM Rational Manual Tester là công cụ kiểm thử bằng tay, và sự thực hiện đó đẩy mạnh sử dụng lại những bước kiểm thử để giảm bớt tác động (của) phần mềm thay đổi trên những tester và những người phân tích doanh nghiệp(business analysts). IBM Rational Method Composer V7.1 Rational Method Composer là một nền tảng của những quá trình linh hoạt chứa đựng những quá trình và những công cụ sử dụng suốt (IT Lifecycle Management) Quản lý Vòng đời IT (ITLM). Rational Method Composer giúp đỡ bạn chuyển sự chỉ đạo quá trình tùy chắc chắn tới những đội dự án của các bạn và tổ chức IT, bao gồm phiên bản gần đây nhất (của)IBM Rational Unified Process® (RUP®)) IBM Rational Performance Tester V7.0 IBM Rational Performance là một sự nạp và sự thực hiện kiểm tra giải pháp cho những đội được liên quan ứng dụng Web-based của họ IBM Rational Software Architect V7.0 IBM Rational Software Architect một công cụ thiết kế và phát triển tổng hợp với mô hình model-driven với UML để tạo ra những ứng dụng well-architected và services (dịch vụ). IBM Rational Systems Developer V7.0 IBM Rational Systems Developer là một công cụ thiết kế và phát triển cho phép những kiến trúc sư phần mềm and model-driven developers để tạo ra well-architected C/C++, Java™ J2SE, and ứng dụng CORBA-based cái mà bị ảnh hưởng bởi Unified Modeling Language (UML 2). CHƯƠNG III. NGHIÊN CỨU CÔNG CỤ KIỂM THỬ RATIONAL FUNTIONAL TESTER III.1 GIỚI THIỆU VỀ CÔNG CỤ IBM RATIONAL FUNTIONAL TESTER V7.0 IBM Rational Functional Tester là phần mềm kiểm thử chức năng, một dụng cụ thử nghiệm hồi quy tiên tiến, được tự động hóa cho tester và người phát triển GUI(Graphical User Interface). Là những người cần kiểm soát cấp cao hơn cho việc test với công nghệ java, Microsoft® Visual Studio .NET, và ứng dụng Web-based.Chạy trên nền win và linux. Bất kỳ một tổ chức nào cũng có một sự tin cậy của riêng mình vào việc phát triển của những trình ứng dụng để phục vụ cho những việc cần thiết như đáp ứng được những chức năng của khách hàng đưa ra, để cho khách hàng tỏ ra hài lòng về chất lượng của những trình ứng dụng và những đòi hỏi về những chức năng, điều kiện được đáp ứng đầy đủ, và không xảy ra sự tuỳ tiện trong sản phẩm. Một thành phần chủ yếu cho sự thành công này là tính hiệu quả, quy trình kiểm tra phải có tính kỷ luật tiến tới sự xác minh của những trình ứng dụng đã hoàn thành, quá trình kiểm tra phải có tính kỷ kuật để xem xét những trình ứng dụng đã hoàn thành đến mức độ nào, đó là sự phù hợp thích đáng hay là vượt ra khỏi những mong đợi trong đề án. Lịch trình làm việc không đúng, thường xuyên thay đổi những vấn đề chung của trình ứng dụng. IBM Rational Funtional Tester được xây dựng dựa trên những vấn đề này. IBM Rational Funtional Tester làm việc như thế nào? Rational Funtional Tester ghi lại sự tương tác trong lịch trình của những người làm việc với Java, Web, Visual Studio.Net, trên trình ứng dụng Win Form, và Web- Form tạo ra cho việc kiểm thử một kịch bản, bằng cách mô phỏng trở lại những thao tác đã được thực hiện. Trong lúc đó hình ảnh sẽ được ghi lại, người sử dụng có thể lồng vào thời gian xác định trong những trích đoạn theo lý thuyết mà dữ liệu đưa ra hoặc những đặc tính mà trình ứng dụng chưa đạt đến sẽ kiểm tra được trong quá trình kiểm thử. Trong quá trình quay lại, có những thời điểm xác minh các vấn đề đã thực hiện và sẽ so sánh với những thông tin được ghi chép đảm bảo theo đúng những thông tin được ghi chép. Sau đó việc kiểm thử sẽ được ghi hình một cách linh hoạt, những người kiểm thử có thể xác định được sự lựa chọn ngôn ngữ để viết cho khách hàng dựa vào kịch bản, tới những việc đã vượt quá nhiệm vụ cần thực hiện, bao gồm những dữ liệu thao tác bằng tay và những yêu cầu về cấu hình máy tính, những vấn đề này bảo đảm cho việc kiểm thử được thực hiện đúng đắn và có thể vận hành được sự kiểm thử. Sau khi thực hiện xong quá trình kiểm thử Rational Funtional Tester sẽ phát sinh ra một bảng báo cáo về những kết quả đạt được trong quá trình kiểm thử và nó dùng để so sánh với những thời điểm xác định. Với việc sử dụng Rational Funtional Tester đội dự án có nhiều điều chắc chắn về những vấn đề nó được bộc lộ một cách hiệu quả trong nhiều trình ứng dụng phức tạp, làm tăng dần cơ hội cho việc bắt được những khuyết điểm và được phục hồi trước khi những sản phẩm được đưa ra . III.2 NHỮNG LỢI ÍCH KHI SỬ DỤNG CÔNG CỤ IBM RATIONAL FUNTIONAL TESTER Tạo sự tin cậy cho chúng ta trong việc kiểm thử các phần mềm dùng các ngôn ngữ như Java, Wed, Visual Studio.Net trên trình ứng dụng Win-Form và Web-Form. Là sự lựa chọn cho các phần mềm dùng ngôn ngữ Java hoặc Visual Basic.Net, nó giúp tạo ra được những kịch bản kiểm thử để so sánh với bảng phân tích, xem có đúng theo yêu cầu của khách hàng không. Nơi Java, Visual Basic.Net được biên tập và gỡ rối bởi những người kiểm thử tiên tiến. Những kịch bản bằng công nghệ cung cấp thường xuyên sự thay đổi của giao diện người dùng. Sự tương quan của dữ liệu một cách tự động và những dữ liệu kiểm thử cần loại trừ sẽ tốt hơn nhiều so với việc kiểm thử bằng tay. Những mốc kiểm tra phù hợp với những khuôn mẫu đã đưa ra. Sự tiên tiến của năng lực được duy trì trong sơ đồ các đối tượng. Là nơi tin cậy của việc kiểm thử và thi hành trên nền Linux.. Về những tính năng chính: (About this release) Những phần chính của IBM Rational Funtional Tester V7.0 bao gồm những chức năng sau: Mở rộng chức năng kiểm thử cho những trình điều khiển SAP UI- Cho phép bạn kiểm thử những chức năng bên ngoài của những trình điều khiển được xây dựng trên nền SAP frameword. Kiểm thử cho tất cả các phiên bảng của hệ thống SAP R/3 được hổ trợ chạy trên nền Window. Những phiên bảng hiện nay được hổ trợ của SAP GUI đó là: 6.20 với mức 52 hoặc mức cao nhất là 6.40. Mở rộng chức năng kiểm thử hổ trợ cho điều khiển Siebel 7.8 Quy trình với Rational Process Advisor (RPA)-Giúp cho những người chưa biết và đang sử dụng những tiến trình quanh những thao tác đặt trưng sẽ thi hành được. Hổ trợ cho kiểm thử những ứng dụng trong Mozilla Firefox 1.5 Sự tích hợp với ClearQuest Test Manager V7.0.0.1- Cho phép bạn chạy lại kịch bảng kiểm thử chức năng từ ClearQuest Test Manager, theo một nhịp độ tự động, và kiểm tra được những lỗi. Với sự tích hợp ClearQuest Test Manager, bạn có thể tích hợp kịch bảng kiểm thử chức năng Test Case và Cofigured Test Case và thi hành chúng. ClearQuest Test Manager cho phép bạn thi hành việc phân tích những kết quả và ghi lại những kết quả cho việc báo cáo và phân tích. IBM Interllation Manager – cung cấp nhanh và đơn giản những phương thức cài đặt, sửa đổi, cập nhật, và tháo bỏ gói cài đặt . Hổ trợ cho .Net Frameword 2.0 bao gồm hổ trợ cho những bản ghi và kiểm thử những trình ứng dụng chứa DataGridWiew và MaskeDTestBox. Hổ trợ cho TPTP- cho phép làm theo một nhịp độ tự động sử dụng TPTP. Hổ trợ cho việc điều khiển Eclipse 3.0. Hổ trợ cho việc kiểm thử trên môi trường Citrix. Hổ trợ cho việc xác minh những điểm tạm thời. Những chức năng chính này sẽ được trình bày kỷ trong phần demo của chương trình. III.3 NHỮNG CHIẾN LƯỢC ĐỂ SỬ DỤNG LẠI STATEMENT Rational Funtional Tester được thiết kế tài liệu testing của bạn dưới dạng streamline, tiết kiệm thời gian và tiền bạc. Với test đúng chiến lược, giúp bạn có thể tăng tối đa năng xuất của những tester và tiêu điểm test tài nguyên trên vùng găng(critical). Tạo ra, bảo trì, và nâng cấp những tài liệu kiểm tra những phiên bản có thể mất thời gian và tài nguyên quan trọng. Scripts có thể trở nên lỗi thời khi những sản phẩm thay đổi . Và những đội testing sẽ bị thách thức để tạo ra những scripts hợp thời. Rational Funtional Tester với đặc tính sử dụng lại, có thể giảm mạnh nhiệm vụ chán ngắt của bảo trì nguyên bản(scripts). Để sử dụng đặc tính này có hiệu quả nhất, phải phát triển một chiến lược sử dụng lại. Cái này bao gồm sự đồng nhất hóa và cô lập những test procedures mà được thực hiện thường xuyên trong đoạn test của bạn và sau đó di chuyển chúng vào trong những scripts chủ mà được sử dụng lại nhiều scripts con bên kia. Bước đầu tiên trong việc phát triển là một chiến lược sử dụng lại cho đội của bạn sẽ xác định những ứng cử viên mà bạn muốn sử dụng lại. Đây là những thủ tục test dễ làm mà những người testers thực hiện nhiều lần bên trong một test hoặc băng qua một tập test: Những điều cần trước và những sự giả thiết. Thiết lập môi trường hướng dẫn. Những thủ tục test thừa, chung, hay lặp lại, như công việc đăng nhập chẳng hạn. Những thủ tục điều khiển bằng dữ liệu mà có lẽ đã được thực hiện nhiều lần. Thông tin đặc trưng khác được bao gồm trong một test script, như thông tin tổng quan, những sự từ chối... Trong khi bạn xác định những thủ tục dùng lại được, phân chia nó vào trong những hồ sơ riêng lẽ. Những file này trở thành cở sở của một thư viện sử dụng lại tăng lên theo thời gian. Một thư viện tốt chứa đựng một tập hợp những modun sử dụng lại được(test script files). Sử dụng một quy ước đặt tên cho files và tổ chức nó vào folders khi cần. Thư viện cần phải cư trú trong một khu vực thường xuyên trên ổ mạng mà mọi người trong đội có thể truy cập. Là một testers trong đội của bạn , họ có thể mở những hồ sơ thư viện và copy và paste-as-reference(ctrl+R) sang scripts mới của họ. Cách khác bạn muốn phát triển một file sử dụng lại mà tất cả những thành viên chia sẽ, Files này là nguồn cho Reuse View và nó hiển thị và tổ chức statements sử dụng lại từ nhiều nguồn., giữ nó trong tâm trí dường như file này chỉ đơn thuần là hiển thị thiết bị. Statement thực tế vẫn còn lưu trữ như scripts trong thư viện sử dụng lại. Để chia sẻ một hồ sơ sử dụng lại trong số những thành viên đội, đặt hồ sơ trên ỗ đĩa mạng. Việc hỏi những tester điểm trỏ đến file này sử dụng những hộp thoại ưu tiên chính, Testers có còn bảo trì hồ sơ sử dụng lại bí mật. Chuyển giữa chúng bởi thay khu vực file sử dụng lại trong main Preferences. III.4 RATIONAL FUNTIONAL TESTER VỚI ĐỘI PHÁT TRIỂN Đưa vào thực tiễn tốt nhất để sử dụng trong đội của bạn để giúp đỡ hoàn thiện hiệu quả và năng xuất với Rational Funtional Tester . Ứng dụng Rational Funtional Tester thì được dùng điển hình trong môi trường nhóm, đội, nơi mà một nhóm của tester cộng tác đến một hoặc nhiều ứng dụng phần mềm. Những người phát triển, Nhân viên hỗ trợ khách hàng, và các người dùng khác đi sử dụng lại trong đội để tetst 1 hoặc nhiều ứng dụng phân mềm. Đội phát triển, nhân viên hỗ trợ khách hàng, và những người khác hầu như dính dáng đến Rational Funtional Tester , scripts authors, nhà phê bình hoặc người nhận từ kết quả test. Ở đây có vài mẹo nhỏ để cải thiện khả năng test bằng Rational Funtional Tester : Thiết kế một chiến lược sử dụng lại(a reuse strategy.), quyết định tổ chức của bạn như thế nào với việc sử dụng lại test statements, và chắc chắn rằng mọi thứ theo đúng hợp đồng. Tùy biến phần mềm phù hợp ứng dụng Rational Funtional Tester bao gồm những đặc tính cho việc tạo những thuộc tính và những kết quả tùy biến. Làm theo yêu cầu khách hàng có sẵn tới toàn đội bởi chỉ định một files theo yêu cầu của khách hàng. Cộng tác với một tổ chức khác, sử dụng import đặc tính để xác nhập test scripts và thông tin khác được viết trong Microsoft® Word hoặc Excel. Sử dụng đặc tính phổ biến để lưu test scripts trong html sao cho những người khác có thể nhìn thấy chúng. Tích hợp với ClearQuest®. Sử dụng trường ánh xạ tới ClearQuest với manual test data. III.5 COMPLIANCE(quy trình nghiệp vụ) Compliance (đôi khi gọi là governance(sự cai trị) có nghĩa bảo đảm những qui trình nghiệp vụ (của) bạn tuân thủ những tiêu chuẩn công nghiệp thích hợp hoặc là điều lệ. Rational Funtional Tester có thể giúp bạn tổ chức, tài liệu và thực hiện những compliance efforts. Trong phát triển phần mềm, compliance chỉ ra sự thật là bạn xây dựng một tập các tiêu chuẩn. Những chuẩn này gồm tiêu chuẩn sau đây: Những yêu cầu thiết kế và những quy tắc nghiệp vụ đã được hoàn thành. Những tiêu chuẩn cho thiết kế phần mềm và chất lượng của nó. Một số lượng tối thiểu của test thử đã được thực hiện. Một kiểu nói riêng của testing(test trên một hệ điều hành đặc biệt) đã được thực hiện. Rational Funtional Tester, đặc biệt khi được kết hợp với Rational ClearQuest® TestManager có thể giúp đỡ bạn quản lý các bạn compliance strategy cho test phần mềm. Với cách tiếp cận đơn giản để tạo và thực hiện test scripts, Rational Funtional Tester giúp streamline chiến lược test chức năng của bạn. Bạn có thể tạo những test script của bạn, thực thi và lặp lại chúng nếu thấy cần thiết và kết quả được ghi lại chắc chắn khi test. III.6 ĐIỀU KIỆN ĐỂ SỬ DỤNG CÔNG CỤ Thông tin về cài đặt Thông tin về việc cài đặt IBM Rational Funtional Tester hổ trợ hệ thống hệ điều hành và đường dẫn, bạn sẽ nhìn thấy được trong khi cài đặt IBM Rational Funtional Tester. Yêu cầu về phần cứng Bộ xử lí yêu cầu mức tối thiểu Intel Pentium 4 1.4GHz. Ram đề nghị và tối thiểu là 1GH. Dung lượng ổ đĩa trống là 750MB. Yêu cầu về phần mềm kèm theo .Net FrameWord 1.0, 1.1, hoặc 1.2 Môi trường phát triển kết hợp tuỳ chọn(IDE) VS.Net 2003 với .Net FrameWord 1.0 hay 1.1. VS.Net 2005 với .Net FrameWord 1.2 Hệ thống hệ điều hành Những hệ điều hành bên dưới hổ trợ cho việc cài đặt: Microsoft WindowXP Service Packs 1 và 2. Microsoft Window 2000 với Service Pack 4. Microsoft Window 2000 Server với Service Pack 4. Microsoft Window Server 2003 Standard Edition với Service Pack 1. Microsoft Window Server 2003 Eterprise Edition với Service Pack 1. Red Hat Eterprise Linux Wordstation Vertion 4.0. CHƯƠNG IV. THỰC HIỆN KIỂM THỬ IV.1 TẠO USECASE KIỂM THỬ, ĐIỀU KIỆN ĐẦU VÀO VÀ KẾT QUẢ MONG ĐỢI 1.Chức năng Login a. Diễn tả Usecase Đây là Usecase đăng nhập của hệ thống. Muốn vào được hệ thống ta cần đăng nhập đúng. b. Điều kiện đầu vào và đầu ra(kết quả mong đợi): Nhập Username và Password vào trong 2 hộp Textbox, hệ thống sẽ kiểm tra Username và Password. Nếu Username trong hộp Textbox mà trống hoặc Password trong hộp Textbox mà trống thì một thông báo lỗi sẽ được hiển thị. Nếu Username và Password mà nhập đúng thì việc đăng nhập vào hệ thống đã thành công. Nếu Username hoặc Password bị sai thì hệ thống sẽ hiển thị “đăng nhập không thành công” Nếu nhập đúng Username và Password rồi nhưng Click Thoat thì hệ thống sẽ đóng lại. Hệ thống cho phép bạn tiếp tục vào những trang khác. TESTCASE LOGIN USERNAME PASSWORD ĐÚNG SAI KẾT QUẢ Kieuoanh 123456789 Hiển thị thông báo thành công và được vào những trang khác Kieuoanh 123 Hiển thị thông báo lỗi Zeroqn 123456789 Hiển thị thông báo thành công. 2. Chức năng tra cứu 2.1.Tra cứu mặt hàng a. Diễn tả Usecase tra cứu mặt hàng: Chức năng tra cứu mặt hàng giúp ta tìm được nhanh chóng những mặt hàng nào thuộc ở kho nào để tiện việc cung cấp cho khách hàng khi có yêu cầu. b. Điều kiện đầu vào và đầu ra (kết quả mong đợi): Nhập tên mặt hàng, mã mặt hàng, và mô tả vào 3 hộp Textbox hệ thống sẽ kiểm tra tên mặt hàng, mã mặt hàng, mô tả. Nếu Tên mặt hàng, mã mặt hàng, mô tả để trống thì một thông báo lỗi sẽ được hiển thị. Nếu Tên mặt hàng, mã mặt hàng, mô tả nhập sai thì hệ thống cũng sẽ xuất hiện một thông báo lỗi. Nếu Tên mặt hàng, mã mặt hàng, mô tả nhập đúng thì hệ thống sẽ hiển thị những thông tin trên một bảng lưới. USECASE TRA CỨU MẶT HÀNG TÊN MẶT HÀNG MÃ MẶT HÀNG MÔ TẢ ĐÚNG SAI KẾT QUẢ Dầu diezen Mh06 chất lỏng Thông báo lỗi Xăng MH03 chất lỏng Thông báo thành công Thông báo lỗi 2.2. Tra cứu khách hàng a. Diễn tả Usecase tra cứu khách hàng: Khách hàng là người giao dịch với công ty, yêu cầu nhân viên bán hàng cung cấp các mặt hàng mà họ yêu cầu Chức năng tra cứu khách hàng giúp ta tìm được nhanh chóng được điạ chỉ, số điện thoại, số tài khoản của khách hàng và ta cũng kiểm tra được Khách hàng nào giao dịch với công ty nhiều nhất để có thể thưởng cho khách hàng. b. Điều kiện đầu vào và đầu ra (kết quả mong đợi): Nhập tên khách hàng, mã khách hàng vào 2 hộp Textbox hệ thống sẽ kiểm tra tên khách hàng, mã khách hàng. Nếu Tên khách hàng, mã khách hàng để trống thì một thông báo lỗi sẽ được hiển thị. Nếu Tên khách hàng, mã khách hàng nhập sai thì hệ thống cũng sẽ xuất hiện một thông báo lỗi. Nếu Tên khách hàng, mã khách hàng nhập đúng thì hệ thống sẽ hiển thị những thông tin trên một bảng lưới. USECASE TRA CỨU KHÁCH HÀNG TÊN KHÁCH HÀNG MÀ KHÁCH HÀNG ĐÚNG SAI KẾT QUẢ Công ty A Kh01 Hiển thị thông tin trên bản lưới Hiển thị thông báo lỗi 1233 A Hiển thị thông báo lỗi 2.3 Tra cứu hoá đơn. a. Diễn tả Usecase tra cứu hoá đơn: Hiển thị chi tiết các mặt hàng đã được xuất trong một hoá đơn nào đó. Tìm được thông tin của người đã bán hàng, ngày giao hàng, ngày hoá đơn và tổng thành tiền của từng hoá đơn có đúng hay không. b. Điều kiện đầu vào và đầu ra (kết quả mong đợi): Trong chức năng Tra cứu hoá đơn này chỉ cần chọn số hoá đơn đã được lưu sẳn và bấm nút thực hiện thì sẽ hiển thị những thông tin liên quan. Nếu để trống không chọn vào ô số hoá đơn thì hệ thống sẽ thông báo lỗi. USECASE TRA CỨU HOÁ ĐƠN SỐ HOÁ ĐƠN ĐÚNG SAI KẾT QUẢ 1 Hiển thị kết qủa trên bản lưới Hiển thị thông báo lỗi 2.4 Tra cứu kho hàng a. Diễn tả Usecase tra cứu kho hàng: Giúp tra cứu những thông tin chi tiết về kho hàng b. Điều kiện đầu vào và đầu ra (kết quả mong đợi): Nhập tên kho, mã kho vào 2 hộp Textbox, hệ thống sẽ kiểm tra tên kho và mã kho. Nếu tên kho, mã kho để trống thì sẽ hiển thị một thông báo lỗi. Nếu nhập đúng tên kho, mã kho thì kết quả sẽ được hiển thị trên một bản lưới. USECASE TRA CỨU KHO HÀNG TÊN KHO MÃ KHO ĐÚNG SAI KẾT QUẢ Xăng dầu K1 Hiển thị kết quả trên bản lưới Hiển thị thông báo lỗi 123 K3 Hiển thị thông báo lỗi 3. Chức năng cập nhật Cập nhật khách hang a. Diễn tả Usecase cập nhật khách hàng: Cập nhật vào trong CSDL những khách hàng mới của công ty. b. Điều kiện đầu vào và đầu ra (kết quả mong đợi): Nhập thông tin mã số khách hàng(tự động tăng), tên khách hàng, địa chỉ, số lần giao dich, số tài khoản, điện thoại vào 6 hộp Textbox, hệ thống sẽ kiểm tra những thông tin nhập vào có đúng không. Nếu nhập đúng và đủ những thông tin đó thì hệ thống sẽ hiển thị thông báo cập nhật thành công và sẽ lưu khách hàng này vào trong CSDL. Nếu để trống những hộp Textbox mà chọn thực hiện thì hệ thống sẽ hiển thị một thống báo để bạn điền đầy đủ những thông tin vào. Nếu nhập sai trong những hộp Textbox thì hệ thống sẽ thông báo lỗi để bạn kiểm tra lại. USECASE CẬP NHẬT KHÁCH HÀNG Mskh TÊN kh ĐIỆN THOẠI SỐLẦN GDICH TÀI KHOẢN ĐỊA CHỈ ĐÚNG SAI KẾT QUẢ KH05 Ong A 0905001122 200 12345667 DN hiển thị thông báo thành công hiển thị thông báo lỗi Kh06 Bà C Aaaa hiển thị thông báo lỗi 4.Chức năng xuất hàng Lập hoá đơn. a. Diễn tả Usecase cập nhật khách hàng:Giúp lập phiếu xuất hàng, tính tổng tiền từng món hàng riêng và tổng tiền của khách hàng mua trong mỗi lần mua. b. Điều kiện đầu vào và đầu ra (kết quả mong đợi): Nhập thông tin mã số mặt hàng(*) và số lượng mặt hàng(*), mã số khách hàng, tên khách hàng, điện thoại, nơi giao hàng vào những hộp Textbox trong phiếu xuất hàng. Nếu nhập đúng và đầy đủ những thông tin thì hệ thống sẽ liệt kê những thông tin trên bảng lưới. Nếu nhập số lượng lớn hơn số lượng tồn trong kho hệ thống sẽ thông báo lỗi. Nhưng nếu ta chọn 2 lần liên tiếp cho một mã số mặt hàng với số lượng như nhau thì hệ thống cúng sẽ thông báo lỗi Nếu nhập số quá lớn thì hệ thống sẽ thông báo lỗi IV.2 THỰC HIỆN KIỂM THỬ VỚI CÔNG CỤ IBM RFT Chức năng Login Kết quả khi sử dụng công cụ kiểm thử. Đã nhập đúng Usename và PassW Đã nhập sai Usename hoặc PassW Kết luận: Đối với chức năng Login chương trình đã thực hiện đúng với yêu cầu đề ra. Thể hiện trong bảng sau. May 6, 2008 9:00:11 PM PDT Script start [Script1] line_number = 1 script_name = Script1 script_id = Script1.java PASS May 6, 2008 9:00:12 PM PDT Start application [QUAN_LY_BAN_HANG] name = QUAN_LY_BAN_HANG line_number = 30 script_name = Script1 script_id = Script1.java PASS May 6, 2008 9:00:51 PM PDT Script end [Script1] script_name = Script1 script_id = Script1.java 2. Chức năng tra cứu 2.1 Tra cứu mặt hàng Kết quả khi sử dụng công cụ kiểm thử. Tra cứu không thành công Tra cứu thành công Kết luận: Đối với chức năng tra cứu mặt hàng chương trình đã thực hiện đúng với yêu cầu đề ra.Thể hiện trong bảng sau May 6, 2008 8:42:25 PM PDT Script start [Script2] line_number = 1 script_name = Script2 script_id = Script2.java PASS May 6, 2008 8:42:26 PM PDT Start application [QUAN_LY_BAN_HANG] name = QUAN_LY_BAN_HANG line_number = 30 script_name = Script2 script_id = Script2.java PASS May 6, 2008 8:43:01 PM PDT Script end [Script2] script_name = Script2 script_id = Script2.java 2.2 Tra cứu khách hàng Kết quả khi sử dụng công cụ kiểm thử. // Window: QUAN_LY_BAN_HANG.exe: Qu?n Lý Bán Hàng menuStrip1menuBar().click(atText("Tra c\u1ee9u")); để Textbox trống, ctrình xuất hiện thông báo menuStrip1menuBar().click(atPath("Tra c\u1ee9u->Khách hàng")); // Window: QUAN_LY_BAN_HANG.exe: Tra c?u khách hàng cmdthuchienbutton().click(); // Window: QUAN_LY_BAN_HANG.exe: thông báo... okbutton2().click(atPoint(33,17)); // Window: QUAN_LY_BAN_HANG.exe: Tra c?u khách hàng txttenkhachhangtext().click(atPoint(121,10)); Tra cứu đúng traCuKháchHàngwindow().inputChars("a"); cmdthuchienbutton().click(); // Window: QUAN_LY_BAN_HANG.exe: thông báo... okbutton2().click(atPoint(21,9)); // Window: QUAN_LY_BAN_HANG.exe: Tra c?u khách hàng txtmakhachhangtext().click(atPoint(8,8)); txttenkhachhangtext().click(atPoint(11,3)); traCuKháchHàngwindow().inputKeys("{BKSP}"); txtmakhachhangtext().click(atPoint(4,2)); traCuKháchHàngwindow().inputChars("Kh01"); cmdthuchienbutton().click(); cmdthoatbutton().click(); } Kết luận: Đối với chức năng tra cứu mặt hàng chương trình đã không thực hiện đúng với yêu cầu đề ra. Thể hiện trong bảng sau. May 6, 2008 10:42:22 PM PDT Script start [Script5] line_number = 1 script_name = Script5 script_id = Script5.java PASS May 6, 2008 10:42:22 PM PDT Start application [QUAN_LY_BAN_HANG] name = QUAN_LY_BAN_HANG line_number = 30 script_name = Script5 script_id = Script5.java FAIL May 6, 2008 10:42:49 PM PDT Script5.testMain had an unhandled exception. exception_name = com.rational.test.ft.ObjectNotFoundException Khai báo sai trong chương trình exception_message = Looking for [GuiTestObject(Name: groupBox1groupBox, Map: GroupBox1)] - no plausible candidate was found. script_name = Script5 script_id = Script5.java line_number = 39 exception_stack = at com.rational.test.ft.object.interfaces.GuiTestObject.click(GuiTestObject.java:366) at Script5.testMain(Script5.java:39) at org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:78) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:92) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:68) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:400) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:177) at org.eclipse.core.launcher.Main.invokeFramework(Main.java:336) at org.eclipse.core.launcher.Main.basicRun(Main.java:280) at org.eclipse.core.launcher.Main.run(Main.java:977) at org.eclipse.core.launcher.Main.main(Main.java:952) screen_snapshot = Click to view full size FAIL May 6, 2008 10:42:50 PM PDT Script end [Script5] script_name = Script5 script_id = Script5.java 2.3 Tra cứu hoá đơn. để Textbox trống, ctrình xuất hiện thông báo Kết quả khi sử dụng công cụ kiểm thử. // Window: QUAN_LY_BAN_HANG.exe: Tra c?u hoá ??n cmdthuchienbutton().click(); // Window: QUAN_LY_BAN_HANG.exe: thong bao... okbutton2().click(atPoint(47,11)); // Window: QUAN_LY_BAN_HANG.exe: Tra c?u hoá ??n cmbsohoadoncomboBox().click(); cmbsohoadoncomboBox().click(atText("8")); cmdthuchienbutton().click(); Thực hiện đúng yêu cầu // Window: QUAN_LY_BAN_HANG.exe: Thông Báo... okbutton3().click(atPoint(38,13)); // Window: QUAN_LY_BAN_HANG.exe: Tra c?u hoá ??n cmbsohoadoncomboBox().click(); cmbsohoadoncomboBox().click(atText("5")); cmdthuchienbutton().click(); cmdthoatbutton().click(); // Window: QUAN_LY_BAN_HANG.exe: Qu?n Lý Bán Hàng menuStrip1menuBar().click(atText("Tra c\u1ee9u")); menuStrip1menuBar().click(atPath("Tra c\u1ee9u->Kho hàng")); Kết luận: Đối với chức năng tra cứu hoá đơn chương trình đã thực hiện đúng với yêu cầu đề ra. Thể hiện trong bảng sau May 6, 2008 10:59:16 PM PDT Script start [Script6] line_number = 1 script_name = Script6 script_id = Script6.java PASS May 6, 2008 10:59:16 PM PDT Start application [QUAN_LY_BAN_HANG] name = QUAN_LY_BAN_HANG line_number = 30 script_name = Script6 script_id = Script6.java PASS May 6, 2008 11:00:01 PM PDT Script end [Script6] script_name = Script6 script_id = Script6.java 3. Chức năng cập nhật Cập nhật khách hàng Kết quả khi sử dụng công cụ kiểm thử. // Window: QUAN_LY_BAN_HANG.exe: Qu?n Lý Bán Hàng menuStrip1menuBar().click(atText("C\u1eadp nh\u1eadt")); menuStrip1menuBar().click(atPath("C\u1eadp nh\u1eadt->Khách hàng")); // Window: QUAN_LY_BAN_HANG.exe: C?p Nh?t Khách Hàng cpNhtKháchHàngwindow().inputKeys("huyng{BKSP}h van tinh{TAB}"); cpNhtKháchHàngwindow().inputKeys("{TAB}"); cpNhtKháchHàngwindow().inputKeys("0511234567{TAB}"); cpNhtKháchHàngwindow().inputKeys("{TAB}"); cpNhtKháchHàngwindow().inputKeys("768932092{TAB}"); cpNhtKháchHàngwindow().inputKeys("{TAB}"); cpNhtKháchHàngwindow().inputKeys("{TAB}"); cpNhtKháchHàngwindow().inputKeys("{TAB}"); cpNhtKháchHàngwindow().inputKeys("{TAB}"); cpNhtKháchHàngwindow().inputChars("dhbg"); button2button().click(); // Window: QUAN_LY_BAN_HANG.exe: Thông Báo... okbutton5().click(atPoint(43,6)); // Window: QUAN_LY_BAN_HANG.exe: C?p Nh?t Khách Hàng cpNhtKháchHàngwindow().inputKeys("{BKSP}{BKSP}{BKSP}{BKSP}"); txtsotaikhoantext().click(atPoint(66,5)); cpNhtKháchHàngwindow().inputKeys("{BKSP}{BKSP}{BKSP}{BKSP}{BKSP}{BKSP}{BKSP}{BKSP}{BKSP}"); txtsolangiaodichtext().click(atPoint(52,18)); cpNhtKháchHàngwindow().inputKeys("{BKSP}{BKSP}"); txtdienthoaitext().click(atPoint(84,8)); cpNhtKháchHàngwindow().inputKeys("{BKSP}{BKSP}{BKSP}{BKSP}{BKSP}{BKSP}{BKSP}{BKSP}{BKSP}{BKSP}"); txttenkhachhangtext().click(atPoint(92,14)); cpNhtKháchHàngwindow().inputKeys("{BKSP}{BKSP}{BKSP}{BKSP}{BKSP}{BKSP}{BKSP}{BKSP}{BKSP}{BKSP}"); cpNhtKháchHàngwindow().inputKeys("{BKSP}{BKSP}{BKSP}{BKSP}"); button2button().click(); // Window: QUAN_LY_BAN_HANG.exe: Thông Báo... okbutton5().click(atPoint(48,7)); // Window: QUAN_LY_BAN_HANG.exe: C?p Nh?t Khách Hàng button1button().click(); Kết luận: Đối với chức năng cập nhật khách hàng chương trình đã thực hiện không đúng với yêu cầu đề ra. Thể hiện trong bảng sau May 7, 2008 8:11:13 AM PDT Script start [Script7] line_number = 1 script_name = Script7 script_id = Script7.java FAIL May 7, 2008 8:11:36 AM PDT Script7.testMain had an unhandled exception. exception_name = com.rational.test.ft.ObjectNotFoundException exception_message = Looking for [BrowserTestObject(Name: browser_htmlBrowser, Map: htmlBrowser)] - no plausible candidate was found. script_name = Script7 script_id = Script7.java line_number = 32 exception_stack = at com.rational.test.ft.object.interfaces.TopLevelTestObject.close(TopLevelTestObject.java:149) at Script7.testMain(Script7.java:32) at org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:78) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:92) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:68) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:400) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:177) at org.eclipse.core.launcher.Main.invokeFramework(Main.java:336) at org.eclipse.core.launcher.Main.basicRun(Main.java:280) at org.eclipse.core.launcher.Main.run(Main.java:977) at org.eclipse.core.launcher.Main.main(Main.java:952) screen_snapshot = Click to view full size FAIL May 7, 2008 8:11:37 AM PDT Script end [Script7] script_name = Script7 script_id = Script7.java 4.Chức năng xuất hàng Lập hoá đơn Kết quả khi sử dụng công cụ kiểm thử. // Window: QUAN_LY_BAN_HANG.exe: Qu?n Lý Bán Hàng menuStrip1menuBar().click(atText("Xu\u1ea5t hàng")); menuStrip1menuBar().click(atPath("Xu\u1ea5t hàng->L\u1eadp hoá \u0111\u01a1n")); // Window: QUAN_LY_BAN_HANG.exe: L?p hoá ??n cmbmasomathangcomboBox().click(); cmbmasomathangcomboBox().click(atText("MH01")); // Window: QUAN_LY_BAN_HANG.exe: Thông Báo okbutton6().click(atPoint(20,7)); // Window: QUAN_LY_BAN_HANG.exe: L?p hoá ??n txtsoluongtext().click(atPoint(11,3)); lpHoánwindow().inputChars("456"); cmbmasomathangcomboBox().click(); cmbmasomathangcomboBox().click(atText("MH01")); // Window: QUAN_LY_BAN_HANG.exe: Thông Báo okbutton6().click(atPoint(38,6)); // Window: QUAN_LY_BAN_HANG.exe: L?p hoá ??n txtsoluongtext().click(atPoint(32,7)); lpHoánwindow().inputKeys("{BKSP}{BKSP}{BKSP}82"); cmbmasomathangcomboBox().click(); cmbmasomathangcomboBox().click(atText("MH01")); cmdluubutton().click(); // Window: QUAN_LY_BAN_HANG.exe: thông báo yesbutton().click(atPoint(48,3)); // Window: QUAN_LY_BAN_HANG.exe: Thông Báo okbutton6().click(atPoint(14,14)); // Window: QUAN_LY_BAN_HANG.exe: L?p hoá ??n cmdxoadongbutton().click(); cmdhuybobutton().click(); // Window: QUAN_LY_BAN_HANG.exe: Thong Bao yesbutton2().click(atPoint(50,18)); // Window: QUAN_LY_BAN_HANG.exe: L?p hoá ??n cmdthoatbutton3().click(); // Window: QUAN_LY_BAN_HANG.exe: Thông Báo yesbutton3().click(atPoint(62,12)); } Kết luận: Đối với chức năng cập lập hoá đơn chương trình đã thực hiện không đúng với yêu cầu đề ra. Thể hiện trong bảng sau May 6, 2008 9:08:45 PM PDT Script start [Script4] line_number = 1 script_name = Script4 script_id = Script4.java PASS May 6, 2008 9:08:45 PM PDT Start application [QUAN_LY_BAN_HANG] name = QUAN_LY_BAN_HANG line_number = 30 script_name = Script4 script_id = Script4.java FAIL May 6, 2008 9:09:11 PM PDT Script4.testMain had an unhandled exception. exception_name = com.rational.test.ft.AmbiguousRecognitionException Thực hiện ko đúng yêu cầu exception_message = Found 2 instances of the same test object. This often happens when multiple instances of the application are running. Details: Looking for GuiSubitemTestObject(Name: menuStrip1menuBar, Map: MenuStrip1). First object: recognition score:4950, description: {Name=MenuStrip1, TabIndex=0, screenRectangle=java.awt.Rectangle[x=-32000,y=-32000,width=0,height=27], .priorLabel= 9:09:10 PM 5/6/2008, .classIndex=0} Second object: recognition score:4950, description: {Name=MenuStrip1, TabIndex=0, screenRectangle=java.awt.Rectangle[x=-32000,y=-32000,width=0,height=27], .priorLabel= 9:09:11 PM 5/6/2008, .classIndex=0} script_name = Script4 script_id = Script4.java line_number = 34 exception_stack = at com.rational.test.ft.object.interfaces.StatelessGuiSubitemTestObject.click(StatelessGuiSubitemTestObject.java:166) at Script4.testMain(Script4.java:34) at org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:78) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:92) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:68) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:400) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:177) at org.eclipse.core.launcher.Main.invokeFramework(Main.java:336) at org.eclipse.core.launcher.Main.basicRun(Main.java:280) at org.eclipse.core.launcher.Main.run(Main.java:977) at org.eclipse.core.launcher.Main.main(Main.java:952) screen_snapshot = Click to view full size FAIL May 6, 2008 9:09:12 PM PDT Script end [Script4] script_name = Script4 script_id = Script4.java 5. Viết báo cáo Sau khi thực hiện kiểm thử chương trình quản lí bán hàng với công cụ kiểm thử IBM Rational Funtional Tester đã tìm ra được lỗi của những chức năng thể hiện như sau: CHỨC NĂNG PASS FAIL LỖI Login Tra cứu mặt hàng Tra cứu khách hang lỗi khai báo tại vị trí thực hiện 39 Tra cứu hoá đơn Cập nhật khách hang Lưu đường dẫn sai tại vị trí thực hiện 32 Lập hoá đơn Thực hiện không đúng yêu cầu tại vị trí thực hiện 34 KẾT LUẬN NHỮNG VẤN ĐỀ ĐẠT ĐƯỢC Với sự nỗ lực hết mình trong thời gian qua và sự hướng dẫn tận tâm của thầy Dương Hồng Quang, luận văn: “Nghiên cứu công cụ kiểm thử IBM Rational Funtional Tester V7.0- ứng dụng kiểm thử phần mềm tại trung tâm phát triển phần mềm Đại Học Duy Tân” cho đến nay đã được hoàn thành và đạt được những kết quả sau: Nghiên cứu được những vấn đề liên quan đến kiểm thử, cách thức tiến hành kiểm thử trong quy trình phát triển phần mềm. Nghiên cứu những chức năng và cách thức hoạt động của công cụ kiểm thử IBM Rational Funtional Tester và sử dụng nó để kiểm thử cho những phần mềm hoàn chỉnh viết bằng Java, VB, .Net. ƯU ĐIỂM VÀ NHƯỢC ĐIỂM CỦA CÔNG CỤ 1. Nhược điểm Sự chậm trể của MenuItem và ngữ cnh của MenuItem là không thể thực hiện được trong SAP. sự thi hành của IBM Rational Funtional Tester 7.0 không hỗ trợ khả năng tạo ra một kiểm chứng trên MenuItem . Việc tạo ra một điểm kiểm chứng trên MenuItem chỉ có một điểm nổi bật là MenuBar. Tuy nhiên, bạn có thể tạo ra một điểm kiểm chứng trên Menubar và lựa chọn một MenuItem được phụ thuộc trong trang Verification Point Data của Verification Point và Action widzad. IBM Rational Funtional Tester không hổ trợ việc tạo ra một menu ngữ cảnh và các Item trên Sap. Sự chạy lại sẽ không đúng khi lựa chọn ngữ cảnh MenuItem trên thanh Toolbar trong SAP. Việc chạy lại sẽ không đúng khi lựa chọn ngữ cảnh MenuItem từ sự lựa chọn khác nhau ở những nút lệnh trên Toolbar trong một vài trang được thể hiện. Việc lựa chọn một vài biểu tượng trên ngữ cảnh của Menu một cách tụ động là lựa chọn kịch bảng ngữ cảnh MenuItem với những đối số. Những đối số này được tạo ra một cách tự động bởi SAP cho một vài điều ngược lại mà nó được Funtional Tester ghi lại. Để cho việc thực hiện lại làm việc một cách đúng quy cách, bạn cần chạy lại nhiều lần giống nhau để việc ghi lại không xảy ra sai lầm. Việc chạy lại sẽ sai nếu như bạn chỉ chạy lại trong một phiên và sau đó chạy lại trong những phiên khác nhau. Vấn đề sẽ không được cố định trừ khi SAP tập trung nó trong một bộ điều khiển Frameword. Funtional Tester không hổ trợ cho việc kiểm thử SAP đồ hoạ và những điều khiển ứng dụng. Funtional Tester không hổ trợ cho việc kiểm thử SAP đồ hoạ như là: GuiCtrlBarChart, GuiCtrlNetChart, GuiCtrlChart, GuiCtrlColorSelector, và GuiCtrlWedViewers, nó cũng không hổ trợ việc điều khiển của ứng dụng như lưới APO. 2. Ưu điểm Sau khi chạy thử Tool IBM Rational Funtional Tester ta thấy đó là một Tool kiểm thử chức năng rất hay, nó giúp chúng ta kiểm thử lại tất cả những quá trình mà chúng ta đã làm có giống với bản phân tích thiết kế đã đưa ra ngay từ đầu không, đồng thời nó còn giúp chúng ta phát hiện ra lỗi để ta cócách khắc phục và nhiều lợi ích khác nữa như đã trình bày ở trên. HƯỚNG PHÁT TRIỂN Khi nghiên cứu về công cụ Rational Funtional Tester này của IBM em đã tìm hiểu được một số tính năng của nó, tuy nhiên, vì tự nghiên cứu nên còn rất nhiều chức năng của nó em chưa biết hết được, nên sẽ không tránh khỏi những sai sót rất mong thầy cô giúp đỡ thêm, em xin chân thành cảm ơn. Trong tương lại, em sẽ tìm hiểu kỹ hơn về công cụ, đễ hiểu rõ hơn nhưng tính năng mà nó mang lại, và sẽ thực hiện những cách Import File từ những phần khác trong IBM sang Rational Funtional Tester để kiểm tra. Em sẽ tìm hiểu cách thức kiểm thử theo quy trình RUP trong công cụ này. PHỤ LỤC A HƯỚNG DẤN CÀI ĐẶT IBM RATIONAL FUTIONAL TESTER 1. Những yêu cầu về cài đăt Yêu cầu về phần cứng: Trước khi cài đặt chương trình, bạn cần kiểm tra hệ thống máy tính củabạn có đáp ứng được những yêu cầu cài đặt không. Phần cứng Những yêu cầu Bộ xử lí Tối thiểu là Intel 1.5GhZ Pentium 4(hoặc cao hơn để được kết quả tốt hơn) Bộ nhớ Tối thiểu 1GB RAM Ổ đĩa trống Vùng trống của ổ đĩa tối thiểu là 750MB phụ thuộc vào gói sản phẩm cài đặt. Cộng thêm vùng đĩa trống cho tài nguyên mà bạn phát triển thêm. Chú ý: Yêu cầu về ổ đĩa có thể tăng lên hoặc giảm xuống nó quyết định bởi những chức năng mà bạn cài đặt. Vùng đĩa trống được cộng thêm phụ thuộc vào nếu bạn dowload những gói sản phẩm để cài đặt. Vùng đĩa trống được cộng thêm phụ thuộc nếu bạn sử dụng FAT 32 thay thế cho NTFS. Phần hiển thị Hiển thị tối thiểu 1024*768 sử dụng 256 màu Một vài phần cứng khác Microsoft mouse hoặc những hổ trợ tương thích. Yêu cầu về phần mềm: Trước khi cài đặt chương trình, bạn cần kiểm tra hệ thống máy tính củabạn có đáp ứng được những yêu cầu cài đặt không. 2. Hệ thống hệ điều hành Những hệ điều hành bên dưới hổ trợ cho việc cài đặt: Microsoft WindowXP Service Packs 1 và 2. Microsoft Window 2000 với Service Pack 4. Microsoft Window 2000 Server với Service Pack 4. Microsoft Window Server 2003 Standard Edition với Service Pack 1. Microsoft Window Server 2003 Eterprise Edition với Service Pack 1. Red Hat Eterprise Linux Wordstation Vertion 4.0. 3. Những phần mềm yêu cầu thêm Microsoft Visual Studio .Net với .Net FrameWord 1.0 hoặc 1.1 cho .Net 2003. Microsoft Visual Studio .Net với .Net FrameWord 2.0 cho .Net 2005. 4. Những quyền lợi của người sử dụng khi cài đặt chương trình Bạn nên có một ID của người sử dụng nó sẽ gặp phải bên dưới trước khi bạn có thể cài đặt chương Rational Funtional Tester. ID của người sử dụng không chứa quá 2byte ký tự. Bạn nên có một ID sử dụng thuộc vào nhóm Administrator. Bạn nên có một cái khoá trong Root. 5. Kế hoạch của việc cài đặt Đọc tất cả những chủ đề trong đoạn này trước khi bạn bắt đầu việc cài đặt những chức năng của sản phẩm. Tính hiệu quả của bảng kế hoạch và sự hiểu biết về những vấn đề chính của việc xử lí cài đặt sẽ giúp bạn chắc chắn hơn trong việc cài đặt. Kịch bản cài đặt. Đây là một vài điều của kịch bản bạn có thể xem bên dưới khi cài đặt chương trình Rational Funtional Tester. Dưới đây là một vài điều của người quản lí có thể quyết định đến kịch bản cài đặt. Những định dạng và phương thức mà bạn truy cập trên FILE cài đặt( ví dụ như: Từ đĩa CD hay những File download từ IBM Passport Advantage ) Vị trí của việc cài đặt( ví dụ như: bạn có thể cài đặt chương trình trên 1 mình máy tính để bàn của bạn ) Kiểu của việc cài đặt( ví dụ như: bạn có thể sử dụng việc cài đặt Manager GUI, hay cài đặt không bình luận) Dưới đây là những cài đặt điển hình. Cài đặt từ đĩa CD. Cài đặt từ những chương trình download. Cài đặt từ kho trên HTML hay HTML Server. Tác dụng của những tính năng trong việc cài đặt: Với phiên bảng 7.0 bạn có thể điều chỉnh những sản phẩm phần mềm bằng sự lựa chọn những chức năng Rational Funtional Tester trong khi cài đặt. Khi bạn cài đặt gói sản phẩm Rational Funtional Tester sử dụng IBM Installation Manager, việc cài đặt sẽ hiển thị một cách tự động những chức năng sẳn có trong gói sản phẩm. Từ 1list những chức bạn có thể lựa chọn để cài đặt. Những chức năng được thiết lập mặc định khi bạn không lựa chọn Những chức năng Dưới đây là bảng thể hiện những chức năng của Rational Funtional Tester mà bạn có thể lựa chọn trong khi cài đặt. Sự lựa chọn mặc định của những chức năng trong khi cài đặt có thể thay đổi. Nếu những chức năng đã tồn tại trong thư mục chia sẽ tài nguyên của bạn, nó sẽ không được lựa chọn bằng sự mặc định và nó sẽ không được cài đặt trở lại Chức năng Mô tả Lựa chọn cho những cài đặt mặc định Java Scripting Cung cấp những chức năng tự động và hồi quy việc kiểm thử trong Java, Wed, Sible, và những trình ứng dụng SAP được xuyên suốt trong Eclipce IDE, .Net Frameword 1.x hoặc 2.0 thì phụ thuộc vào việc kiểm thử Sible và những trình ứng dụng SAP YES .Net 2003 Scripting Cung cấp tự động những chức năng và hồi quy việc kiểm thử trong VB.Net, Java, Wed, Sible, và trình ứng dụng SAP xuyên suốt trong .Net 2003 IDE, phụ thuộc vào .Net Frameword 1.0 hoặc 1.1 NO .Net 2005 Scripting Cung cấp tự động những chức năng và hồi quy việc kiểm thử trong VB.Net, Java, Wed, Sible, và trình ứng dụng SAP xuyên suốt trong .Net 2005 IDE, phụ thuộc vào .Net Frameword 2.0 NO Tác nhân Bao gồm Rational Funtional Tester bao gồm thành phần chạy dịch và ClearQuest Manager. Những tác nhân thành phần cho việc biên dịch từ xa của kịch bảng kiểm thử. Đây là những chức năng chưa được kiểm tra. YES Khi bạn bắt đầu việc cài đặt Rational Funtional Tester từ chương trình cài đặt, thì vị trí của kho chứa bao gồm những gói sản phẩm mà bạn đang cài đặt sẽ được định nghĩa một cách tự động trong IBM Installation Manager khi nó được bắt đầu cài đặt. Tuy nhiên, nếu bạn bắt đầu việc cài đặt ngay lập tức thì bạn nên chỉ rõ những phần bạn cần trong Installation Manager trước khi bạn bắt đầu cài đặt gói sản phẩm. Việc xác lập mặc định Installation Manager sử dụng URL để phat triển sản phẩm phần mềm Rational để kết nối đến vị trí trên Server bao gồm cả Internet và sự lựa chọn những gói cài đặt sẽ tốt hơn trong tương lai. Trước khi bạn bắt đầu quy trình cài đặt, bạn cần chắc chắn sự tồn tại gói sản phẩm từ người quản lí của bạn hoặc từ IBM. Để thêm vào, hịêu chỉnh,hay tháo gỡ một vị trí trong Installation Manager bạn làm như sau: Khởi động Installation Manager . Trên trang Star của Installation Manager, click File -> Preferences, và sau đó chọn Repositories. Vị trí trên trang sẽ được mở ra Trên trang Repositories, click Repository. Trên cửa sổ thêm vào, bạn chọn đường dẫn. Click Ok. Nếu bạn cài đặt HTML thì bạn ghi vào dấu nhắc ID và Password còn không thì bạn chọn vào cột Accessible. Click Ok để thoát. 6. Cài đặt Rational Funtional Tester bằng đĩa CD: Những thao tác tổng quan. Trong kịch bản cài đặt, bạn có đĩa CD bao gồm những File cài đặt, và những đặt trưng bạn để bạn cài đặt Rational Funtional Tester trên máy tính để bàn của bạn. Dưới đây là những điều tổng quát cho việc cài đặt từ đĩa CD. Hoàn thành những bước cài đặt trong Preinstallation tasks. Chọn một đĩa CD để cài đặt trong ổ đĩa của bạn. đặt đĩa trong ổ đĩa. Nếu hệ thống của bạn được phép chạy tự động. Rational Funtional Tester sẽ tự động mở ra. Nếu hệ thống của bạn không được phép chạy tự động, thì bạn khởi động chương trình Launchpad. Nó được đề cập chi tiết trong  Starting the Launchpad program Khởi động việc cài đặt của Rational Funtional Tester từ Launchpad. Nó bao gồm nhiều vấn đề bạn sẽ nhìn thấy trong Starting an installation from the Launchpad program. Khi bạn đã cài đặt xong chương trình, hoặc máy tính của bạn đã sẳn có chương trình đó, chương trình cài đặt sẽ chạy và hoàn thành một cách tự động bằng gói cài đặt Wizard. Bên dưới sẽ có những dòng hướng dẫn để bạn hoàn thành việc cài đặt, bạn sẽ thấy rõ hơn trong Installing IBM Rational Functional Tester using the IBM Installation Manager graphical interface. Sự đòi hỏi bảng quyền của IBM Rational Funtional Tester, để đảm bảo rằng sản phẩm bạn cài đặt sẽ được sử dụng liên tục. Nó sẽ trình bày chi tiết trong Managing licenses. 8. Sự tăng thêm những con số trong bộ nhớ trong máy tính để bàn của bạn,bạn sẽ thấy rõ hơn trong Increasing the number of file handles on Linux workstations. 9. Việc cài đặt chương trình phần mềm là tuỳ chọn cả với Rational Funtional Tester. Thông tin về cài đặt Thông tin về việc cài đặt IBM Rational Funtional Tester hổ trợ hệ thống hệ điều hành và đường dẫn, bạn sẽ nhìn thấy được trong khi cài đặt IBM Rational Funtional Tester. Yêu cầu về phần cứng Bộ xử lí yêu cầu mức tối thiểu Intel Pentium 4 1.4GHz. Ram đề nghị và tối thiểu là 1GH. Dung lượng ổ đĩa trống là 750MB. Yêu cầu về phần mềm kèm theo .Net FrameWord 1.0, 1.1, hoặc 1.2 Môi trường phát triển kết hợp tuỳ chọn(IDE) VS.Net 2003 với .Net FrameWord 1.0 hay 1.1. VS.Net 2005 với .Net FrameWord 1.2 Phần mềm hổ trợ IBM Funtional Phần mềm hổ trợ IBM Funtional được xây dựng cho bạn với hổ trợ tự động. Những thông tin liên quan và những nguyên tắc hoặc tài liệu tham khảo bạn sẽ cần đến khi bạn cần sự hổ trợ, bạn sẽ tìm được ở IBM SoftWare Support HandBook. Danh sách của những vấn đề cần biết và những phần cần chú ý và một vài thông tin hổ trợ, bạn có thể tham khảo ở wedsite IBM Rational SoftWare Support. Cho việc xây dựng phần mềm Rational mới, những sự kiện, và những thông tin khác, bạn có thể tham khảo ở wedsite IBM Rational SoftWare. Trước khi bạn liên hệ với IBM Rational SoftWare Support,bạn nên thu thập những thông tin nó sẽ cần cho bạn khi diễn tả những cái vấn đề của bạn tới chuyên gia phần mềm hổ trợ IBM, bạn nên trình bày một cách rành mạch để cho vấn đề có thể giải quyết và nó sẽ bao gồm tất cả những thông tin thích đáng mà bạn cần để các chuyên gia có thể giúp bạn về vấn đề của bạn sẽ được giải quyết một cách hiệu quả hơn. Trong thời gian này bạn có thể hỏi những câu hỏi mà bạn chưa biết. 8. Hướng dẫn cài đặt bằng đĩa Khi cho đĩa CD vào xuất hiện cửa sổ như hình 1 Chương trình sẽ tự chạy và xuất hiện cửa sổ như hình 2 để bắt đầu quá trình cài đặt chọn Install now . Sau khi chọn Install now sẽ xuất hiện thông báo bạn chọn Run như hình 3 để cài đặt. Sau đó sẽ xuất hiện cửa sổ như hình 4 để ta chọn phần muốn cài đặt ở đây ta chọn Install IBM Rational Funtional Tester. Cửa sổ Welcom xuất hiện click Next để tiếp tục chương trình, click Cancel để thoát khỏi quá trình cài đặt. Sau khi Click Next sẽ xuất hiện cửa sổ như hình 5. Click Back để quay lại trang trước, chọn Cancel để thoát khỏi chương trình cài đặt, Click vào I accept the Items in the lincense agreement để thể hiện sự đồng ý, sau nó Click Next để tiếp tục chương trình, sau khi Click Next sẽ xuất hiện cửa sổ như hình 6. Nếu bạn muốn lưu chương trình vào 1 nơi khác thì Click Change…Chọn Back để quay lại trang trước, Cancel để thoát quá trình cài đặt, Chọn Next để tiếp tục quá trình cài đặt. Nếu chọn Next thì chương trình sẽ xuất hiện cửa sổ như hình 7 Sau khi Click Next sẽ xuất hiện cửa sổ như hình 8. Bạn đợi cho chương trình tự chạy sau đó nó sẽ xuất hiện cửa sổ như hình 9 thông báo quá trình cài đặt thành công bạn chọn Finish để hoàn thành, chọn Back để quay lại phần trước, chọn Cancel để thoát khỏi quá trình cài đặt. Bạn đợi cho chương trình chạy tiếp thì chương trình sẽ tiếp tục quá trình cài đặt IBM Rational Funtional Tester như cửa sổ hình 10. Click Next để tiếp tục quá trình cài đặt, Back để quay lại phần trước, và Cancel để thoát khỏi quá trình cài đặt. Sau khi bạn Click Next sẽ xuất hiện cửa sổ như hình 11. Click Back để quay lại trang trước, chọn Cancel để thoát khỏi chương trình cài đặt, Click vào I accept the Items in the lincense agreement để thể hiện sự đồng ý, sau nó Click Next để tiếp tục chương trình, sau khi Click Next sẽ xuất hiện cửa sổ như hình 12. Nếu bạn muốn thay đổi đường dẫn thì Click vào Browse, Click back để quay lại, Click Cancel để thoát khỏi quá trình cài đặt, Click Next để tiếp tục quá trình cài đặt, sau khi Click Next sẽ xuất hiện cửa sổ như hình 13. Sau khi bạn chọn Next sẽ xuất hiện sổ như hình14. Nếu bạn muốn thay đổi đường dẫn thì chọn Browse. Click Back để quay lại, Click để Cancel để thoát khỏi chương trình, Click Next để tiếp tục quá trình cài đặt Click Next để tiếp tục quá trình cài đặt ,ở cửa sổ này sẽ xuất hiện 2 trình ứng dụng cho bạn là .NET 2003 Scripting và .NET 2005 Scripting bạn chọn một trong 2 sao cho thuận tiện với công việc của bạn ở đây tôi chọn .NET 2005 Scripting. Sau khi chọn và Click Next sẽ xuất hiện cửa sổ như hình 15. Nếu bạn muốn quay lại phần trước thì chọn Back, tiếp tục qua trình cài đặt thì chọn Install. Sau khi chọn Install chương trình sẽ tự chạy như cửa sổ sau. Bạn Click để hoàn thành quá trình cài đặt. Nếu bạn muốn xem lại tất cả quá trình cài đặt thì Click vào View Log File chương trình cài đặt sẽ tự động hiển thị trở lại cho bạn, muốn thoát khỏi quá trình Click Close. PHỤ LỤC B THỰC HIỆN QUÁ TRÌNH KIỂM THỬ VỚI RATIONAL FUNTIONAL TESTER. Hướng dẫn sử dụng Rational Funtional. 1 Chức năng của những biểu tượng trên thanh Toolbar Trên thanh toolbar có những command như sau: New: Hiển thị ra một cái hộp để bạn tạo một Project mới bao gồm tạo Funtional Tester Project, một Record a Funtional Tester Scrip, Test Object map, hoặc Help Superclass. Bạn click vào những biểu tượng đó để thực những cách tạo mà bạn muốn hoặc bạn click vào biểu tượng và sau đó chọn phần bạn muốn tạo. Save : Dùng để lưu những phần bạn đã làm. Print: phần hiển thị của hộp print này giúp bạn in nhưng kịchbản hiện thời bạn đanglàm. Create a Functional Tester Project: tại đây bạn có thể tạo cho mình một Project mới. Connect to an existing Functional Tester Project :phần kết nối đến một Project khác trước khibạn sử dụng Project hiện thời. Create an Empty Functional Test Script: Tạo một khịc bản trống và bạn có thể thêm vào những phần code của Java. Create a Test Object Map: tạo một đối tượng kiểm thử dạng biểu đồ cho dự án của bạn,nó giống như một sơ đồ cây. Create a Test Datapool: tạomotj hộp dử liệu kiểm thử Create a Test Folder: tạo một danh mục kiểm thử. Record a Functional Tester Script: Giúp bạn thấyđược những thông tin của kịch bản mới và chạy những mẫu tin. Insert Recording into Active Functional Tester Script: chèn bào một bản ghi trong kịch bản đang hoạt động. Run Functional Tester Script : dùng để chạy kịch bản, khi bạn đã chọn chương trình và chọn nút này thì RFT sẽ ghi lại tất cả những hoạt động mà bạn thực hiện, nếu sau khi đã hoàn thành xong việc chạy và bạnchọn tiêp nút này thì nó sẽ hiện ra một File như vidio quay lại tất cả những thao tác mà bạn đã thực hiện Debug Functional Tester Script: Chạy một kịch bản hiện hành, chỉ ra lỗi và hiển thị những thông tin giúp bạn gỡ những lỗi mắc phải. Configure Applications for Testing : Định cấu hình cho việc kiểm thử,tạo đây bạn có thể thêm và hiệu chỉnh những thông tin cấu hình như tên, đường dẫn, hoặc những thông tin khác trong Funtional Tester trong khi bạn chạy chương trình Enable Environments for Testing: lựa chọn môi truờng cho việc kiểm thử. Open Test Object Inspector: Mở một đối tượng kiểm thử nó sẽ xuất hiện dưới dạng hình cây. Insert Verification Point into Active Functional Tester Script: Insert Test Object into Active Functional Tester Script : Insert Data Driven Commands into Active Functional Tester Script. Find Literals and Replace with Datapool Reference External Tools: xây dựng tool bên ngoài cho phép bạn chạy và định c cấu hình cho những tool bên ngoài. Search: Với chức năng tìm kiếm bạn có thể tìm kiếm những vấn đ mà bạn cần. Last Edit Location: quay lại vị trí cuối. Back:quay lại phần trước. Forward: tiếp đến phần tiép theo. 2. Tổng quan Funtional Tester Project Phần này nằm ở Pane bên trái của cửa sổ khi bạn tạo một Project, danh sách kiểm thử này nằm trong 1 project. Dưới đây là một số biểu tượng xuất hiện trong pane của một Project. Folders Test Scripts Shared test object maps Log folders Logs Java™ file Trên phần banner của một project xuất hiện những biểu tượng sau. Kết nối đến một Project mới. Refresh Projects . Nút xảy ra đồng thời của sự biên tập. 3. Cách tạo một Project đơn giản Sử dụng File menu. Bạn có thể tạo ra một tài nguyên mới bằng cách vào File->new. Sau đo sẽ xuất hiện menu bar, bạn tạo một project đơn giản bằng cách như sau. Từ menu bar bạn chọn File->New->Project… Cửa sổ như trên se xuất hiện,bạnchọn tab General->Project->Next Trong trường Project name, bạn đặt tên cho project ví dụ như JeaQuser. Nếu bạn không muốn thay đổi đường dẫn thì bạn check vào ô User default location. Sau khi chọn Finish bạn sẽ nhìn thấy Project mà bạn đã tạo Nếu bạn muốn tạo một dự án thứ hai đặt tên là JaneQuser2 thì bạn vẫn làm như trên , nhưng thay vì bạn click nút Finish thì bạn click nút Next. Từ đó chúng ta muốn tạo 2 Project độc lập chúng ta sẽ chọn bất cứ nơi đâu của dự án trong cửa sổ Project References. Click Finish để hoàn thành việc tạo một Project đơn giản. Sử dụng Popup Bây giờ chúng ta đã có một Project,chúng ta sẽ tạo một Forder bằng cách sử dụng popup menu. Từ Project JaneQuser bạn chon New->Folder Trong New Folder Wizad, tên Project của bạn đã xuất hiện theo sự mặc định trong trường Enter or select the parent folder vì ngay từ đầu chúng ta đã chọn tạo Folder trong mục JaneQuser. Trong Folder name bạn đặt tên tuỳ ý mà bạn muốn cho Folder của bạn. Click Finish để hoàn thành Sử dụng một button mới: Bây giờ chúng ta sẽ tạo 1 File cho Project sử dụng cách thứ 3 đó là botton new trên thanh Toobar Chọn 1 Folder tuỳ ý mà ta đã tạo ở trên. Trên thanh Toolbar ta chọn ta chọn biểu tượng và chọn File Trong trường File Name bạn đặttên tuỳ ý. Click để hoàn thành. Adding and Viewing Bookmarks Muốn thêm một Bookmark bạn làm như sau: Từ menu bar bạn chon. Window->Show view->Bookmarks Bạn chọn File đã có chẳng hạn như Janefile.txt Sau đó bạn chọn Add Bookmark Một bookmark mới sẽ xuất hiện Trong bảng này bạn chọn File có tên là JanesFile.txt. Từ thanh menu bạn chọn Edit->Bookmarks. Chúng ta sẽ biết được những tên File sử dụng nó sẽ được mô tả cụ thể trên Bookmarks. Bây giờ chúng ta quan sát sẽ thấy xuất hiện 2 hộp Bookmarks. 4. Create a data-driven test(Tạo kiểm thử Data-Driven) Trong phần hướng dẫn này, bạn sẽ học cách tạo kiểm thử Data-Driven và cách sử dụng từ những sự đa dạng của dữ liệu kiểm thử trên trình ứng dụng với Rational Funtional Tester Data-Driven Wizard. Sau khi hoàn thành xong phần này bạn sẽ làm được những việc như sau. Tạo một Project và cách ghi lại kịch bản kiểm thử. Kiểm thử Data-drive. Thêm một tựa đề mô tả vào dữ liệu. Tạo một điểm kiểm chứng với tham chiếu Datapool. Thêm dữ liệu trong Datapool. Chạy lại kịch bản kiểm thử. Tạo một Project Muốn tạo một Project bạn vào Windows > Open Perspective > Other. Sau đó bạn chọn Functional Test. Click File > New > Functional Test Project. Bạn đặt tên cho Project và sau đó chọn Finish để hoàn thành quá trình tạo một Project. Bắt đầu cho một báo cáo. Trên thanh Toolbar của phần mềm Rational Test bạn chọn Record a Functional Test Script(). bạn đặt tên cho Scrip sau cho click Next và chọn phần bạn muốn sử dụng và click Finish để hoàn thành quá trình. Cửa sổ nhỏ nhất của Window và màn hình Recording sẽ đư Bắt đầu với trình ứng dụng ClassicsCD Trên thanh Toolbar của bảng Recording chọn Start Application(). Bạn click Application Name cho phép bạn có nhiều lựa chọn, và sau đó bạn chọn ClassicsJavaA - java. Sau đó chọn Ok Trong trình ứng dụng ClassicsCD ở bên dưới Composers, bạn click 2 lần vào Schubert . Sau đó bạn click String Quartets Nos. 4 & 14 Click Place Order và sau đó chọn Ok cửa sổ Place an Order xuất hiện. Trong trình ứng dụng ClassicsCD, bạn gõ 1234567890 trong trường Card Number và gõ 09/09 trong trường Expiration Date Data-driving a test Trong phần này, bạn sẽ sử dụng Data-driver cư trú trên Datapool với dữ liệu có sẳn từ ví dụ trên trình ứng dụng. Một Datapool là một tập hợp những dữ liệu báo cáo liên quan. Một Datapool sẽ cung cấp giá trị của dữ liệu và bạn dùng nó để so sánh với sự biến đổi trong kịch bản kiểm thử trong lúc chạy lại kịch bản kiểm thử. Trên thanh Toolbar của cửa sổ Recording, click Insert Data Driven Commands (). Việc ghi lại sẽ tạm ngưng và bản Insert Data Driven Commands được mở. Từ trang Insert Data Driven Commands, sử dụng chuột di chuyển đến Object Finder () tới thanh Title bar của cửa sổ Place an Order trên trình ứng dụng ClassicsCD. Funtional Tester sẽ xuất ra toàn bộ bảng phát thảo của cửa sổ Place an Order với đường viền màu đỏ. Sự thoát khỏi nút chuột(Release the mouse button) Trang The Data Driver Actions được mở, trong trang The Data Driver Actions, dưới bảng nút lệnh data driver thông tin về những mục bạn chọn sẽ được xuất hiện. Bạn nhìn qua những dòng trong bảng hiển thị bạn sẽ thấy đó là những dòng code mà Rational Tester dùng để chèn vào kịch bản kiểm thử tới Data-Driver kịch bản kiểm thử. 3. Adding descriptive headings to the data(Thêm vào mô tả tựa đề tới dữ liệu) Trong phần này, bạn sẽ thêm vào mô tả tựa đề mà bạn đã làm ở phần trước. Mô tả tựa đề giúp bạn dễ dàng hơn trong việc thêm dữ liệu ở Datapool Trong bảng Data Driven Commands, sau khi xuất hiện bảng tiêu đề Variable, nó sẽ thay thế ItemText với người biên soạn. Sự lặp lại liên tục, thay thế cho mỗi ô trong bảng Variable với việc thay thế tên cho mỗi tiêu đề trong trường Variable. Sử dụng những đề mục trong danh sách bên dưới để thực hiện việc thay thế tên. Click Ok, trang Insert Data Driver Action sẽ được đóng lại. Bây giờ, Datapool đã mô tả tựa đề nó giúp bạn dễ dàng hơn trong việc thêm dữ liệu. Bạn sẽ thêm nhiều dữ liệu trong Datapool sau khi hoàn thành việc ghi lại của kịch bản kiểm thử. 4. Creating a verification point with a datapool reference(Tạo một điểm kiểm chứng với tham chiếu Datapool) Trong phần này, chúng ta sẽ tạo một điểm kiểm chứng với tham chiếu Datapool để kiểm tra tất cả những vấn đề xem nó có đúng hay không trên trình ứng dụng ClassicsCD. Chúng ta cần tìm hiểu điểm kiểm chứng(verification point ) là gì? Điểm kiểm chứng: Đó là sự giữ lại thông tin của những mục tiêu và những giá trị bằng chữ từ trình ứng dụng sau khi kiểm thử và chúng ta cần lưu giữ nó giống như một cái cơ sỡ để dùng trong việc so sánh trong lúc chạy lại kịch bản. Khi bạn chạy lại kịch bản, điểm kiểm chứng sẽ ghi lại thông tin của những mục tiêu trở lại sau đó chúng ta dùng nó để so sánh với những điểm cơ sỡ, và sẽ nhìn thấy được những vấn đế đúng sai so với kịch bản. Tạo một điểm kiểm chứng với tham chiếu Datapool. Trên thanh Toolbar của bảng Recording ,click Insert Verification Point or Action Command (). The Verification Point and Action Wizard sẽ được mở. Từ The Verification Point and Action Wizard, rê chuột đến Object Finder () to $19.99, bạn chọn "Total" trong trình ứng dụng ClassicsCD. Funtional Tester $19.99 sẽ xuất hiện với dòng màu đỏ. Sau đó bạn click Next. Và lại tiếp tục Click Next. Trên thanh Toolbar của trang Verification Point Data, Click Convert Value to Datapool Reference (). Sau đó sẽ hiển thị ra hộp thoại sau: Trong tường Datapool Variable bạn chọn newVariable để thay đổi toàn bộ tiêu đề trong Datapool. Nếu cần thiết bạn có thể chọn Add value to new record in datapool để thêm giá trị tới Record mới trong Datapool. Click Ok. Click Finish. Place the order and close the ClassicsCD application(Sắp đặt thứ ự và đóng trình ứng dụng ClassicsCD) `Trong trình ứng dụng ClassicsCD Click Place the order, và sau đó click Ok để đóng hộp thoại chứng thực. Click X ở góc bên phải của trình ứng dụng ClassicsCD để đóng trình ứng dụng. Stop recording Trên thanh Toolbar của bảng Recording, click Stop Recording (), để viết tất cả các thông tin trên bảng ghi tới kịch bản kiểm thử. Kịch bản kiểm thử sẽ hiển thị trên bảng trên trình sạon thảo Window. 5. Adding data to the datapool(Thêm dữ liệu cho Datapool) 1. Trong Script Explorer, double-click Test Datapool và sau đó double-click Private Test Datapool, trong trình soạn thảo kịch bản kiểm thử, double-click the Test Datapool trên trình soạn thảo mở rộng mà bạn muốn làm việc. 2. Click phải và sau đó click Add Record , Click Ok để thêm vào hàng trống đầu tiên. Tạo thêm vào hàng trống thứ hai, bạn lại Click Add Record Lưu lại,Copy dữ liệu từ hàng 0 trong Datapool đến hàng trống thứ 2 mà bạn đã làm ở bước 2 và 3. Tại vị trí hàng O, bạn click chuột phải, chọn Copy. Tại vị trí hàng 1 , bạn click chuột phải và chọn Paste. Click Yes để dán dữ liệu vào hàng trống. Tương tự như vậy ở hàng 2. Trong Test Datapool click X phía bên phải cửa sổ, Click Yes để lưu những chuyển đổi mà bạn đã làm trong Datapool. 6. Playing back the test(Chạy lại quá trình kiểm thử) Trong phần này, chúng ta sẽ biết cách chạy lại kịch bản kiểm thử, bạn sẽ nhìn thấy tất cả những điều mà bạn đã làm một cách dễ dàng với việc sử dụng dữ liệu từ Datapool để kiểm thử trên trình ứng dụng. Để chạy lại kịch bản, click Script > Run. Cửa sổ Select Log sẽ được mở. Click Next. Click mũi tên Datapool Iteration Count và sau đó chọn Iterate Until Done để truy xuất tất cả 3 bảng ttrong Datapool. Click Finish để sử dụng tên hiển thị mặc định. Cửa sổ Funtion Tester hiện ra, và màn hình PlayBack sẽ hiển thị trên màn hình chính của bạn. Một hộp thoại xuất hiện trong màn hình PlayBack giống như việc chạy lại tất cả các bản ghi trong kịch bản kiểm thử . Khi kịch bản kiểm thử chạy lại hoàn thành, Funtion Tester sẽ hiển thị một bảng ghi với những kết quả kiểm thử. Bảng ghi này là một File ghi lại tất cả các sự kiện xảy ra khi bạn chạy kịch bản. Bảng ghi bao gồm những kết quả của tất cả những điểm kiểm chứng mà bạn đã thực hiện trên trình ứng dụng. Click X để đóng cửa sổ Log. 7. Cách tạo một Funtional Test Rational Funtional Tester sẽ hướng dẫn bạn một cách tổng quan trong việc tạo và chạy lại kiểm thử chức năng. Đây là một sự hướng dẫn toàn diện sử dụng những ví dụ được cài đặt trong trình ứng dụng của Java với những sản phẩm hoàn thiện. Mục tiêu của phần này. Sau khi hoàn thành những phần này, bạn sẽ làm được những vấn đề sau: Làm việc với những điểm kiểm chứng, một sơ đồ và những sự biểu diễn bình thường. Sử dụng sự so sánh trong việc cập nhật những điểm kiểm chứng. Tạo một Funtional Test Project và một kịch bản báo cáo Chạy lại những kịch bản. Thực hiện kiểm thử hồi qui 8. Creating a Functional Tester project. Trên Menu của phần mềm Rational Tester click File > New > Functional Test Project. Đặt tên vào Project Name (ô này không được để trống). Chọn đường dẫn trong Project Location. Nếu trình điều khiển nguồn đã có sẵn, không cần chọn Add the project to Source Control. Nếu việc kết hợp dự án đã có sẵn bạn không cần chọn Associate the Functional Test Project with current Rational Project. Click Finish để hoàn thành. 9. Recording a script (ghi lại một kịch bản) Trong phần này, bạn sẽ biết cách ghi lại một kịch bản bằng cách sử dụng Functional Tester Recording. Begin recording (Bắt đầu việc ghi lại). 1. Để bắt đầu quá trình ghi lại, click nút Record a Functional Test Script () trên thanh Toolbar của phần mềm. 2. Trong truờng Script name đặt tên cho của trình ứng dụng mà bạn sẽ hực hiện. 3. Click Next. 4. Click Finish. 5. Trên thanh Toolbar click nút Monitor Message Preferences (). Bạn có thể sử dụng nhiều sự lựa chọn trong cùng thời gian với sự xuất hiện trên trình điều khiển của hộp văn bản trên màn hình. 6. Click Cancel. 7. Click nút Insert Script Support Commands () trên thanh Toolbar. Cửa sổ Script Support Functions hiện ra, cho phép bạn gọi một kịch bản nữa, chèn vào một mục, một thời gian, hoặc chèn vào một lời chỉ dẫn, lời bình trong kịch bản của bạn. 8. Click Close. Start the application(Bắt đầu trình ứng dụng) 1. Để bắt với quá trình kiểm thử trên trình ứng dụng, Click nút Start Application () trên thanh Toolbar. 2. Trong cửa sổ Start Application, chọn ClassicsJavaA và sau click OK. Recording actions(Sự hoạt động bảng ghi) Click + trên Foder mở rộng Haydn trên cây Composers. Hiển thị 1 List và bạ chọn Symphonies Nos. 94 & 98. Click nút Place Order. Trong cửa sổ Member Logon, để giữ sự hiển thị của Existing Customer and Trent Culpito bạn hãy Tick vào hộp Password. Click Ok. Trong hộp Card Number bạn đánh 777 777 777 777. Trong trường expiration date, bạn chọn 07/07. Click Place Order. Click Ok Playing back the script Để chạy lại kịch bản, Click nút Run Functional Test Script () trên thanh Toolbar Trên cửa sổ Select Log, giữ nguyên sự hiển thị của bảng Classics, và chọn Finish. Sau đó nó sẽ hiện cửa sổ như bên dưới. 4. Phía bên trái của cửa sổ là khung nhìn Funtional Tester Project. Ở đây hiển thị những dự án kiểm thử chức năng những dự án này hiện thời đang được kết nối. Tất cả những dự án trong khoảng thời gian kiểm thử này đều được liệt kê bên dưới với những cái tên của nó. Những dự án này cung cấp cho bạn những đường dẫn tới những kịch bản khác nhau. Khi bạn Click-double vào một trong những dự án đó thì cửa sổ hoạt động của kịch bản sẽ được mở ra. Phía bên phải là một Scrip Explorer, trong này nó sẽ hiển thị những điểm kiểm chứng, những sơ đồ mục tiêu của kịch bản đang hoạt động. Từ Scrip Explorer, bạn có thể cho hiển thị những điểm kiểm chứng hay những sơ đồ mục tiêu. Nó sẽ cho bạn những thông tin cụ thể hơn. 10. Viewing verification points and object maps Viewing verification points(Sự hiển thị của những điểm kiểm chứng.) Bạn có thể xem xét và sữa đổi dữ liệu trong những điểm kiểm chứng. 1. Trong Rational Funtional Tester, sẽ có sẵn một phần mềm là Classics.java giúp bạn chạy và tạo ra được những điểm kiểm chứng trong sự hoạt động của kịch bản. 2. Trong thư mục Verificational Points chứa 2 thư mục con nếu bạn muốn nó hiển thị thì hãy click vào đó. 3. Muốn hoàn tất quá trình bạn đóng Verificational Points Viewing object maps(Sự hiển thị của sơ đồ mục tiêu) 1. Trong Scrip Explorer, chọn thư mục mở rộng Test Objects 2. Double-click Private Test Object Map () và nó sẽ được mở ra. 3. Phía trên đỉnh sẽ có dòng khai báo Frame: logFrame1: javax.swing.Jframe. Cấu trúc của nó gồm hộp đăng nhập. Những nút lệnh, các trường password. 1. Click váo một biểu tượng. Sự thừa nhận những đặc tính được hiển thị trên một cái lưới giống như dạng cây. Trong Menu Object Map bạn có thể thêm dữ liệu bằng cách click Test Object > Insert Object(s). 2. Trong Menu Object Map, click Preferences > Clear State On Close. Nút Clear State On Close là một nút chuyển hướng nó cho phép bạn bật tắc những hiển thị. Nếu như nó ở bên trái cửa sổ, tất cả những biểu tượng sẽ được thừa nhận khi bạn đóng sơ đồ và nó giúp chúng ta khi chúng ta muốn làm chậm quá trình quay lại khi chạy lại kịch bản. 11. Performing regression tests(Biểu diển kiểm thử hồ quy) 1. Trong Java Editor, kịch bản kiểm chứng Classics.java đang hoạt động Trên đầu của kịch bản, dưới những thông tin khuôn mẫu, chú ý đến nút trên trình ứng dụng là startApp("ClassicsJavaA"); 2. Chuyển đổi A sang B. 3. Click nút Run Functional Test Script toolbar button () 4. Trong cửa sổ Select Log, chọn Classics và chọn Finish. 5. Click Yes 12. Using the Comparator to update a verification point?(Sự sử dụng dụng cụ so sanh để cập nhật một điểm kiểm chứng.) Bạn có thể sử dụng sự so sánh điểm kiểm chứng để so sánh dữ liệu của điểm kiểm chứng sau khi chạy lại kịch bản. Điểm kiểm chứng đưa ra môt dòng cơ bản về những đặc trưng hoặc dữ liệu liên quan của mục tiêu. Nếu việc xây dựng tiếp theo trên trình ứng dụng có những chỗ sai sót, bạn sẽ tìm được những sai sót đố và thậm chí còn tìm được những sự cố ý chuyển đổi trên trình ứng dụng. Nếu việc chuyển đổi là có chủ tâm, bạn có thể cập nhật những thông tin trên điểm kiểm chứng để cho việc kiểm thử tiếp theo xây dựng trong tương lai được đứng đắn. Trên bảng Log, click View Results để hiểm thị những điểm kiểm chứng sai. Khi một điểm kiểm chứng sai được hiển thị bạn so sánh kết quả mong đợi với bảng phân tích có gì khác nhau. Bạn có thể cho hiển thị những đường đường chỉ dẫn và hiệu chỉnh nó hoặc cập nhật nó với kết quả hiện có. Kết quả không mong đợi sẽ được hiển thị với dòng chữ đỏ. Cuộn Text lại. Click nút Load Baseline to Edit (). Chú ý vào sự hiển thị của cột Baseline Value. Click nút Jump to First Difference () nút 4 hướng sẽ giúp bạn xác định sự khác nhau giữa những dòng cơ bản và những mẫu tin thực tế. Click Replace Baseline with actual value button () đây là việc kiểm thử duy nhất chỉ sự khác nhau giữa phần phân tích và phần thực hiện. Đóng ứng dụng lại. Bây giờ chúng ta sẽ chạy lại kịch bản để kiểm chứng trở lại những điểm kiểm chứng bị lỗi. Đóng bản Log. Click nút Run Functional Test Script. Chọn Classics Log và chọn Finish. Click Yes. Bản Log được phép mở ra. 13. Updating the object map(Cập nhật sớ đồ mục tiêu) Trong phần này, bạn sẽ biết cách sữa những cảnh báo cho các đối tượng bằng cách sử dụng Object Map. Bạn sẽ sử dụng lặp đi lặp lại những biểu thức này một cách linh động nhất cho sự thừa nhận các đối tượng. Khi bạn nhìn thấy những sự thừa nhận bị sai hoặc là có cảnh báo. Cuối phần II.2.5, bạn nhìn thấy phía trái bản Log mở ra, Click vào Project viwe chọn Object Recognition is weak (above the warning threshold). Nhìn vào trường ObjectLookedFor and objectFound trong đoạn cảnh báo gần dưới đáy của bảng Log. Trong ClassicsA, chọn tên cho trường Password là Remember Password. Trong ClassicsB là Remember The Password. Khi bạn chạy lại kịch bản trong ClassicsB, sự thừa nhận của đối tượng sẽ không đúng đắn bởi vì nó khác nhau. Nhìn vào trường Line Number trên bản Log. Chú ý đến số của nó và đóng bản Log để chạy lại Funtional Tester. Click bất kỳ chỗ nào trên kịch bản, và sau đó click Navigate > Go to Line. Phân loại kiểu số dòng từ hộp cảnh báo bị sai và sau đó click OK Con trỏ sẽ di chuyển đến mép trái của số dòng Bạn có thể tìm dòng bị lỗi bằng cách nhìn vào chỉ báo ở dưới đáy của cửa sổ Funtional Tester. Ví Dụ: “43:9” tương đương với vị trí số 9 trên dòng 43. Dòng bị lỗi trong kịch bản có dạng như RememberPassword().clickToState(SELECTED); TÀI LIỆU THAM KHẢO Sách và giáo trình tham khảo [1] SQA và Kiểm thử phần mềm Nhà Xuất Bản Lao Động – Xã Hội. Tài liệu trên Internet Đĩa DVD của IBM Software Evaluation Kit(SEK)

Các file đính kèm theo tài liệu này:

  • docIN KHOA LUAN.doc
Tài liệu liên quan