- pythonをインストール(3.7で確認)
- 以下のコマンドでライブラリのインストールを行う
pip install numpy
pip install selenium
pip install pandas
pip install openpyxl
pip install xlrd
*OSはwindows10似て確認
- ブラウザのインストール
- Chrome を使用するためFireFoxがインストールされていなければインストールすること。
- ほかのブラウザでもdriverの指定を変えれば動くと思われるが未検証・・・
- Chrome を使用するためFireFoxがインストールされていなければインストールすること。
- webdriverの配置
data/予約データ.xlsx
に各入力内容に応じて値を入れる。- 日付についてはランダムで入るように指定しているので固定したい場合は修正すること。
seleniumTestSite1
を実行する。- 終了するのを待つ。
screenShot/reserve
に結果は出力される。
data/予約データ2.xlsx
に各入力内容に応じて値を入れる。seleniumTestSite2
を実行する。- 終了するのを待つ。
screenShot/reserve
に結果は出力される。 output/resultFiles
に確認画面の内容が出力される。test_seleniumTestSite2.py
にてユニットテストも実装
- 以前公開したクラスを継承して使用している。
- アラートダイアログに関しては基底クラスに定義していませんが定義するかも・・・
- エクセルなどでまとめてデータがある場合一気に自動入力できるような処理のサンプルとして作成。
- 実際にはこの機能を応用して勤務表の入力やとあるシステムの業務支援として使っている。
- logの設定など見よう見まねでやっているのでベストプラクティスではないかもしれない
- テストサイトに公開されているもう一つのほうについての操作できるように対応
- seleniumの画面操作スクリプトなどを作る際にスクリプト自体のテストを行えるようにテストファイルと結果を配置
- 自動スクリプトなので画像での比較がベストであるが実行する環境によって変わってしまう可能性などを考えて画面の内容を取得して比較するように実施
- 本来であればDBに登録されたものなどからとるべきだが今回のテスト対象は記録処理がないので直接ラベルを取得する形で実施