概要
ブラウザ操作を記録・再生することができるChromeプラグイン「Selenium IDE」で日付を自動入力する方法についてまとめました。
結論
変数に値を保存
- 「Command」で「execute script」を選択
- 「Target」で「return new Date().toLocaleDateString()」を入力する
- 「Value」に変数名を入力する
変数の利用
- 「Command」で「type」を選択
- 「Target」で要素のセレクタなどを入力する
- 「Value」に${変数名}を入力する
サンプル
以下の内容の場合、id=”date”の要素にyyyy/m/d形式で現在の日付が自動入力される。
Command | Target | Value |
---|---|---|
execute script | return new Date().toLocaleDateString() | today |
type | id=date | ${today} |
「/」区切りではなく「-」区切りにしたい場合
変数に値を保存する際に、「Target」に「return new Date().toLocaleDateString().replace(/\//g, ‘-‘)」を入力する。
※ .replace(/\//g, '-')
を追加する
サンプル
Command | Target | Value |
---|---|---|
execute script | return new Date().toLocaleDateString().replace(/\//g, ‘-‘) | today |
type | id=date | ${today} |
月と日を0埋めしたい場合
yyyy/m/d形式ではなくyyyy/mm/dd形式にしたい場合、toLocaleDateStringの引数を指定する必要がある。
- 第1引数: “ja-JP”
- 第2引数: {year: “numeric”,month: “2-digit”, day: “2-digit”})
サンプル
Command | Target | Value |
---|---|---|
execute script | return new Date().toLocaleDateString(“ja-JP”, {year: “numeric”,month: “2-digit”, day: “2-digit”}) | today |
type | id=date | ${today} |
現在日ではなく任意の日付を自動入力したい場合
変数に値を保存する際に、「Target」のnew Data()の引数で年・月・日を指定する。
例えば「翌月の1日」の場合、以下のようになる。
new Date(new Date().getFullYear(), new Date().getMonth() + 1, 1)
サンプル
Command | Target | Value |
---|---|---|
execute script | return new Date(new Date().getFullYear(), new Date().getMonth() + 1, 1).toLocaleDateString() | firstDay |
type | id=date | ${firstDay} |