1. Trang chủ
  2. » Luận Văn - Báo Cáo

Báo cáo thực nghiệm kiểm thử phần mềm Haui

34 71 0

Đ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

Thông tin cơ bản

Tiêu đề Báo cáo thực nghiệm kiểm thử phần mềm Haui
Trường học Trường Đại Học Công Nghiệp Hà Nội
Chuyên ngành Kỹ thuật phần mềm
Thể loại Báo cáo thực nghiệm
Năm xuất bản 2022
Thành phố Hà Nội
Định dạng
Số trang 34
Dung lượng 654,98 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Cấu trúc

  • Chương 1: Mở đầu (4)
    • 1.1 Lý do chọn đề tài (4)
    • 1.2 Mục tiêu nghiên cứu (4)
    • 1.3 Đối tượng và phạm vi nghiên cứu (4)
      • 1.3.1 Đối tượng kiểm thử (4)
      • 1.3.2 Phạm vi nghiên cứu (5)
      • 1.3.3 Các hoạt động trong chiến lược kiểm thử và các kĩ thuật kiểm thử phần mềm thông dụng (5)
  • Chương 2: Nội dung nghiên cứu (12)
    • 2.1 Kiểm thử phần mềm và vai trò của kiểm thử phần mềm (12)
      • 2.1.1 Kiểm thử phần mềm là gì? (12)
      • 2.1.2 Vai trò của kiểm thử phần mềm (12)
    • 2.2 Giới thiệu về kĩ thuật kiểm thử hộp trắng (13)
      • 2.2.1 Kiểm thử hộp trắng là gì? (13)
      • 2.2.2 Đối tượng áp dụng (13)
      • 2.2.3 Mức độ áp dụng (13)
      • 2.2.4 Ưu và nhược điểm của kĩ thuật kiểm thử hộp trắng (13)
      • 2.2.5 Các phương pháp kiểm thử hộp trắng phổ biến (14)
    • 2.3 Xác định ca kiểm thử và dữ liệu kiểm thử trong kiểm thử website quản lý học sinh THCS (19)
      • 2.3.1 Chức năng xóa lớp học (19)
      • 2.3.2 Chức năng đăng nhập (24)
  • Chương 3: Kết luận và bài học kinh nghiệm (32)
    • 3.1. Những vấn đề đã đạt được (32)
    • 3.2. Hướng phát triển (33)

Nội dung

thực tế cho thấy, kiểm thử phần mềm là giai đoạn chiếm đến hơn 40% thời gian, kinh phí và nhân lực trong quá trình phát triển dự án phần mềm. Vậy làm thế nào để có thể kiểm tra dự án phần mềm của ta đang chạy ổn định, đạt được tính hiệu quả cao, nhưng lại tiết kiệm được thời gian cũng như kinh phí trong quá trình kiểm thử là một điều thiết yếu đối với các nhà kiểm thử.

Nội dung nghiên cứu

Kiểm thử phần mềm và vai trò của kiểm thử phần mềm

2.1.1 Kiểm thử phần mềm là gì?

Kiểm thử phần mềm là quy trình xác định xem sản phẩm phần mềm có đáp ứng các yêu cầu đã đề ra hay không, đồng thời đảm bảo rằng không tồn tại lỗi hay khiếm khuyết Quy trình này bao gồm việc kiểm tra, phân tích, quan sát và đánh giá các khía cạnh khác nhau của sản phẩm.

Người kiểm thử phần mềm (Tester) kết hợp sử dụng cả công cụ thủ công và tự động để thực hiện kiểm thử Sau khi hoàn thành quá trình kiểm thử, Tester sẽ báo cáo kết quả cho đội phát triển Mục tiêu chính là phát hiện các lỗi, khiếm khuyết hoặc các yêu cầu chưa được đáp ứng so với yêu cầu thực tế.

2.1.2 Vai trò của kiểm thử phần mềm

Kiểm thử phần mềm là quá trình đảm bảo rằng sản phẩm phần mềm đáp ứng đầy đủ và chính xác các yêu cầu của khách hàng cũng như các tiêu chí đã được đặt ra cho sản phẩm.

