如何将Javascript语法(用于解析HH:MM:SS)导入Selenium IDE

如何将Javascript语法(用于解析HH:MM:SS)导入Selenium IDE,javascript,selenium,selenium-ide,Javascript,Selenium,Selenium Ide,我对Selenium中的“编码”非常陌生,最近安装了Selenium IDE 我试图将变量$WaitingTime(在“hh:mm:ss”中)设置为SeleniumIDE中的毫秒 我已经找到了多种解决方案,但是我不知道如何将这些转换为Selenium命令,以及如何将结果存储为新变量 一种解决办法是: function hmsToSecondsOnly(str) { var p = str.split(':'), s = 0, m = 1; while (p.length > 0)

我对Selenium中的“编码”非常陌生,最近安装了Selenium IDE

我试图将变量$WaitingTime(在“hh:mm:ss”中)设置为SeleniumIDE中的毫秒

我已经找到了多种解决方案,但是我不知道如何将这些转换为Selenium命令,以及如何将结果存储为新变量

一种解决办法是:

function hmsToSecondsOnly(str) {
var p = str.split(':'),
    s = 0, m = 1;

while (p.length > 0) {
    s += m * parseInt(p.pop(), 10);
    m *= 60;
}

return s;
}
如何将这些转换为Selenium IDE命令


谢谢你的帮助

我以前遇到过的最好的方法是使用user-extensions.js文件。如果你没有这个,你可以很容易地创建一个空白的js文件。然后您需要在selenium IDE中设置它(选项>选项,并且应该有一个字段标题selenium Core Extensions,只需在此处设置您的文件)

然后,您可以将上述函数放在该文件中,并使用storeEval从selenium调用它

<tr>
    <td>storeEval</td>
    <td>hmsToSecondsOnly("10:10:10")</td>
    <td>waitingTime</td>
</tr>
<tr>
    <td>echo</td>
    <td>${waitingTime}</td>
    <td></td>
</tr>

根据函数名,我假设这是以秒为单位的,而不是你在问题中所说的毫秒。如果需要毫秒,则需要调整函数,但同样的selenium功能也适用。

要在selenium中轻松管理所有javascript日期和时间,可以使用moment.js。。安装它并将其作为扩展添加到Selenium中

[info] Executing: |echo | ${waitingTime} | |
[info] echo: 36610