0

会社のWebフォームをテストするために自動テストを実行しています。彼らは、住所と家番号を入力すると、通りと市/地域を自動的に追加する郵便番号サービスをインストールしました。

この自動入力は、最後のフォーム要素(たとえば、家番号の要素)の選択を解除したときに表示されます。

これは私が使用しているフィールドの順序です。

  • form:zipcode
  • form:housenumber
  • form:addition(オプション)
  • form:street(郵便番号と家番号が提供された後にサービスによって記入されます)
  • form:city(他の自動入力フィールド)

このフォームに手動で入力すると、追加フィールドをクリックまたはタブで移動するとすぐにアドレスが表示されますが(オプションであるため)、自動化すると機能しません。

私は次のようないくつかのことを試しました。

  • focus('form:addition')または
  • select('form:addition')ですが、これらは機能しません。私が試してみました
  • type('\ t')を押してフォームフィールドに移動し、
  • type('form:addition'、'')を使用して、addにスペースを入力します。フィールド、さらには
  • type('form:addition'、 "")を使用して、空のままにします。これらの試みはこれまでのところうまくいきませんでした。

これを手伝ってくれる人はいますか?

4

2 に答える 2

0

こんにちは、私はこれに対する解決策を得たと思います、

問題は、追加フィールドへのユーザー インタラクションの生成にあります。

これらのステートメントを使用してください

focus("フォーム:加算");

keyPressNative("10") //これは ENTER コマンドです

それは動作するはずです

于 2011-06-28T17:27:15.923 に答える
0

昨日、郵便番号サービスが Ajax 呼び出しを使用して情報を取得していることを知りました。この呼び出しは、郵便番号フィールドと番地フィールドが両方とも「焦点が合っていない」(つまり、選択されていない) 場合に実行されます。

これを有利に使用するために私が見つけた正しいステートメントは次のとおりです。

データが入力された最後のフィールドの選択を解除する selenium.fireEvent('form:number', 'blur') 。

于 2011-06-30T07:14:35.610 に答える