input
はフォーム(ボタンのように見え、ボタンのようにやり取りする)でデータを生成します(サーバーはフォームパラメータに基づいてデータを生成しますが、ユーザーのために、ボタンはそれを行います:))フォームのパラメーターに基づいて。Selenium Webdriver submit()vs click()
click()
を使用すると、プロセス全体がハングアップします(実際にはフリーズし、例外もエラーもありません)。
セレンのウェブサイトから:
// Now submit the form. WebDriver will find the form for us from the element
element.submit();
だから、webdriverをはsubmit()
方法があります。ボタン上にclick()
を使用するか、submit()
を使用するかの間に、論理的な違いがありますか?
ああ、実行の違いはありません。私はそれほど分かりませんでした。フリーズは、別のソース/ IEの不具合から発生する必要があります...本当にIE +セレンが嫌いです。答えてくれてありがとう。 – CosminO
これは技術的には真実ではありません。違いは、submit型のinput要素でclickイベントを発生させ、もう一方はform要素でsubmitイベントを発生させることです。入力のクリックイベントでのみ発生するコードがある場合は、送信機能を使用すると発生しません。 –
少なくとも1つの重要な違いがあります。少なくとも、chromeriverを使用している.netバージョンの場合、送信はページが読み込まれるまで待機します。クリックは保証されません。 –