16

私は統合テストにSeleniumを幅広く使用しています。すべての通常のもの(HTML / AJAX)でうまく機能しますが、サードパーティのActiveX、Javaアプレット、およびFlashコンポーネントをテストしようとしているときはうまくいきません。

これについて私が見つけた解決策はSikuliです。ローカルでうまく機能しますが、どうすればそれをSeleniumに統合できますか?

ところで。それが関係している場合、SeleniumではPythonAPIを使用しています。

4

5 に答える 5

5

Selenium RCドキュメントのPythonセクションを参照してください: http ://seleniumhq.org/docs/05_selenium_rc.html#python

JythonからSeleniumテストを実行できる場合があります。その場合、SeleniumスクリプトをSikuliスクリプトに簡単に統合できます。

SikuliIDEで次のことを試してください。Seleniumプロジェクト内の特定のファイルを指すように、インポートステートメントを変更する必要がある場合があります。

from selenium import selenium    # this will probably need tweaking...

slm = selenium("localhost", 4444, "*firefox", "http://www.google.com/")
slm.start()
# etc...

この男は、JythonからSeleniumを制御することに成功したようです:http ://adam.goucher.ca/?p = 367

私の結論:おそらく、Jythonにとどまり、そこからSeleniumを制御するのが最も簡単でしょう。両方のツールを1つのスクリプトに統合できます。

于 2010-10-09T00:41:06.653 に答える
1

SeleniumGridでSikuli機能を使用することができます。すべてのノードとハブに追加のライブラリをインストールする必要があります。

詳細については、このプロジェクトを確認してください

https://github.com/sterodium/selenium-grid-extensions

于 2015-10-16T09:31:41.577 に答える
0

Seleniumサーバーを拡張して、SIKULIスクリプトを実行できるようにすることができます( Javaからスクリプトを呼び出す方法についてはこちらを参照してください)。

ただし、Selenium ServerはJavaアプリであるため、Javaで開発する必要があります。

于 2010-10-14T15:24:05.343 に答える
0

カスタムまたは特定のテストフレームワークを使用する必要がない場合、1つのオプションはRobot Framework(RF)です。Seleniumライブラリがあり、RFでSikuliを使用する方法があります。そのことを念頭に置いて、RFを使用して2つを組み合わせることができます。さらに、RFにはいくつかの優れたテスト自動化フレームワーク機能が組み込まれています。

robotframework.org

http://blog.mykhailo.com/2011/02/how-to-sikuli-and-robot-framework.html

http://code.google.com/p/robotframework-seleniumlibrary

于 2011-07-24T05:33:13.280 に答える
0

Seleniumグリッド上でSikuli関数をリモートで実行する場合は、SeleniumAugmenterを使用して実行する必要があるようです 。ここでの回答はいずれも、SauceLabsを使用する場合などのリモートグリッドがSikuli機能を取得する方法を示していません。おそらく、Seleniumプロジェクトは、Sikuliのような外部ライブラリをロードするためにAugmenterクラスをまだ拡張していませんか?

このため、Sikuliを使用するときは、常に非リモートの標準のローカルWebDriverインスタンスを使用する必要があります。

于 2013-07-15T00:49:53.840 に答える