我是测试的初学者。我正在进行测试实习,并试图了解selenium IDE中的所有命令。如果有人能帮助我,我真的很感激。我想知道runScript和storeEval命令之间的区别。我理解参考文献的基本区别,但我想详细了解。谢谢。
答案 0 :(得分:2)
尝试:
runScript | somethingwrong
storeEval | if (1==1) 'lol' //Or any valid js | somevar
echo | ${somevar}
echo | javascript{if (storedVars['somevar'] != 'lol') {'???';} else {'We can do js here too'}}
storeEval | somethingwrong | somevar
getEval | somethingwrong
verifyEval| storedVars['somevar'] == 'lol' | true
verifyEval| {if (1==1) true} | false
然后逐个双击运行每一行。
runScript
它什么也没有回来。它不是由selenium IDE包装的。这意味着错误的脚本不会在selenium IDE中导致任何错误。 但会导致浏览器出现js错误。如果您想使用浏览器调试工具来处理某些js错误
,这可能很有用<强> storeEval 强>
将javascript的结果存储到变量中。并且它由Selenium IDE包装,这意味着破坏的脚本将在Selenium IDE中导致错误,并且在这种情况下将停止测试。您将能够在Selenium IDE日志中正确读取错误。
<强>回声强>
也可以运行javascript。但请只进行调试。如果您的js坏了,它将挂起测试。
getEval
它没有返回任何结果。其他所有东西都像在storeEval中。破损的js将无法通过测试。
<强> verifyEval 强>
用于验证变量。如果提供的两个eval不相等,它将无法通过测试。你也可以用来运行javascript。当你不仅需要得到javascript的结果而且如果结果不可接受而无法通过测试时,它非常有用。
所以:
runScript 就是执行脚本并进一步(可能在浏览器控制台中出错)
getEval 是运行脚本并在出现错误时失败
storeEval 是运行脚本并检索结果以便以后使用
verifyEval 是运行脚本并验证结果。
echo 不适用于运行脚本。但你可以做到。仅供调试。
使用Selenium IDE运行脚本还有很多其他方法。但它已经很多了。
希望它会有所帮助。