Tôi đang phát triển một chương trình làm cho một số tính toán điểm nổi. Có cách nào để kiểm tra các chức năng của tôi (cung cấp các phao) với doctests không?Làm thế nào để kiểm tra kết quả nổi với doctest?
Trả lời
Chắc chắn, chỉ cần định dạng nổi với một định dạng hợp lý, dựa trên kiến thức của bạn về những gì chính xác bạn mong đợi họ để triển lãm - ví dụ, nếu bạn mong đợi chính xác đến 2 chữ số sau dấu thập phân, bạn có thể sử dụng:
''' Rest of your docstring and then...
>>> '%.2f' % funcreturningfloat()
'123.45'
'''
The documentation có một gợi ý
số Floating-point cũng tùy thuộc vào sự thay đổi sản lượng nhỏ trên nền tảng, bởi vì Python trì hoãn đến thư viện nền tảng C choĐịnh dạng nổivà các thư viện C khác nhau về chất lượng ở đây là .
>>> 1./7 # risky
0.14285714285714285
>>> print 1./7 # safer
0.142857142857
>>> print round(1./7, 6) # much safer
0.142857
Định dạng chuỗi cho phép sử dụng bộ kiểm tra.
>>> funcreturningfloattuple(1.0)
(1.0, 1.0)
>>> '%.2f, %.2f' % funcreturningfloattuple(1.0)
'1.00, 1.00'
>>> funcreturningfloattuple(1.4)
(1.3999999999999999, 1.3999999999999999)
>>> '%.2f, %.2f' % funcreturningfloattuple(1.4)
'1.40, 1.40'
Các công trình sau đây cho nosetests:
>>> 1/3. # doctest: +ELLIPSIS
0.333...
Bạn có thể sử dụng numtest - một phần mở rộng doctest mà đơn giản hoá sự thử thách của kết quả số. https://pypi.python.org/pypi/numtest
>>> 1.0/3
0.333
dụ Không: 1.0/3 dự kiến: 0,333 Got: 0,3333333333333333
>>> 1.0/3 # doctest: +NUMBER
0.333
import doctest
import numtest
doctest.testmod()
Process xong với mã exit 0
Tất cả các thử nghiệm đã được chuyển. Không cần định dạng chuỗi trong các bài kiểm tra của bạn.
- 1. Làm cách nào để kiểm tra sự bình đẳng từ điển với gói doctest của Python?
- 2. xử lý kiểm tra ngoại lệ python doctest
- 3. Làm thế nào để kiểm tra kết quả của `node --prof` trên x64 MacOS X 10.7?
- 4. Làm thế nào để có được kết quả kiểm tra đơn vị kiểm tra trong Eclipse + Pydev?
- 5. VS2012 Thực hiện kết quả kiểm tra xuất hiện trong cửa sổ Kết quả kiểm tra
- 6. Làm thế nào để Get-ChildItem được kiểm tra không có kết quả (0 tệp)?
- 7. Làm thế nào để kiểm tra vô hướng với android?
- 8. Làm thế nào để bạn sử dụng telnet để kiểm tra kết nối với Oracle?
- 9. Làm thế nào để kiểm tra kết nối FTP?
- 10. Làm thế nào để kiểm tra Kết nối/Express middleware?
- 11. NUnit, TestDriven.Net: Kết quả kiểm tra trùng lặp với các lớp kiểm tra từng phần
- 12. Làm cách nào để kiểm tra kết quả Json của tôi trong trang web ASP.NET MVC3?
- 13. Làm thế nào để kiểm tra phương pháp void với các công cụ kiểm tra Junit?
- 14. Làm thế nào để kiểm tra phụ thuộc của phao nổi
- 15. Làm cách nào để bạn thực hiện kiểm tra đơn vị khi kết quả thay đổi?
- 16. Cách kiểm tra ngoại lệ với doctest bằng Python 2.x và 3.x?
- 17. Làm thế nào để kiểm tra Mongoid :: Observer với rspec
- 18. Làm thế nào để kiểm tra XMLHttpRequest với Jasmine
- 19. làm thế nào để có được Hudson CI để bao gồm kết quả kiểm tra trong email trạng thái
- 20. Làm thế nào để kiểm tra Menu
- 21. Làm thế nào để kiểm tra 404 NOT FOUND với khung kiểm tra django?
- 22. Git kiểm tra xem có cam kết nổi bật nào để đẩy
- 23. Làm thế nào để kiểm tra ThinkingSphinx sử dụng RSpec
- 24. TFS lưu trữ kết quả kiểm tra UNIT ở đâu?
- 25. Làm thế nào để kiểm tra các bản in?
- 26. Làm thế nào để xác định vị trí cho kết quả kiểm tra đơn vị trong VS 2010?
- 27. kiểm tra kết quả là một playframework ok
- 28. Kiểm tra xem con trỏ có kết quả
- 29. Làm cách nào để kiểm tra kết nối svn?
- 30. Rspec: Làm thế nào để kiểm tra đệ quy?