Phương pháp và kỹ thuật sinh Test case tự động

67 3.3K 4
Phương pháp và kỹ thuật sinh Test case tự động

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

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

Thông tin tài liệu

Phương pháp và kỹ thuật sinh Test case tự động

LỜI CẢM ƠN Luận văn này là thành quả của quá trình học tập nghiên cứu của tôi cùng sự giúp đỡ, khuyến khích của các quý thầy sau 2 năm tôi theo học Chương trình đào tạo Thạc sỹ, chuyên ngành Công nghệ phần mềm của Khoa Công nghệ, Trường Đại học Công nghệ Hà Nội. Tôi xin đặc biệt cảm ơn Thầy giáo hướng dẫn TS. Trương Anh Hoàng. Thầy đã nhiệt tình hướng dẫn tôi, giúp đỡ động viên tôi rất nhiều, cho tôi có cơ hội được tiếp xúc với các tài liệu tham khảo quý giá trong quá trình nghiên cứu để hoàn thành đề tài này. Xin trân trọng cảm ơn các Thầy giáo của Khoa Công Nghệ Viện Công nghệ thông tin đã dạy dỗ tôi trong hai năm học, cảm ơn các cán bộ công tác tại Phòng Sau Đại học-Đại Học Công nghệ Hà Nội đã giúp đỡ tôi nhiều trong quá trình học tập công tác bảo vệ luận văn. MỘT LẦN NỮA TÔI XIN CHÂN THÀNH CẢM ƠN!! MỤC LỤC CHƯƠNG 1. ĐẶT VẤN ĐỀ 7 1.1. Tầm quan trọng của yêu cầu phần mềm 7 1.2. Khái niệm về Test case 7 1.3. Vấn đề sinh Test case từ yêu cầu phần mềm 8 CHƯƠNG 2. TỔNG QUAN VỀ QUÁ TRÌNH 9 SINH TEST CASE TỰ ĐỘNG 9 2.1. Giới thiệu 9 2.2. Tổng quan về các phương pháp sinh Test case 9 2.2.1. Sinh Test case dựa trên đặc tả 10 2.2.2. Sinh Test case dựa trên mô hình 10 2.2.3. Sinh Test case hướng đường dẫn 11 2.3. Kiểm thử phần mềm UML 11 CHƯƠNG 3. CÁC KỸ THUẬT PHƯƠNG PHÁP SINH 12 TEST CASE TỰ ĐỘNG 12 3.1. Giới thiệu 12 3.2. Kỹ thuật sinh Test case dựa trên đặc tả 13 3.2.1. Các phương thức đặc tả trạng thái SCR 14 3.2.2. Kỹ thuật sinh ra Test case dựa theo đặc tính của SCR 15 3.2.3. Kỹ thuật tạo Test case cho đặc tả UML 22 3.2.4. Các thuận toán sinh Test case dựa trên đặc tả 29 3.3. Kỹ thuật sinh Test case dựa trên mô hình 37 3.3.1. Tạo ra Test case bằng việc sử dụng các biểu đồ cộng tác UML 38 3.3.2. Tạo Test case dựa trên Use case cải tiến 46 CHƯƠNG 4. PHÁT TRIỂN CHƯƠNG TRÌNH ỨNG DỤNG 57 QUÁ TRÌNH SINH TEST CASE TỰ ĐỘNG 57 4.1. Mục tiêu 57 4.2. Tóm tắt quá trình sinh Test case tự động 57 4.2.1. Ví dụ 57 4.2.2. Các Test case của ví dụ 60 4.2.3. Tính ứng dụng, các lợi ich hạn chế 60 4.2.4. Kết luận 61 4.3. Cài đặt 62 DANH MỤC CÁC HIỆU THUẬT NGỮ VIẾT TẮT Từ cụm từ viết tắt Viết đầy đủ UML Unified Modeling Language OCD Object Collaboration Diagram SCR Software Cost Reducation Test Sự kiểm thử Tester Kiểm thử viên DANH MỤC CÁC HÌNH VẼ Stt Tên hình vẽ Số trang 1 Một quy trình kiểm tra cơ bản. 2 Kiểm thử dựa trên đặc tả 3 Kiểm thử dựa trên chương trình 4 Xây dựng các yêu cầu Test case từ cây biểu thức cú pháp 5 Qúa trình chung của việc tạo ra các Test case từ đặc tả SCR 6 Sự kiện gọi (call events) 7 Sự kiện báo hiệu (signal events) 8 Sự kiện thời gian (time Events) 9 Sự kiện thay đổi (Change Events) 10 Qúa trình chung cho việc tạo ra các Test case từ đặc tả UML 11 Cấu trúc của file MDL cho biểu đồ lớp biểu đồ chuyển trạng thái. 12 Biểu đồ lớp của mô hình thiết kề 13 OCD cho việc sinh ra các Test case chỉnh sửa đầy đủ các thuộc tính 14 OCD cho việc sinh ra các Test case chỉnh sửa chuyển tiếp 15 OCD cho việc sinh ra các Test case chỉnh sửa cặp chuyển tiếp. 16 Thuật toán phân tích đặc tả SCR 17 Thuật toán phân tách đặc tả UML 18 Biểu đồ cộng tác mức độ đặc tả 19 Biểu đồ cộng tác cho một thao tác 20 Các cặp cộng tác 21 Một đường chuỗi thông điệp 22 Thuật toán instrumentation 23 Mô hình hóa các vùng trong thiết kế phần mềm 24 Các hoạt động của cách tiếp cận được đề xuất bên trong quá trình phát triển phần mềm. 25 Biểu đồ trạng thái mức độ cao nhất cho ví dụ use case của bảng 3. 26 Cải tiến biểu đồ trạng thái cho ví dụ use case của bảng 3 27 Mô hình cách sử dụng có thể cho ví dụ thư viện của bảng 3. 28 Mô hình hành vi 29 Các lược đồ test các giá trị test 30 Test case cho kịch bản chính DANH MỤC CÁC BẢNG BIỂU Stt Tên bảng biểu Số trang 1 Phân biệt các biểu đồ UML mức độ test 2 Mẫu cải tiến các use case 3 Một ví dụ về mẫu chi tiết các use case MỞ ĐẦU Mặc dù việc nghiên cứu về các phương pháp kỹ thuật sinh Test case tự động từ yêu cầu người dùng đã được quan tâm nhiều trên thế giới, nhưng ở Việt Nam các nghiên cứu ứng dụng chỉ mới ở bước đầu. Thực vậy, công việc sinh Test case tự động từ yêu cầu người dùng một cách có hiệu quả trong quá trình kiểm thử là vấn đề cần thiết bức xúc của các công ty sản xuất phần mềm các tổ chức thực hiện phát triển dự án phần mềm. Trong quá trình phát triển dự án phần mềm, thường công việc tạo ra các Test case từ yêu cầu người dùng do các Tester phụ trách. Nhưng không phải Tester nào viết các tài liệu Test case này cũng như nhau. Vì vậy trong các công ty phần mềm cũng như các tổ chức thực hiện phát triển các dự án phần mềm sẽ phát sinh một vấn đề là: Tester nào viết tài liệu Test case tốt, có hiệu quả thì chất lượng phần mềm sẽ tốt hơn những dự án viết Test case tồi. Vậy tại sao chúng ta không đồng nhất hóa công việc viết Test case bằng các phương pháp kỹ thuật tự động nhằm giảm bớt công sức thời gian của các tester, làm cho chất lượng của Test case tốt hơn. Có các hướng tiếp cận khác nhau trong việc sinh Test case tự động: thứ nhất là có thể sinh Test case tự động dựa trên đặc tả từ một file input đã được định sẵn; thứ 2 sinh Test case tự động dựa trên code, chương trình có sẵn; thứ 3 là sinh Test case tự động dựa trên các mô hình UML. Trong ba hướng tiếp cận trên chúng tôi chọn hướng tiếp cận thứ 3 nghiên cứu các phương pháp theo hướng tiếp cận này. Trong đề tài luận văn này chúng tôi nghiên cứu các vấn đề về tạo Test case tự động từ yêu cầu người dùng. Sau đó, chúng tôi xem xét các phương pháp kỹ thuật hiện có trong việc tạo Test case tự động để từ đó có thể đưa ra những cải tiến bổ sung và phát triển. Cuối cùng là xây dựng một công cụ sinh Test case tự động có thể áp dụng trong thực tế. Bố cục của luận văn gồm phần mở đầu, phần kết luận 4 chương nội dung như sau: • Chương 1: Đặt vấn đề, đưa ra các vấn đề cần thiết cấp bách trong việc nghiên cứu xây dựng một kỹ thuật sinh Test case hiệu quả từ yêu cầu người dùng. • Chương 2: Giới thiệu tổng quan về sinh Test case tự động. Trên cơ sở đó chọn hướng tiếp cận sẽ đi sâu vào nghiên cứu ở Chương 3. • Chương 3: Trình bày các phương pháp kỹ thuật sinh Test case tự động hiện có. Từ đó đề xuất một kỹ thuật sinh Test case tự động phân tích ưu điểm của nó so với các kỹ thuật trước. • Chương 4: Trình bày quá trình sinh Test case hiệu quả dựa trên kỹ thuật được đề xuất. Đồng thời xây dựng chương trình demo quá trình sinh Test case tự động. Sau khi nghiên cứu thử nghiệm, trong phần Kết luận có nêu một số tổng kết nhận xét về việc sinh Test case tự động, đồng thời đề ra hướng nghiên cứu tiếp theo. CHƯƠNG 1. ĐẶT VẤN ĐỀ 1.1. Tầm quan trọng của yêu cầu phần mềm Các yêu cầu phần mềm là rất quan trọng với mọi dự án phần mềm. Các dự án thành công hoặc thất bại có nguyên nhân là do chất lượng của các yêu cầu. Các yêu cầu này cấu thành pham vi của tất cả các công việc sau đó cho nhóm phát triển dự án. Không có các yêu cầu tốt, các dự án sẽ thất bại, bị chậm trễ, tốn kém, hoặc làm ra các hệ thống không bao giờ được sử dụng. Các vấn đề yêu cầu nên được cố định sớm, trước khi vào giai đoạn thiết kế, bởi vì các vấn đề là do các yêu cầu kém có khuynh hướng gắn chặt vào trong thiết kế khó để cho việc sửa chữa sau này. Những người phát triển người dùng có một sự nhìn khác nhau từ những yêu cầu khi người phát triển xem xét yêu cầu từ quan điểm làm thế nào để thực hiện còn người dùng chỉ cảm nhận vấn đề là sử dụng nó như thế nào. Cách an toàn nhất để bảo đảm rằng nhu cầu của người dùng đã được đáp ứng những gì đã được đưa ra, ta nên làm hai tài liệu song song, những gì người dùng cần, và những gì một hệ thống sẽ phải làm để đáp ứng nhu cầu đó. Đây là các yêu cầu người dùng các đặc tả hệ thống theo thứ tự định sẵn. Vậy tại sao cần có các yêu cầu phần mềm tốt? Bất kỳ lỗi nào được phát hiện trong giai đoạn đầu trong quá trình phát triển dự án phần mềm là kết quả rất quan trọng. Nếu ở các giai đoạn sau lỗi mới được phát hiện ra thì chi phí cho việc sửa chữa hệ thống phần mềm sẽ tốn kém hơn rất nhiều. Nếu những người thiết kế hệ thống hướng tới mục tiêu không đúng, việc thực thi hệ thống sẽ đi chệch với mong muốn ban đầu. Một yêu cầu sai có thể tạo ra hàng loạt các lỗi thiết kế. Vì vậy để một sản phẩm phần mềm tốt thì điều đầu tiên quan trọng là chúng ta phải có các yêu cầu tốt. 1.2. Khái niệm về Test case Trong quá trình phát triển dự án phầm mềm, thông thường một quy trình kiểm thử có các bước cơ bản như sau: lập kế hoạch, thiết kế Test, phát triển test script, thực hiện test đánh giá (xem Hình 1) Hình 1: Một quy trình kiểm tra cơ bản. Lập kế hoạch Thiết kế Test Phát triển Test Script Đánh giá Thực hiện Test Trong đó Test case được viết trong bước thiết kế test. Mục đích của thiết kế test là viết chỉ định các Test case trong các bước kiểm tra chi tiết cho mỗi phiên bản phần mềm. Giai đoạn thiết kế test là hết sức quan trọng, nó bảo đảm tất cả các tình huống kiểm tra "quét" hết tất cả yêu cầu cần kiểm tra. Vì vậy công việc tạo ra các Test case hiệu quả là đặc biệt quan trọng để đảm bảo chất lượng phần mềm. Để làm được việc đó, trước hết phải hiểu Test case là gì? Một Test case có thể coi là một tình huống kiểm thử, được thiết kế để kiểm thử một đối tượng có thỏa mãn yêu cầu đặt ra hay không. Một Test case thường bao gồm 3 phần cơ bản: • Mô tả: đặc tả các điều kiện cần có để tiến hành kiểm thử. • Đầu vào: đặc tả đối tượng hay dữ liệu cần thiết, được sử dụng làm đầu vào để thực hiện việc kiểm thử. • Kết quả mong muốn: kết quả trả về từ đối tượng kiểm thử, chứng tỏ đối tượng đã thỏa mãn yêu cầu. Test case có một ý nghĩa vô cùng quan trọng, mục đích đưa ra các trường hợp test nhằm phát hiện ra các lỗi nhiều nhất có thể, để cho chất lượng các dự án phát triển phần mềm được tốt hơn. 1.3. Vấn đề sinh Test case từ yêu cầu phần mềm . Trong quá trình phát triển dự án phần mềm, thường công việc tạo ra các Test case từ yêu cầu người dùng do các Tester phụ trách. Nhưng không phải Tester nào viết các tài liệu Test case này cũng như nhau.Vì vậy trong các công ty phần mềm cũng như các tổ chức thực hiện dự án phần mềm sẽ phát sinh một vấn đề là: Tester nào viết tài liệu Test case tốt, có hiệu quả thì chất lượng phần mềm sẽ tốt hơn những dự án có các Tester viết Test case tồi (có nhiều trường hợp test trùng lặp nhau). Vậy chúng ta phải chuẩn hóa đồng bộ hóa để làm sao tạo ra Test case một cách hiệu quả có chuẩn về chất lượng. Để làm điều này, chúng ta phải nghiên cứu các phương pháp kỹ thuật để tự động tạo ra các Test case. Việc tạo ra Test case một cách tự động cũng làm giảm bớt công sức thời gian của các tester, giúp giảm bớt chi phí phát triển phần mềm. Qúa trình tạo ra các Test case sẽ giúp các tester phát hiện ra các vấn đề mâu thuẫn hoặc chưa rõ ràng của yêu cầu phần mềm. Nếu bước này được làm sớm, các vấn đề có thể được loại bỏ sớm, tiết kiệm thời gian nguồn lực. Vậy việc nghiên cứu các phương pháp công cụ sinh Test case một cách tự động từ yêu cầu người dùng rất hữu ích cần thiết trong quá trình phát triển các dự án phần mềm. Quá trình này nhằm mục đích tạo ra Test case một cách có hiệu quả, có chất lượng. Giúp giảm bớt công sức thời gian của các tester, làm giảm bớt chi phí phát triển phần mềm chất lượng phần mềm được nâng cao hơn. CHƯƠNG 2. TỔNG QUAN VỀ QUÁ TRÌNH SINH TEST CASE TỰ ĐỘNG 2.1. Giới thiệu Việc test phần mềm là một công việc rất quan trọng trong vòng đời phát triển của phần mềm. Để cắt giảm chi phí của việc test bằng tay tăng độ tin cậy của phần mềm thì chúng ta đang cố gắng thực hiện tự động hóa nó. Một trong những công việc quan trọng trong môi trường test là tạo ra Test case một cách tự động mô tả về cách thức test, mỗi một hệ thống phần mềm nhất định được thiết lập theo một cách thức độc lập. Chương này trình bày cách nhìn tổng quan về kỹ thuật tạo Test case một cách tự động. Các tổ chức phần mềm sử dụng một phần ngân sách đáng kể của mình để thực hiện các công việc liên quan đến test. Một hệ thống phần mềm test tốt sẽ được kiểm chứng bởi khách hàng trước khi chấp nhận, làm thỏa mãn yêu cầu của khách hàng. Tính hiệu quả của qúa trình xác nhận kiểm chứng này phụ thuộc vào số lượng lỗi được phát hiện chỉnh sửa trước khi công bố hệ thống. Điều này lần lượt phụ thuộc vào chất lượng của các Test case được tạo ra. Các phương pháp khác nhau về việc sinh ra Test case đã được đề xuất. Một Test case là một sự miêu tả cách thức test, mỗi một hệ thống phần mềm nhất định được thiết lập theo một cách thức độc lập. Test case có thể được viết ra trực tiếp từ yêu cầu người dùng, từ các yêu cầu hệ thống, hoặc từ các use case. Một trong những lợi thế của việc tạo ra Test case từ các đặc tả thiết kế đó là chúng có thể được sinh ra sớm hơn trong vòng đời phát triển sẵn sàng để sử dụng trước khi các chương trình được tạo ra. Thêm vào đó, khi các Test case được sinh ra ban đầu các kỹ sư phần mềm phát hiện ra sự không nhất quán mập mờ trong đặc tả các yêu cầu các tài liệu thiết kế. Điều này sẽ chắc chắn sẽ làm giảm chi phí của việc xây dựng hệ thống phần mềm khi các lỗi được loại bỏ sớm trong vòng đời phát triển của sản phẩm. 2.2. Tổng quan về các phương pháp sinh Test case Một vài cách tiếp cận được đưa ra trong việc tạo ra Test case, một số mang tính ngẫu nhiên, có mục đích, định hướng một số rất thông minh. Kỹ thuật ngẫu nhiên xác định các Test case dựa trên các giả định. Kỹ thuật định hướng đường dẫn sử dụng các luồng thông tin kiểm soát để xác định một tập hợp các đường dẫn để được bao quát tạo ra các Test case phù hợp cho các đường dẫn này. Những kỹ thuật này có thể được phân chia thành tĩnh động. Kỹ thuật tĩnh thường được dựa trên thực thi các hiệu mô tả, ngược lại các kỹ thuật động đạt được từ các dữ liệu cần thiết bằng việc chạy chương trình trong khi test. Kỹ thuật định hướng mục tiêu xác định các Test case bao gồm một mục tiêu đã được lựa chọn chẳng hạn một câu lệnh hoặc nhánh câu lệnh. Các kỹ thuật thông minh của các Test case được sinh ra tự động lệ thuộc vào các tính toán phức tạp để xác định Test case. Rất nhiều nghiên cứu về việc sinh ra các Test case tối ưu dựa trên các đặc tả, tuy nhiên không thể đạt 100% các Test case tối ưu. Ngôn ngữ mô hình được sử dụng để có được đặc tả sinh ra các Test case. Kể từ khi UML (Unified Modeling Language) là ngôn ngữ được sử dụng rộng rãi nhất thì nhiều nghiên cứu sử dụng lược đồ UML như state-chart diagrams, use-case diagrams, sequence diagrams,… để sinh ra các Test case dẫn đến việc sinh ra Test case dựa trên mô hình. 2.2.1. Sinh Test case dựa trên đặc tả Sinh Test case dựa trên đặc tả là phương pháp sinh Test case mà phỏng theo trạng thái được xác định trước dựa trên đặc tả để tạo ra Test case từ biều đồ trạng thái UML. Việc kiểm thử đủ các thuộc tính, các cặp chuyển tiếp chỉnh sửa các câu lệnh là các kỹ thuật được đưa ra trong Chương 3. Các kỹ thuật đã sử dụng các biểu đồ trạng thái UML như một cở sở tự động sinh ra các bộ phận điều khiển test test script để xác nhận các thành phần khi test. Cách tiếp cận trong một mẫu, chỉ ra các lớp đặc tả biểu đồ trạng thái tương ứng cho hành vi của lớp đó, định rõ ánh xạ đưa ra bằng sự kết hợp các mã với đặc tả. Sau đó tester chọn các tiêu chuẩn để chỉnh sửa. Tóm lại, các lỗi được phát hiện ra như sự không nhất quán giữa hành vi đặc tả biểu đồ trạng thái được đưa ra bởi người sử dụng. Mục tiêu là để xác định các đặc tả được cải tiến được dựa trên các tiêu chuẩn chỉnh sửa thích hợp cho hệ thống để phát triển các kỹ thuật cho việc tạo ra bộ điều khiển test với ít nhất thao tác của con người. 2.2.2. Sinh Test case dựa trên mô hình UML đã nhận được một sự quan tâm lớn từ các công đồng phát triển thiết kế phần mềm, các công việc đang được thực hiện để tăng cường mở rộng các tính năng của nó. Tuy nhiên, cộng đồng test phần mềm đã không quan tâm nhiều thảo luận nhiều về UML, sự thiếu hụt lớn khi tiêu chuẩn mô hình hóa được phát triển. Đây là vấn đề cần quan tâm, bởi vì trong các tổ chức phát triển phần mềm, chi phí của việc test có thể chiếm hơn 40% tổng chi phí phát triển cho một hệ thống phần mềm. Đưa ra các thực tế này để phát hiện ra khả năng sử dụng UML cho việc test phần mềm. Đa phần công việc test dựa trên mô hình của các hệ thống tập trung vào việc sử dụng của các biểu đồ trạng thái hoặc lớp.Các biểu đồ lớp chỉ một tập các lớp, các giao diện các sự cộng tác, các mối quan hệ của chúng. Các biểu đồ trạng thái biểu diễn dòng điều khiển từ trạng thái này đến trạng thái khác, nó nhấn mạnh dòng điều khiển từ hoạt động này đến hoạt động khác xảy ra bên trong một máy trạng thái. UML có một phương pháp mô hình trước đó được biết đến là kỹ thuật mô hình đối tượng (Object Modeling Technique) mà đã thêm một mô hình chức năng cũng được sử dụng cho quá trình test. [...]... dụng trong quá trình test Thứ hai, các mô hình từ quá trình phát triển thiếu đi các chi tiết tính năng đặc thù mà được yêu cầu để phát triển các Test case CHƯƠNG 3 CÁC KỸ THUẬT PHƯƠNG PHÁP SINH TEST CASE TỰ ĐỘNG 3.1 Giới thiệu Test phần mềm là công việc chạy một chương trình trên một bộ các Test case so sánh kết quả thực tế của với các kết quả mong muốn Test thiết kế test là các giai đoạn...2.2.3 Sinh Test case hướng đường dẫn Một khung chuẩn sử dụng chiến lược tìm kiếm nhị nguyên nổi tiếng trong việc sinh ra Test case hướng đường dẫn đã được đưa ra Toán tử được đề xuất có thể được phận loại như cách tiếp cận hướng tới đường dẫn Phương pháp này đã nêu vấn đề của các cách tiếp cận sinh ra Test case tự động đã cung cấp một giải pháp với thuật toán sinh ra Test case dựa trên phương thức... bước một các Test case sau đó được nghiên cứu để hoàn thiện chúng Phương thức tìm kiếm nhị nguyên được sử dụng đề xác định các Test case, đòi hỏi các giả định nhất định nhưng cho phép sinh ra Test case hiệu quả Các lợi thế của phương pháp này đó là nó không đòi hỏi bất cứ một một sự điều chỉnh tham số nào không cần bất cứ kỹ thuật tối ưu nào để tạo ra dữ liệu test 2.3 Kiểm thử phần mềm UML Có... file đặc tả SCR hoặc UML FullPredicate, gửi bảng chuyển tiếp trạng thái như một tham số FullPredicate sinh ra các Test case cho các tiêu chuẩn chỉnh sửa thuộc tính đầy đủ, lưu giữ các Test case trong các file, trả thông điệp mà Test case có thể được sinh ra Hình 13: OCD cho việc sinh ra các Test case chỉnh sửa đầy đủ các thuộc tính Hình 14: OCD cho việc sinh ra các Test case chỉnh sửa chuyển tiếp... tạo ra Test case là hoàn toàn có thể được tự động hóa 3.2.4 Các thuận toán sinh Test case dựa trên đặc tả Trong phần này, đầu tiên chúng ta mô tả cấu trúc của các giả định các file đặc tả SCR UML mà ta sẽ thực hiện trong thiết kế Sau đó chúng ta đưa ra thiết kế cấu trúc, cuối cùng là các thuật toán mà phân tích các file đặc tả sinh ra các Test case cho việc chỉnh sửa đầy đủ thuộc tính tiêu... các chuyển tiếp Kỹ thuật tạo ra dữ liệu kiểm thử chỉ cho các chuyển tiếp khả năng Hình 10: Qúa trình chung cho việc tạo ra các Test case từ đặc tả UML Nếu sử dụng các loại chuyển tiếp khác trong biểu đồ trạng thái, kỹ thuật không thể tạo các Test case cho chúng Chúng ta không thể có các Test case cho một vài cặp chuyển tiếp (4) Mức độ tuần tự hoàn chỉnh Mức độ tuần tự hoàn chỉnh: Kỹ sư kiểm thử phải... Các phương thức đặc tả trạng thái SCR Có một vài phương pháp để xác định các hệ thống trạng thái cơ bản Phương pháp này xác định các tiêu chuẩn test dựa trên đặc tả, đã phát triển một mô hình sinh Test case cho các đặc tả SCR Đặc tả Software Cost Reducation (SCR) xây dựng các bảng để xác định các yêu cầu hành vi cho các hệ thông phần mềm được gắn vào thời gian thực tế Một lợi ích của phương pháp. .. việc trợ giúp việc cung cấp một mẫu cái mà có thể tự động điều khiển Kỹ thuật sinh Test case dựa theo đặc tả SCR thiết lập các tiêu chuẩn giải quyết việc sinh ra các ca kiểm thử mức độ hệ thống từ các xác nhận/các yêu cầu chức năng Những tiêu chuẩn này cung cấp một quá trình chuẩn, một phương pháp để đo lường việc kiểm thử, một nền tảng cho việc tự động hóa hoàn toàn việc tạo ra các ca kiểm thử... chỉnh, không thể được tự động hóa hoàn toàn Nhưng một giao diện phù hợp có thể đưa ra đồ thị đặc tả, cho phép các tester chọn các trình tự của các trạng thái bằng cách chỉ nhấn vào màn hình Mỗi lần một trạng thái được chọn, việc chuyển tiếp từ trạng thái trước đó có thể được tự động dịch sang các giá trị được lưu giữ như một phần của Test case Điều này sẽ cho phép công việc của tester trở thành... 15: OCD cho việc sinh ra các Test case chỉnh sửa cặp chuyển tiếp 3.2.4.3 Các thuật toán Phần này đưa ra các thuật toán, các thuật toán được phát triển để phân tách các file text đặc tả SCR UML để tạo ra các Test case (1) Thuật toán phân tách đặc tả SCR Hình 16 đưa ra một thuật toán để phân tách các file text đặc tả SCR Thuật toán SCRSpecparser lấy một file đặc tả SCR như một đầu vào, sau đó phân . Chương 3: Trình bày các phương pháp và kỹ thuật sinh Test case tự động hiện có. Từ đó đề xuất một kỹ thuật sinh Test case tự động và phân tích ưu điểm của nó so với các kỹ thuật trước. • Chương. diagrams,… để sinh ra các Test case và dẫn đến việc sinh ra Test case dựa trên mô hình. 2.2.1. Sinh Test case dựa trên đặc tả Sinh Test case dựa trên đặc tả là phương pháp sinh Test case mà phỏng. 9 2.2.1. Sinh Test case dựa trên đặc tả 10 2.2.2. Sinh Test case dựa trên mô hình 10 2.2.3. Sinh Test case hướng đường dẫn 11 2.3. Kiểm thử phần mềm và UML 11 CHƯƠNG 3. CÁC KỸ THUẬT VÀ PHƯƠNG PHÁP SINH

