我正在测试网页,我需要在javascript代码中声明代码片段,例如
<script type="text/javascript" src="//img.xxxx.com/u/14/p42449.js"></script>
<script type="text/javascript">
window.ptag_params = {
zone: "homepage",
customerId: "Your customer ID",
siteType: "Site Type",
};
</script>
我试过用
<tr>
<td>verifyHtmlSource</td>
<td>*42449*</td>
<td></td>
</tr>
但我没有看到任何回复,仅在日志中
[info] Executing: |verifyHtmlSource | *42449* | |
我做错了什么???
答案 0 :(得分:1)
你曾经使用的硒命令对你正在尝试做的事情来说并不是最好的。所有这一切都是检查页面的整个html中的某个地方,出现了数字42449,并不能保证它会在您想要查看的脚本片段中找到它。关于日志,您赢了& #39;使用verify命令看到的输出比你在日志中的输出多,因为它只是通过或失败,具体取决于它是否找到该数字。
如果您需要确认此元素存在并希望在日志中看到包含它的一些输出,那么您最好的选择是验证元素和存储元素的组合示例
<强>脚本强>
<tr>
<td>verifyAttribute</td>
<td>css=script@src</td>
<td>*42449.js</td>
</tr>
<tr>
<td>storeAttribute</td>
<td>css=script@src</td>
<td>source</td>
</tr>
<tr>
<td>echo</td>
<td>${source}</td>
<td></td>
</tr>
日志输出
[info] Playing test case Untitled
[info] Executing: |verifyAttribute | css=script@src | *42449.js |
[info] Executing: |storeAttribute | css=script@src | source |
[info] Executing: |echo | ${source} | |
[info] echo: //img.xxxx.com/u/14/p42449.js
[info] Test case passed
您唯一需要注意的是,如果您的网页上有多个脚本标记,那么您只需要修改第n个值的定位器,如果它是第二个或第三个脚本等。
答案 1 :(得分:0)
上面的代码看起来不错,但由于它不是基于css,因此订单无关紧要。
<tr>
<td>verifyElementPresent</td>
<td>//script[contains(@src, 'p42449.js')]</td>
<td>*ga.js</td>
</tr>
<tr>
<td>storeAttribute</td>
<td>//script[contains(@src, 'p42449.js')]@src</td>
<td>source</td>
</tr>
<tr>
<td>echo</td>
<td>${source}</td>
<td></td>
</tr>