setup
実行する必要のある、またはteardown
すべてのテストで同じであり、テストの実行中に結果が混乱しない、潜在的にコストのかかる操作があると想定します。すべてのテストの前後にそれらを実行することは私には正しくないようです。
では、最初のテストが実行される前と最後のテストが実行された後にのみ、セットアップ/ティアダウンコードを実行するための好ましい方法はありますか?
編集:私が取り組んでいる特定のケースでは、Net :: FTPのいくつかの拡張機能をテストして、FTP接続を確立し、テスト用にいくつかのリモートオブジェクトを設定する必要があります。
class TestFTPExtensions < Test::Unit::TestCase
def setup
# Setup connection
@ftp = Net::FTP.new 'localhost', 'anonymous'
@ftp.passive = true
# Create remote test directory
@ftp.mkdir 'dir'
# Create remote test file
path = File.join Dir.tmpdir, 'file'
File.open path, 'w' do |f|
@ftp.put f
end
File.delete path
end
def teardown
@ftp.rmdir 'dir'
@ftp.delete 'file'
@ftp.close
end
# imagine some tests here that don't change/remove any remote objects
end