テスト用のダミーデータを一括で作成したい
プログラムの開発中にテスト用のダミーデータが大量にほしくなることがあります。そんな時に一括でばっと作成してくれるツールがあれば便利でいろいろと探してみました。
こちらが見つかったのですが、名前や住所やらも日本のものでないので若干不便です。
なので自分で作りました。
テストデータ生成ツール
使い方は簡単です。作成するデータの列名とそのデータ形式を任意の列数分追加していき、出力行数とフォーマットを指定してボタンを押すだけです。
するとランダムでデータが生成されるのでコピペするなりDLするなりご自由にどうぞ。以下簡単な説明です。
氏名やフリガナ、生年月日、年齢などのランダムデータを一括で生成します。フォーマットをCSV,TSV,JSONから選択できるようにしています。
任意の数だけデータを一括で生成するので便利です。10列分のデータを1万行生成するのがだいたい5秒弱の処理時間です。これを10万行にすると30秒近くかかります。
もう少し調整すれば早くなりそうですが面倒なので許容範囲としてます。
そのままファイルとしてダウンロードできれば便利だと思ったので、ダウンロード機能も作成してみました。が、IE,Edgeでの動作がやや不安定のままです …
生成されるデータについて
姓については苗字ランク上位5000位くらいからランダムで選ばれます。名についてはネットで適当に拾った名前男女それぞれ2000くらいからランダムです。年齢/生年月日は0歳~70歳の範囲で中央(35歳)に偏る形でランダムに生成されます。
DateおよびDateTimeは1970/1/1以降からランダムで生成され、電話番号は090,080から始まる11桁ハイフン区切りの文字列からなります。
郵便番号については[000-0000]のフォーマットに合わせて出力されるだけで、有効なものとは限りません。
メールアドレスとURLについて、ドメイン部分は[test sample example] と [.com .net .org .jp .co.jp ]の組み合わせからランダムで生成されます。
そのほかについては、程よくランダムに出力されるはずです。
うまくいったところ
思いつきで作り始めましたが、それなりに動いているのがよかったです。
うまくいかなかったところ
ファイルダウンロードの機能は、File APIのBlobを使用して作成しています。IE10以降のモダンなブラウザだと問題なくダウンロードできるはずです。
が、IE・Edgeでダウンロードを行った際、DateTimeの時刻部分に余計な半角スペースが出力されてしまいます。原因不明 …
ブラウザ上に表示されているデータは当然ですが各ブラウザ同じで正しいので、最悪コピペで保存なりして頂ければと思います。
また都道府県以下の住所について、サーバ側で住所データを持つなりすればできるのですが、今回はjavascriptのみでの実装なので用意しませんでした。
追い追い機能追加していく予定です。
まとめ
このツールを使えば、簡単に大量のダミーデータを作成できます。テスト用や適当な人物データを考える際にご利用ください。
バグの報告や機能追加の要望等あればできる範囲で対応します。
コメントを書く