javascript - Java Selenium 测试,我们可以获取 javaScript 变量来断言
问题描述
我想在 java 中使用 Selenium 测试前端 vanilla javascript。我可以轻松地打开页面点击一些东西等,但我无法确切地弄清楚断言测试的最佳实践是什么。主要是我们点击一些按钮后是否可以得到变量,例如我们说:
function button(){
variable = 2;
}
假设某个按钮调用了上面的函数,在 selenium 中我可以单击该函数,但是有没有办法调用变量并执行类似的操作;
AssertEquals(2, driver.getVariableFromJavascriptAfterClick())
如果没有,我应该如何测试类似的东西。
谢谢
解决方案
看起来你需要做的就是
JavascriptExecutor js = (JavascriptExecutor) driver;
int val = js.executeScript("return button();");
AssertEquals(2, val);
有关更多详细信息,请参阅此参考
推荐阅读
- python - 使用窗口(noconsole)模式在编译的应用程序中为 PsExec 执行返回子进程 STDOUT 和 STDERR 输出
- java - Java 程序无法编写完整的网页内容,但是在 SOAPUI 中,我可以看到完整的内容
- python - 使旧键成为具有列表理解的新字典的值
- python - 从 blob 存储读取 csv 文件,并通过触发 azure 函数应用程序将数据附加到该 csv 文件中
- rust - 为什么 Debug 格式化程序会公开私有结构字段?
- node.js - Axios-Node JS cookie 解析器返回一个空对象
- python - 如何使用 pyglet 停止 MP3 播放
- mysql - 如何将所有行数据合并到一行中
- javascript - PWA:为什么在 pointerdown 事件时手机导航按钮不断弹出?
- javascript - NodeJs Azure Functions + Azure 服务总线重试