Ngày đăng: 01/04/2014, 20:06

Từ khóa liên quan

Mục lục

  • CHƯƠNG 1. ĐẶT VẤN ĐỀ

    • 1.1. Tầm quan trọng của yêu cầu phần mềm

    • 1.2. Khái niệm về Test case

    • 1.3. Vấn đề sinh Test case từ yêu cầu phần mềm .

    • CHƯƠNG 2. TỔNG QUAN VỀ QUÁ TRÌNH

    • SINH TEST CASE TỰ ĐỘNG

      • 2.1. Giới thiệu

      • 2.2. Tổng quan về các phương pháp sinh Test case

        • 2.2.1. Sinh Test case dựa trên đặc tả

        • 2.2.2. Sinh Test case dựa trên mô hình

        • 2.2.3. Sinh Test case hướng đường dẫn

        • 2.3. Kiểm thử phần mềm và UML

        • CHƯƠNG 3. CÁC KỸ THUẬT VÀ PHƯƠNG PHÁP SINH

        • TEST CASE TỰ ĐỘNG

          • 3.1. Giới thiệu

          • 3.2. Kỹ thuật sinh Test case dựa trên đặc tả

            • 3.2.1. Các phương thức đặc tả trạng thái SCR

            • 3.2.2. Kỹ thuật sinh ra Test case dựa theo đặc tính của SCR

            • 3.2.3. Kỹ thuật tạo Test case cho đặc tả UML

            • 3.2.4. Các thuận toán sinh Test case dựa trên đặc tả.

            • 3.3. Kỹ thuật sinh Test case dựa trên mô hình

              • 3.3.1. Tạo ra Test case bằng việc sử dụng các biểu đồ cộng tác UML

              • 3.3.2. Tạo Test case dựa trên Use case cải tiến

              • CHƯƠNG 4. PHÁT TRIỂN CHƯƠNG TRÌNH ỨNG DỤNG

              • QUÁ TRÌNH SINH TEST CASE TỰ ĐỘNG

                • 4.1. Mục tiêu

                • 4.2. Tóm tắt quá trình sinh Test case tự động

                  • 4.2.1. Ví dụ

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

Tài liệu liên quan