つれづれなるままに。

webテストの自動化について備忘録のつもりで書いています

selenium の JavaScript

既に何度も書いていますが、SeleniumIDEはJavaScriptを動かすことができ、その環境は2つあります。
1つは テスト対象となるページ環境
もう一つは SeleniumIDEの環境です。

前者は、runscriptコマンドを使うことにより実行されます。
これは試すとすぐにわかりますが、実行したタイミングで、テスト対象ページにscriptタグを埋め込み実行します。
なので、このコマンドをがんがん実行すると、テスト対象ページに script タグがその回数分だけ追加されていることがわかります。
どういうときに使うかというと、テスト対象ページ内で定義している関数などを実行したい場合などになります。

後者は getEval系のコマンドを使うことにより動作します。こちらはテストする為の値や、状態を判定したい場合に使用することになると思います。

が、個人的には前者の runscriptはテスト対象となるページを書き換えてしまうため、できればやりたくない方法です。
ではテスト対象ページ内の関数呼び出したい場合はどうすればよいか?

その話はまた別の回で・・・