1

我正在做一个搜索律师的练习,然后访问她的个人资料,然后注销。我想清除浏览器缓存或cookies,所以当我以连续模式运行脚本时,它就像从头开始一样。

它似乎不起作用。请给我一些关于如何修改我的脚本的建议,以便我可以删除 cookie。

Selenium IDE 日志部分中显示的错误消息:

[错误] 元素 id=edit-name 未找到

  1. 例如,对于 cookie _utma,expires 的值从 2015 年 7 月 10 日晚上 9:24 更改为 2015 年 7 月 11 日晚上 9:24,我不确定这是否意味着 cookie 被成功删除或值因执行而更改的脚本。
  2. Selenium 中 deleCookie 命令的正确语法是什么这是我使用的语法

删除Cookie >"path=/",domain=".jlaustin.tcheetah.com","recurse=true"

或删除Cookie >"path=/,domain=.jlaustin.tcheetah.com,recurse=true"

  1. 我想知道域和主机之间的区别在我的 Firefox 浏览器中,查看 cookie 部分显示 cookie代理和 cookie *_utma*的值

    脚本的表格视图截图1 ,截图2

这是 Selenium IDE(版本 1.10.0)生成的脚本

<table cellpadding="1" cellspacing="1" border="1">
<thead>
<tr><td rowspan="1" colspan="3">search_solicitor</td></tr>
</thead><tbody>
<tr>
    <td>setSpeed</td>
    <td>5000</td>
    <td></td>
</tr>
<tr>
    <td>deleteCookie</td>
    <td>agent</td>
    <td>&quot;path=/&quot;, domain=&quot;.jlaustin.tcheetah.com,&quot; recurse=true&quot;</td>
</tr>
<tr>
    <td>deleteCookie</td>
    <td>user</td>
    <td>&quot;path=/&quot;,domain=&quot;.jlaustin.tcheetah.com&quot;,&quot;recurse=true&quot;</td>
</tr>
<tr>
    <td>deleteCookie</td>
    <td>uweopenid</td>
    <td>&quot;path=/&quot;,domain=&quot;.jlaustin.tcheetah.com&quot;,&quot;recurse=true&quot;</td>
</tr>
<tr>
    <td>deleteCookie</td>
    <td>_utma</td>
    <td>&quot;path=/&quot;,domain=&quot;.jlaustin.tcheetah.com&quot;,&quot;recurse=true&quot;</td>
</tr>
<tr>
    <td>deleteAllVisibleCookies</td>
    <td></td>
    <td></td>
</tr>
<tr>
    <td>open</td>
    <td>/?html=openid&amp;logout=1</td>
    <td></td>
</tr>
<tr>
    <td>pause</td>
    <td>6000</td>
    <td></td>
</tr>
<tr>
    <td>clickAndWait</td>
    <td>css=input[type=&quot;submit&quot;]</td>
    <td></td>
</tr>
<tr>
    <td>pause</td>
    <td>5000</td>
    <td></td>
</tr>
<tr>
    <td>type</td>
    <td>id=edit-name</td>
    <td></td>
</tr>
<tr>
    <td>type</td>
    <td>id=edit-pass</td>
    <td></td>
</tr>
<tr>
    <td>click</td>
    <td>name=autologin</td>
    <td></td>
</tr>
<tr>
    <td>clickAndWait</td>
    <td>id=edit-submit</td>
    <td></td>
</tr>
<tr>
    <td>clickAndWait</td>
    <td>id=cmp_admin</td>
    <td></td>
</tr>
<tr>
    <td>clickAndWait</td>
    <td>link=Donor</td>
    <td></td>
</tr>
<tr>
    <td>clickAndWait</td>
    <td>link=manage solicitors</td>
    <td></td>
</tr>
<tr>
    <td>clickAndWait</td>
    <td>link=Baldwin, Donna</td>
    <td></td>
</tr>
<tr>
    <td>clickAndWait</td>
    <td>css=span.systemsmallbold &gt; a</td>
    <td></td>
</tr>
<tr>
    <td>deleteAllVisibleCookies</td>
    <td></td>
    <td></td>
</tr>
</tbody></table>
4

1 回答 1

0

您可以在 selenium IDE 中启动 javascript 函数,例如:

<tr>
    <td>storeEval</td>
    <td>(function() {return "HeLLO";})</td>
    <td>returnedVal</td>
</tr>

因此,您可以启动一个 JS 函数做 del a cookie 使用类似的功能 清除特定的 cookie

function deleteCookie(c_name) {
    document.cookie = encodeURIComponent(c_name) + "=deleted; expires=" + new Date(0).toUTCString();
}

并根据您的需要进行定制。

我从来没有使用过 del cookie 的内置函数,因为我想控制我删除的内容。

于 2014-06-10T18:52:21.273 回答