我正在尋找一種方法來對使用bash或任何其他語言編寫的命令行實用程序運行測試。測試命令行實用程序
我想找到一個測試框架,將有像
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'
語句想必基地測試用例將建立在其上運行這些命令的一個臨時目錄,並在拆卸取下。
我寧願在Python中使用某些東西,因爲我比其他似是而非的候選語言更熟悉它。
我想可能有些東西會使用DSL來使其有效地與語言無關(或者它自己的語言,這取決於你如何看待它)。但是這可能不太理想,因爲我的測試技術通常涉及編寫生成測試的代碼。
這對谷歌有點困難,因爲有很多關於運行測試的實用程序的信息,這與我正在尋找的東西相反。
支持嵌入的command --help
輸出文檔測試將是一個額外的獎勵:)
您可能會從我詢問有關單元測試shell腳本的問題中獲得一些有用的信息:http://stackoverflow.com/questions/971945/unit-testing-for-shell-scripts – 2010-06-21 22:28:35
@gareth_bowles:很酷,感謝鏈接。如果兼容bash,我可以嘗試使用shunit2。 – intuited 2010-06-21 23:29:01