質問: 幾つかのGreasekeyスクリプトを作成、公開しています。 Greasemonkeyスクリプトは、「対象のページ上でスクリプトを実行する」という特性上、対象のページのDOM構造が変更された場合などに動作しなくなってしまいます。 たまたま対象ページを閲覧し、スクリプトが動作していない事に気づいた場合は、改修を行っていますが、毎日見る訳ではないページを対象としたスクリプトもあり、その場合は「動作しなくなってから、それに気づくまで」にかなりの期間が生じてしまう事になってしまいます。 そこで、対象のページでGreasemonkeyスクリプトが動作しているかを定期的、自動的にテストし、動作しなくなっていたら通知してくれるようなシステムが欲しいと考えています。 このようなシステムの構築は可能でしょうか。また、どのようにすればそれを行う事が出来るでしょうか。 * 作成したスクリプトはGithubにて管理していますので、それと連携するwebサービス(CIサービスなど)で実現できると一番嬉しいです。 * そうではなく、ローカルのPC上にて確認を行うのであれば、Linux(Fedora 23)で可能な方法を御願いします。 * テストしたい内容としては、次の物となります。 (1) 対象のページにアクセスした際に、スクリプトが動作しているか(≒想定した場所に、想定通りのDOMが差し込まれているか)。 (2) スクリプトでbutton要素やa要素、input要素などを差し込む場合、そのクリックや文字列入力の結果が期待どおりの物となるか。
回答: お書きの通りのことをするなら、ウェブサービスでは難しいと思います。 Selenium等を使えば、Firefoxを使ってのアクセスが出来ますので、そのままGreasemonkeyが動くはずです。 ただ、目的ページの元々のHTMLがJavaScriptを使ってクライアントサイドで動的に作られたもので無い限りは、普通にプログラムでHTMLを取得してそれが想定の物かどうか確かめるという方法の方が簡単な気がします。