gpt4 book ai didi

php - Selenium 2 phpunit 从注入(inject)的 javascript 代码中获取值(value)

转载 作者:搜寻专家 更新时间:2023-10-31 21:02:50 24 4
gpt4 key购买 nike

我正在使用 Selenium2TestCaseTest,可以找到 here我正在尝试获取 jquery slider 的值,在此处搜索后我找到了 this解决方案

$this->execute(
array(
'script' => "$('#Slider_id').slider('option', 'value', 505);",
'args' => array()
)
);

但它只允许我更改 slider 的值,然后我尝试使用这些命令获取它的值:

 $this->execute(
array(
'script' => "$('#Slider_id').slider('option', 'value');",
'args' => array()
)
);

还有这个:

 $this->execute(
array(
'script' => "$('#Slider_id').slider('value');",
'args' => array()
)
);

它不返回任何东西(NULL),有人可以帮我解决这个问题吗?

最佳答案

为了获得使用 selenium 注入(inject)浏览器的代码返回的值,您需要在运行的代码之前添加 return
这与您使用 selenium 运行的每个 javascript 代码相关,而不是专门针对 jQuery ui slider 。

$val = $this->execute([
'script' => "return $('#Slider_id').slider('option', 'value');"
'args' => []
]);

更简单的例子:

$val1 = $this->execute([
'script' => "return 1;"
'args' => []
]);

$val2 = $this->execute([
'script' => "return Math.max(10, 15);"
'args' => []
]);

$val3 = $this->execute([
'script' => "return function(){return 2}();"
'args' => []
]);

关于php - Selenium 2 phpunit 从注入(inject)的 javascript 代码中获取值(value),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38565351/

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