2015-09-28 38 views
1

我使用硒IDE获取字符

我有一个表在我的href的链接,如:

<table><tr><td> 
<a href="#/FR/iWeb/Colis?c=9L07186140438-20150330" target="_blank">9L07186140438</a> 
</td></tr></table> 

我想获得最新的字符我的一个href=c=开始,在我们的例子中这将是9L07186140438-20150330

我知道,你可以使用storeText,但我不知道该怎么做我的情况下,实施分割数据,存储正确的信息,使用它们。 是否有人有我可以尝试的链接或解决方案?

回答

4

对于这种情况,我会使用StoreAttribute获取href,但这需要完整的东西。如果您希望存储的部分之前的部分在所有链接中保持一致,则可以使用正则表达式分隔出您需要的部分。 (或者即使C =位是一致的,为我所用的正则表达式只会寻找=,而不是全速前进,你需要什么样的href)

所以Selenium测试是这样的

<tr> 
    <td>storeAttribute</td> 
    <td>css=td>[email protected]</td> 
    <td>href</td> 
</tr> 
<tr> 
    <td>echo</td> 
    <td>${href}</td> 
    <td></td> 
</tr> 
<tr> 
    <td>storeEval</td> 
    <td>storedVars['href'].match(/[^=]+$/)</td> 
    <td>url</td> 
</tr> 
<tr> 
    <td>echo</td> 
    <td>${url}</td> 
    <td></td> 
</tr> 

哪个会给你需要的。下面

[info] Playing test case Untitled 
[info] Executing: |storeAttribute | css=td>[email protected] | href | 
[info] Executing: |echo | ${href} | | 
[info] echo: #/FR/iWeb/Colis?c=9L07186140438-20150330 
[info] Executing: |storeEval | storedVars['href'].match(/[^=]+$/) | url | 
[info] script is: storedVars['href'].match(/[^=]+$/) 
[info] Executing: |echo | ${url} | | 
[info] echo: 9L07186140438-20150330 
[info] Test case passed 

日志输出欲了解更多信息的正则表达式是怎样分解看看here

+0

那正是这一点,你是一个英雄,谢谢:) – dtjmsy