Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
194
Help us understand the problem. What is going on with this article?
@kawasima

SIerを退職する前に身につけておきたいスクショの撮り方

More than 5 years have passed since last update.

kawasimaです。SIerです :whale2:

少々前にこういう話が盛り上がっていたようですが、イマドキSIerがどうやってExcelスクショを撮っているか世間的に認知されていないようなので、お話しておこうと思います。

スクショの撮り方

世間ではいろいろツール化されているようですが、テストのためのスクショなので、スクショメインのツールでは本末転倒です。そこで、Seleniumと統合したテスト用ブラウザを開発しています。

セットアップ

jarファイルをダウンロードし実行します。 WindowsならばjarファイルをExplorerからダブルクリックするだけです。
https://github.com/kawasima/teslogger/releases

使うブラウザに応じてドライバのインストールが必要です。

使い方

無事起動すると、以下のようなスプラッシュ画面が立ち上がります。

splash

テストしたいブラウザを選択してください。
そうすると、ブラウザとカメラアイコンのついたミニウィンドウが表示されます。

適当に遷移して、カメラボタンを押すと

jarファイルの位置にscreenshotsというディレクトリが作られ、その下にキャプチャ画像が撮られていきます。

「Test Case Id」の欄にテストケースのIDを入力しておけば、screenshotsのディレクトリ下にケースIDのディレクトリが作られます。

※ ウィンドウ下の「OK」「NG」ボタンは、将来的に使う予定のもので、現在(v0.1.0)は押しても何も動作しません。

自動テストで使う

ここまでは手動のテストでの使い方ですが、Seleniumで作っているので当然、自動テストもシームレスにできます。

以下のような、簡単なスクリプトを書いておき、ウィンドウ左上の「Load」ボタンを押すとファイルダイアログが開くので、スクリプトのファイルを選択します。

(to "http://www.google.com")
(take-screenshot)
(input-text "#gbqfq" "clojure")
(implicit-wait 3000)
(click "#gbqfba")

そうすると、自動的にテストを実行してくれます。キャプチャを取りたいタイミングで(take-screenshot)を書いておくと、同じくscreenshotsに撮られていきます。

スクリプトはclj-webdriverを使っていますので、どういうコマンドがあるかはそちらのAPIをご確認ください。

clj-webdriverの優れた点は、Selenium1時代の簡単な表記のノリでSelenium2のWebDriverが動かせるというところですね。これならSIerがExcelからテストスクリプトを出力するのも簡単ですね :smirk:

この程度ならVBAでもできるんだけど…

そうですね。
これまでスクショに関しては、数多くのSIerがあまたの使いやすいオリジナルツールを開発してきたことでしょう。

ですが、Excelスクショの世界は、キャプって終わりではなく

  • 取得したスクショを過不足なく集めるのって骨が折れる
  • スクショに対しての説明書きの追記は?
  • Excelへのキレイに貼り付けるのが大変なんだけど…
  • データベースの更新内容のエビデンス取得も要るよね?

などなど、まだまだ課題があります。

これらに関しても、実は解決策は作ってあります。続きはClojure夜会にてお話いたします。ぜひ足を運んでみてください!

(2014/10/16 追記)
Clojure夜会で発表したスライドで、上記課題について触れております。ご参照ください。

194
Help us understand the problem. What is going on with this article?
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
kawasima
Clojure関連のことをブログがわりに書き綴ります。 ※ここでの発言はシステムエンジニアを代表するものであって、所属する組織は二の次です。

Comments

No comments
Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account Login
194
Help us understand the problem. What is going on with this article?