Test::mysqldというモジュールがあって、MySQLを使うテストを簡単に書けるので好評なわけですが、今回これに copy_data_from って、既存のデータディレクトリをコピーして mysqld を起動するオプションを足しました。
このオプションを使うことで、以下のように MySQL データベースからコピーしたデータを使うテストを書くことができるようになっています。
use Test::mysqld; my $mysqld = Test::mysqld->new({ my_cnf => { 'skip-networking' => '', }, copy_data_from => 't/mysql.data', # mysqld の data ディレクトリをコピーしたやつ }) or die $Test::mysqld::errstr; my $dbh = DBI->connect($mysqld->dsn(dbname => 'myapp')) or die $DBD::errstr; ... # 以下テストコード
説明あきたのであとは perldoc 読んでください。
PlanetMySQL Voting: Vote UP / Vote DOWN