Kiểm thử phần mềm mang lại cái nhìn độc lập và mục tiêu rõ ràng về sản phẩm, giúp đánh giá và nhận diện các rủi ro tiềm ẩn trong quá trình thực thi phần mềm.

Kiểm thử phần mềm giúp bạn phát huy tư duy đánh giá và sáng tạo, từ đó phát hiện những điểm mạnh mà người khác có thể bỏ lỡ.

Giới thiệu về kĩ thuật kiểm thử hộp trắng

2.2.1 Kiểm thử hộp trắng là gì?

Kiểm thử hộp trắng là phương pháp kiểm thử phần mềm mà trong đó người kiểm tra có hiểu biết về cấu trúc và thiết kế nội bộ của mã Người kiểm tra lựa chọn đầu vào để thực hiện các đường dẫn trong mã và xác định đầu ra phù hợp Để thực hiện kiểm thử hộp trắng hiệu quả, kiến thức lập trình và hiểu biết về cách thức hoạt động của mã là rất quan trọng.

Kiểm thử hộp trắng là quá trình phân tích dòng dữ liệu, điều khiển dòng, dòng thông tin, mã thực hành, ngoại lệ và các lỗi trình bày trong hệ thống nhằm kiểm tra các hành động của phần mềm không được định hướng trước.

2.2.2 Đối tượng áp dụng Đối tượng được kiểm thử là 1 thành phần phần mềm (TPPM).TPPM có thể là 1 hàm chức năng, 1 module chức năng, 1 phân hệ chức năng…

Kỹ thuật kiểm thử Hộp trắng áp dụng cho các mức độ kiểm thử phần mềm sau đây:

 Unit Testing(Kiểm thử đơn vị): Để kiểm tra đường dẫn trong một đơn vị.

 Integration Testing(Kiểm thử tích hợp): Để kiểm tra đường dẫn giữa các đơn vị.

 System Testing(Kiểm thử hệ thống): Để kiểm tra các đường dẫn giữa các hệ thống con.

Tuy nhiên, nó là chủ yếu áp dụng cho các kiểm thử đơn vị

2.2.4 Ưu và nhược điểm của kĩ thuật kiểm thử hộp trắng Ưu điểm Nhược điểm

Khi tester nắm vững kiến thức về mã nguồn và ngôn ngữ lập trình, việc xác định loại dữ liệu phù hợp để kiểm thử phần mềm trở nên dễ dàng và hiệu quả hơn.

Do thực tế, tester có tay nghề cao là cần thiết để thực hiện kiểm thử hộp trắng, chi phí được tăng lên.

Tối ưu hóa mã nguồn trong hệ thống là rất quan trọng, nhưng việc kiểm tra từng dòng mã để phát hiện lỗi tiềm ẩn có thể gặp khó khăn do sự phức tạp và nhiều luồng không được kiểm tra.

Các dòng lệnh không cần thiết hoặc những dòng lệnh có khả năng gây ra các lỗi tiềm ẩn có thể được gỡ bỏ.

Rất khó để duy trì kiểm thử hộp trắng, vì nó đòi hỏi các công cụ chuyên biệt như phân tích source code và công cụ sửa lỗi.

Tester có kiến thức về ngôn ngữ lập trình sẽ dễ dàng để đạt được độ bao phủ cao nhất trong quá trình viết kịch bản kiểm thử.

2.2.5 Các phương pháp kiểm thử hộp trắng phổ biến

Kiểm thử đường cơ bản - Đồ thị dòng

Kỹ thuật đồ thị dòng, được giới thiệu bởi Tom McCabe, là một phương pháp trong kiểm thử hộp trắng Đồ thị này tương tự như đồ thị luồng điều khiển của chương trình.

