0

次のフォルダの名前を変更しようとしています:

<li class="selected rename" id="labelset-624" folderid="624" foldertype="labelset" permissionlevel="2" labelsetid="624">
  <div class="folder-insert-drop ui-droppable"></div>
  <div class="clear"></div>
  <div class="folder-item droppable hoverable empty ui-droppable">
    <div id="mlink-labelset-624" class="folder-menu-link" data-hasfullperm="true" data-subfoldertype="undefined"></div>
    <div class="expander"></div>
    <div class="folder-name labelset label-set">New Label Set</div>
    <div class="target-bar"></div>
    <div class="folder-rename">
      <input value="New Label Set" id="folder-rename-624" maxlength="100" type="text">
    </div>

次のコマンドを使用して、watir-webdriver を使用します。

@b.li(:class, "selected rename").div(:class, "folder-rename").text_field.wait_until_present
@b.li(:class, "selected rename").div(:class, "folder-rename").text_field.set labelsetName
@b.li(:class, "selected rename").div(:class, "folder-rename").text_field.send_keys :return

そして、それは私に次のエラーを与えます:

Watir::Exception::UnknownObjectException: unable to locate element, using {:class=>"selected rename", :tag_name=>"li"}

テスト スクリプト (test-unit) を実行すると、テキスト フィールドに入力された labelsetName の値が表示されますが、すぐに消えてデフォルト値に戻ります。これにより、send_keysステートメントがエラーになります。

同じコマンドをirbに入力すると、完全に機能します。ステップ間に最大 15 秒のスリープを追加しようとしましたが、役に立ちませんでした。2つの機能が異なる理由はありますか?これを今後修正するための提案はありますか?

4

2 に答える 2

0

テストを何度も実行したため、新しいフォルダーを作成するたびに、名前を変更しようとしていたフォルダーが画面から押し出されたことがわかりました。これがエラーの原因です。

于 2013-07-09T23:29:44.747 に答える