スポンサーサイト

  --, -- --:--
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

精神レ○プ!IT土方と化した先輩 Part5

  29, 2017 22:07
Selenium C#でテスト自動実行、しよう!(提案)
ライブラリとかの導入はこ↑こ↓などを参考にさせてもらった模様

ただ単純にテスト自動化するなら他の言語とかSeleniumIDEとかでいいじゃんアゼルバイジャン
と思ったので、C#という言語を活かしてちょっと便利そうなものを作ってみたゾ
今回は、単体テスト等で有りがちな
テスト実行→Excelにエビデンス貼り付け
を自動化するツールを作ってみたゾ

Excelファイル作成のライブラリはClosedXMLを使用
NugetのClosedXMLじゃなくて、フォークして開発してくれた外人ニキのものを使った
導入方法はこ↑こ↓を参考にさせてもらった模様

Excel作成クラス


キャプチャ撮影クラス


ウィンドウ操作クラス(アラートキャプチャ用)


対応ブラウザはChromeとIE
基本的にはキャプチャ撮りたいタイミングで

とか書いてやれば撮影~Excel貼り付け保存まで自動でやってくれるようにした
ちなExcelファイルは、ファイルが存在しない場合は新規作成で、存在する場合はシート追加して上書き保存するようにした

・実行サンプル

・実行結果
ファイル
result_hoge.png
検索前
result_ex1.png
検索後
result_ex2.png

JavaScriptのアラート撮りたいときはアラート表示してる状態で

とか書けばアラートは撮れる

・アラート実行サンプル


・実行結果
result_ex3.png

非アラート状態であれば、Seleniumの機能でキャプチャ撮れるんだが、アラート出てると例外吐くんだよなぁ
Win32のAPI使って、ブラウザのウィンドウをアクティブにしたうえで、Alt+PrintScreen押させて解決しました(半ギレ)
なお、アラートが連続で出るものにはちゃんと対応していない模様
アラートが連続で2回以上出るものだと、挙動が不安定になってキャプチャできてなかったりするときがあるんだよなぁ
スポンサーサイト

- 0 Comments

Post a comment

What's New

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。