gpt4 book ai didi

javascript - 如何验证是否使用 Selenium 在 javascript 对象上调用了某些方法?

转载 作者:数据小太阳 更新时间:2023-10-29 05:23:39 25 4
gpt4 key购买 nike

我想用 selenium 验证是否调用了某些方法(带参数)JavaScript 对象 - 一种使用 JMockit 的期望模拟,但在 Javascript 和 selenium 中。

不幸的是,对象是被严重混淆的不透明网站性能跟踪器,我无法访问它的内部结构,所以在我看来,模拟是唯一的选择。还是我漏掉了一些明显的东西?

更新:经过思考,在我看来解决方案可能是: - 等待 HTML 完全加载 - 删除某些包含性能跟踪器的脚本标签 - 创建 javascript 模拟对象,其行为类似于跟踪器,但记录调用供以后使用

最佳答案

好的,终于明白了。选择的模拟框架是:jsmockito 和 jshamcrest(jsmockito 需要它)- http://jsmockito.org/

这是小菜一碟。

监视现有对象:

<tr>
<td>storeEval</td>
<td>window.wwa = JsMockito.spy(window.wwa$); </td>
<td>mockedWipe</td>

...做任何必要的

并验证它:

<tr>
<td>storeEval</td>
<td>JsMockito.verify(window.wwa$).logAction('Trefferliste Webadresse');</td>
<td></td>

注意事项:

  • 窗口作用域变量在命名空间 window
  • 可以忽略验证步骤的评估值,因为如果调用不满足,您会得到异常
  • 不要忘记将 js 库添加到您的 selenium ide 或测试驱动程序中

关于javascript - 如何验证是否使用 Selenium 在 javascript 对象上调用了某些方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11140856/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com