Tôi đang tìm cách chạy thử nghiệm trên các tiện ích dòng lệnh được viết bằng bash hoặc bất kỳ ngôn ngữ nào khác.kiểm tra các tiện ích dòng lệnh
Tôi muốn tìm một khuôn khổ kiểm tra mà có thể có những câu như
setup:
command = 'do_awesome_thing'
filename = 'testfile'
args = ['--with', 'extra_win', '--file', filename]
run_command command args
test_output_was_correct
assert_output_was 'Creating awesome file "' + filename + '" with extra win.'
test_file_contains_extra_win
assert_file_contains filename 'extra win'
Có lẽ trường hợp kiểm tra cơ sở sẽ thiết lập một thư mục tạm trong đó để chạy các lệnh sau, và loại bỏ nó ở teardown.
Tôi muốn sử dụng một cái gì đó bằng Python, vì tôi quen thuộc hơn nhiều so với các ngôn ngữ ứng viên hợp lý khác.
Tôi tưởng tượng rằng có thể có điều gì đó sử dụng DSL để làm cho ngôn ngữ không thuyết phục có hiệu quả về ngôn ngữ (hoặc ngôn ngữ riêng của nó, tùy thuộc vào cách bạn nhìn vào nó); tuy nhiên điều này có thể ít hơn lý tưởng, vì các kỹ thuật thử nghiệm của tôi thường liên quan đến việc viết mã để tạo ra các thử nghiệm.
Đó là một chút khó khăn để google cho điều này, vì có rất nhiều thông tin về tiện ích chạy thử nghiệm, đó là loại trò chuyện của những gì tôi đang tìm kiếm.
Hỗ trợ cho doctests nhúng trong đầu ra của command --help
sẽ là một tiền thưởng thêm :)
Bạn có thể nhận được một số thông tin hữu ích từ một câu hỏi mà tôi đã hỏi về tập lệnh shell thử nghiệm đơn vị: http://stackoverflow.com/questions/971945/unit-testing-for-shell-scripts –
@gareth_bowles: cool, cảm ơn vì liên kết. Tôi có thể thử sử dụng shunit2 nếu nó tương thích với bash. – intuited