Ajaxのエンドツーエンドテストを書く際など、思うように望んだ状態を作り出せず、直接JavaScriptを実行できれば楽なのに・・・というケースがたまにあると思います。
capybaraのexecute_scriptを使えば任意のJavaScriptを実行できます。
page.execute_script "alert('bar');"
これを利用すれば、disabledやreadonlyになっているフォームに強引に値を送り込めます。
page.execute_script "$('#foo').val('forced post message');"
通常、このように現実と乖離したテストを書くべきではありませんが、セキュリティ上の問題をテストするのには便利かも知れません。
以上はCapybara.javascript_driver = :poltergeistで確認していますが、selenium等のドライバで動作するかどうかは不明です。
(動作したら教えてくれると嬉しいです)