selenium - 如何使用 Selenium 在测试之间存储值

标签 selenium selenium-ide

Selenium 能够临时存储数据项,然后在后续测试中检索它们,例如

storeText | @id='ctl00_ContentPlaceHolder1_FormView1' | someValue

当需要跨测试边界传递值时,这在单个测试中以及在同一测试套件中的测试之间运行良好。不幸的是,它在测试套件之间不起作用(这是我们的应用程序的要求,其中包括许多引用同一对象的工作流)。 Selenium 如何用于跨测试套件边界存储值?

最佳答案

可以使用 javascript 将来自 Selenium 测试的值存储到浏览器的本地存储中,例如如果先前已将值存储到 someValue :

getEval | this.browserbot.getUserWindow().localStorage.setItem("someValue",storedVars['someValue'])
assertEval | this.browserbot.getUserWindow().localStorage.getItem("someValue") | ${someValue}
storeEval | this.browserbot.getUserWindow().localStorage.getItem("assetLabel") | someValue

在这种情况下, this.browserbot.getUserWindow() 返回应用程序的窗口。这将存储 someValue 到本地存储,然后可以从那里检索回 Selenium 存储的变量。

关于selenium - 如何使用 Selenium 在测试之间存储值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7630207/

相关文章:

python - 在 Python 中使用代理运行 Selenium Webdriver

java - Selenium 应用按钮在组合框上不起作用?

selenium-ide - Selenium - 验证是否显示了建议列表

java - 如何用selenium获取文本同级标签?

c# - webdriver - 获取特定 div 中包含的所有类名称的计数

Python - 继承、 super 和初始化对象的正确方法(selenium、phantomjs)

javascript - 如何检查属性的文本是否包含部分参数标题(不区分大小写)?

python-3.x - 如何通过Python使用selenium点击隐藏按钮

java - 获取已找到的 WebElement 的 By 定位器

firefox - selenium DragAndDrop 不拖放,尽管选择器看起来没问题