By 古城 篤|12月 10, 2013|CI, DevOps, Javascript, salesforce, |
Force.com Advent Calendarの10日目として執筆させて頂きました。
CasperJSは前に当ブログでも紹介したphantomJSやSlimerJSといったヘッドレスブラウザの上で動作するユーティリティです。
今回はwindows環境にさくっとセットアップを行い動かしてみました。
インストール方法は他サイトが多数ありますので詳細は割愛させて頂きますが、phantomjs.exeとcasperjs.batをダウンロードしてパスを通しただけです。(本家にはpythonが必要とあり試したPCにもインストールされています)
今回は下記ステップをシミュレートしています。
1.Salesforceにログイン
2.ダッシュボードタブをクリックしダッシュボードページに遷移し
3.ダッシュボードヘッダーのキャプチャを取得(更新前)
4.更新ボタンをクリック
5.ダッシュボードヘッダーのキャプチャを取得(更新後)
基本的にSalesforceページのタグに付与されているid/classを利用してページの操作を行っています。
ポイントとしてはSalesforceではアカウントを作成した後、別IPなどでログインを試みると確認コードによる認証が必要となります。
なので最初の起動では確認コードの送信処理のみを行います。
メールで確認コードを取得したら–checkcodeパラメータに確認コードを渡して再度起動します。
キャプチャでは特定の部品のみ指定する事が可能なので、今回は更新時間の違いを確認するためダッシュボードヘッダーの部分のみキャプチャしました。
またLinux環境でも上記コードを利用して試してみましたが問題なく動作しました。
(Linux環境では日本語の文字化け対応のためIPAフォントをインストールしました。)
今回はお試しで動かしてみましたが、Salesforce自体のメンテナンス時などはガイダンスなどが表示されるため、起動部分にはもう一工夫必要です。今度Salesforceのメンテナンスのガイダンスが確認できた際に試してみたいと思います。
Read More