从selenium php-webdriver中获取隐藏表单值的文本

时间:2015-02-12 12:07:45

标签: php testing selenium selenium-webdriver hidden-field

我正在使用php-webdriver(facebook)并等待90秒的网页名称=" mdn"通过以下代码找到。这很好但在此之后我想得到name =" mdn"的文本。隐藏的表单字段有一个值,但在$ number上没有值。有人知道什么是错的吗?

test.php的:

$driver->wait(90, 10000)->until(
    WebDriverExpectedCondition::presenceOfAllElementsLocatedBy(
        WebDriverBy::name('mdn')
    )
);

$number= $driver->findElement(WebDriverBy::name('mdn'))->getText();

页:

<div  id="main content"  align="center" class="mainCon">
  <div class="mainBG1">
    <table width="900" cellspacing="0" cellpadding="0">
      <tr>
        <td width="650" valign="top">
          <div  class="paddingT20 paddingB20" style="font-family:'Oswald', sans-serif;  font-weight:normal; font-size:35px">xxxxxxx Completed</div>
          <form method="post" action="xxxxxxxxxxxxxxxxxxxxxx" target="_blank">
            <input type="hidden" name="trans_id" value="1234567" />
            <input type="hidden" name="mdn" value="1234567890" />
            <input type="hidden" name="bal" value="" />
            <input type="hidden" name="exp" value="" />
            <input type="hidden" name="note" value="" />
            <table width="40%" border="0" cellspacing="0" cellpadding="0">
              <tr>
                <td colspan="2" class="dv-R">&nbsp;</td>
              </tr>
                    <tr>
                <td width="40%" class="dv-L">MDN</td>
                <td width="60%" class="dv-R">6142086840</td>
              </tr>
              <tr>
                <td width="32%" class="dv-L">&nbsp;</td>
                <td width="68%" class="dv-R"><input type="image" value="Print"  src="images/xxxxx.png" /></td>
              </tr>
            </table>
            <div class="InfoGr paddingT20 paddingB20"></div><br/> 
                </p>
          </form>   
          <div class="paddingB40"></div>      
        </td>
        <td valign="top" bgcolor="#e2e2e2">&nbsp;</td>
      </tr>
    </table>
  </div>
</div>

1 个答案:

答案 0 :(得分:1)

您可以使用getAttribute(),因为您的网页有属性值而不是文字。 即

$number= $driver->findElement(WebDriverBy::name('mdn'))->getAttribute('value');