Phương pháp miêu tả thuật giải là một trong những cách trực quan giúp chúng ta dễ dàng nhận diện các thành phần của thuật giải và mối quan hệ giữa chúng.

 hệ trong việc thực hiện các thành phần này.

 Kỹ thuật đường cơ bản - đồ thị dòng có thể giúp những người thiết kế ca kiểm thử nhận được một độ phức tạp của 1 logic thủ tục.

 Gồm 2 loại thành phần : các nút và các cung nối kết giữa chúng.

 Các loại nút trong đồ thị dòng điều khiển :

Các kiểu cấu trúc thành phần đồ thị dòng :

Nếu đồ thị dòng điều khiển chỉ có các nút quyết định nhị phân, nó được gọi là đồ thị dòng điều khiển nhị phân Mọi đồ thị dòng điều khiển đều có thể được chi tiết hóa thành đồ thị dòng điều khiển nhị phân.

Độ phức tạp Cyclomatic C, ký hiệu là V(G), của đồ thị dòng điều khiển được tính bằng các công thức: V(G) = E - N + 2, trong đó E là số cung và N là số nút của đồ thị Đối với đồ thị dòng điều khiển nhị phân, công thức là V(G) = P + 1, với P là số nút quyết định Cyclomatic C thể hiện số đường thi hành tuyến tính độc lập của TPPM cần được kiểm thử.

Kiểm thử dựa trên luồng điều khiển

Đường thi hành (Execution path) là kịch bản thực thi của một đơn vị phần mềm, bao gồm danh sách có thứ tự các lệnh được thực hiện tương ứng.

1 lần chạy cụ thể của đơn vị phần mềm, bắt đầu từ điểm nhập của đơn vị phần mềm đến điểm kết thúc của đơn vị phần mềm.

 Mỗi TPPM có từ 1 đến n (có thể rất lớn) đường thi hành khác nhau.

Mục tiêu của phương pháp kiểm thử luồng điều khiển là đảm bảo mọi đường thi hành của đơn vị phần mềm đều hoạt động chính xác Tuy nhiên, thực tế cho thấy rằng công sức và thời gian cần thiết để đạt được mục tiêu này là rất lớn, ngay cả đối với những đơn vị phần mềm nhỏ.

 Thí dụ ₫oạn code sau : for (i=1; inum_rows > 0){ setcookie('checkadmin',true,time()+3600);

$_SESSION['passad'] = $_POST['pass']; header("location: /".$trang.""); die();

} Đồ thị dòng điều khiển:

Kết thúc setcookie('checkadmin',true,time()+3600);

$_POST['pass']; header("location: /".$trang.""); S

Lấy $user và $pass từ csdl

2 Độ phức tạp: V(G) = E - N + 2 = 6 – 6 + 2 = 2 Đường thi hành:

Node logic Biểu thức logic True False

- Lưu đồ thuật toán: if(isset($_POST['user']) && isset($_POST['pass']) && isset($_POST['submit']) require_once "sql.php";

$pass = $_POST['pass']; checkdata($Sql,$user,$pass,'admin.php',$loi); if(isset($_POST['user']) && isset($_POST['pass']) && isset($_POST['submit'])

If($_COOKIE[' checkadmin') header("location: / admin.php");

$loi = false; if(isset($_POST['user']) && isset($_POST['pass']) && isset($_POST['submit'])){ require_once "sql.php";

$pass = $_POST['pass']; checkdata($Sql,$user,$pass,'admin.php',$loi);

} if(isset($_COOKIE['checkadmin'])){ if($_COOKIE['checkadmin']){ header("location: /admin.php");

?> Đồ thị dòng điều khiển:

4 Độ phức tạp: V(G) = E - N + 2 = 9 – 9 + 2 = 2 Đường thi hành:

$loi = false, header("location: /admin.php")

Node logic Biểu thức logic True false

4 If(isset($_POST['user']) && isset($_POST['pass']) && isset($_POST['submit']))

7 If($_COOKIE['checkadmin']) TC2 TC1

Node logic Biểu thức logic con true false

4a isset($_POST['user']) TC2 TC1

4b isset($_POST['pass']) TC2 TC1

4c isset($_POST['submit']) TC2 TC1

Ngày đăng: 30/05/2023, 22:20

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w