Doctest bằng Python

Ảnh của Hitesh Choudhary trên Unsplash

Giới thiệu

Doctest là một phương pháp kiểm tra đơn giản nhưng hữu ích cho các chương trình Python. So với bài kiểm tra đơn vị , doctest không yêu cầu tập lệnh độc lập để viết các trường hợp kiểm thử. Các trường hợp kiểm thử chỉ có thể được viết bằng thông tin doc (nội dung trong ba dấu nháy đơn / kép) của một hàm Python. Sau đó, những trường hợp này có thể kiểm tra chức năng bằng cách sử dụng doctestmô-đun.

Các doctesttìm kiếm mô-đun cho đoạn văn bản mà trông giống như phiên Python tương tác, và sau đó thực hiện những phiên để xác minh rằng họ làm việc chính xác như được hiển thị. ( tài liệu python )

Một ví dụ đơn giản

Hãy sử dụng doctest cho một abs()chức năng sai :

Kết quả như sau:

Một ví dụ đơn giản về học thuyết

Như ví dụ trên cho thấy, doctest thực sự là một cách thuận tiện và đơn giản để kiểm tra chức năng.

Tóm lại, chỉ có 3 bước:

  • nhập doctestmô-đun
  • viết các trường hợp thử nghiệm trong ba dấu nháy đơn / kép bằng cách sử dụng
  • sử dụng doctest.testmod()để chạy học thuyết

Nếu tất cả các trường hợp kiểm tra được thông qua, doctestsẽ không in gì.

Các mẹo khác của Doctest

1. Để in thêm thông tin

Trong doctest.testmod, có một tham số quan trọng được gọi là verbose.

Nó được đặt thành Falsemặc định, có nghĩa là khi chạy thử nghiệm, chỉ những trường hợp không thành công mới xuất ra thông tin chi tiết. Nếu bạn muốn nhận đầy đủ thông tin của mọi trường hợp, chỉ cần đặt nó thành True.

if __name__ == '__main__':
    doctest.testmod(verbose=True)

Trên thực tế, chúng tôi không phải viết if __name__ == '__main__':khối. Chúng tôi có thể chạy học thuyết trực tiếp trong thiết bị đầu cuối:

$ python -m doctest wrong_abs.py

$ python -m doctest -v wrong_abs.py

Đôi khi, nó có thể hơi lộn xộn nếu chúng ta đặt cả nhận xét và trường hợp kiểm tra bên dưới hàm. Đừng lo lắng, chúng tôi có thể đặt tất cả các trường hợp thử nghiệm vào một tệp độc lập và vẫn chạy học thuyết một cách hoàn hảo.

Ví dụ: hãy tạo một tệp có tên test_cases.txtvà đặt các trường hợp kiểm tra “kiểu tài liệu” vào đó:

Một tệp để lưu các trường hợp thử nghiệm

Sau đó chạy học thuyết bằng lệnh này:

python -m doctest test_cases.txt

Phần kết luận

Doctest là một phương pháp kiểm tra dễ sử dụng cho các chương trình Python. Sử dụng tốt kỹ thuật này có thể giúp bạn nhận được mã không có lỗi.

Cảm ơn vì đã đọc.

Bài viết liên quan:

Sáu kỹ thuật gỡ lỗi cho lập trình viên Python

Các hướng dẫn Python khác:

Hướng dẫn Python cuối cùng (Tiếp tục cập nhật)

Suggested posts

Tìm kiếm thông tin về tên miền

Đoạn trích từ Small, Sharp Software Tools của Brian P. Hogan

Tìm kiếm thông tin về tên miền

Khi bạn gửi yêu cầu tới facebook.com, máy tính của bạn sẽ tra cứu tên miền để dịch tên miền đó thành địa chỉ IP để máy tính của bạn có thể thực hiện kết nối đó.

Cách chạy plugin ChatGPT miễn phí bằng Langchain

Cách chạy plugin ChatGPT miễn phí bằng Langchain

Chắc hẳn bạn đã nghe về tất cả các plugin ChatGPT mạnh mẽ mới như Trình duyệt, Trình thông dịch mã, v.v. Nhưng có một vấn đề là quyền truy cập vào các plugin bị giới hạn trong danh sách chờ và do đó nhiều người không có quyền truy cập.

Related posts

Màn Đơn Ca Của Cô Gái Tóc Đỏ

Theo sự phân công của Hayden, Katie tự quay phim thủ dâm.

Màn Đơn Ca Của Cô Gái Tóc Đỏ

Sau nửa đêm, Hayden lái xe chở Katie trở lại ký túc xá đại học của cô ấy sau buổi tối bên nhau. Cô có một lớp học sớm vào buổi sáng và không có quần áo để thay sau khi ở lại với anh ta đêm hôm trước.

Mạng truyền hình Twitter

Mạng truyền hình Twitter

Cái cũ giờ lại mới và cái từng lấp lánh sáng bóng giờ trở nên buồn tẻ. Tôi không nói về việc quần jean JNCO đang trở lại trong giới trẻ sành điệu ở trung tâm thành phố cùng với các mốt cuối thập niên 1990 khác.

Tại sao một số dịch giả tự do đang giả mạo cuộc sống của họ

Tại sao một số dịch giả tự do đang giả mạo cuộc sống của họ

Gần đây, tôi đã truy cập Linkedin, mạng xã hội chuyên nghiệp lớn nhất thế giới và tìm thấy các bài đăng của các nhà thiết kế tự do mà tôi theo dõi, những người đã thu hút sự chú ý của tôi. Tất cả họ đều đăng ảnh chụp từ máy bay, trên bãi biển với máy tính xách tay của họ, từ bể bơi và văn phòng với những khung cảnh tuyệt vời.

Cuộc cách mạng tại nơi làm việc: Các chuyên gia hàng đầu thảo luận về công việc kết hợp và từ xa

Cuộc cách mạng tại nơi làm việc: Các chuyên gia hàng đầu thảo luận về công việc kết hợp và từ xa

Trong bối cảnh kinh doanh phát triển nhanh chóng ngày nay, khái niệm làm việc kết hợp và làm việc từ xa đã đạt được động lực chưa từng có. Khi các công ty tiếp tục thích ứng với nhu cầu và kỳ vọng thay đổi của nhân viên, các chuyên gia từ nhiều lĩnh vực khác nhau đã cùng nhau thảo luận về lợi ích, thách thức và tương lai của cách làm việc mang tính biến đổi này.