java - 无法获取或设置 sendkeys 命令的参数映射中的值

标签 java selenium webdriver qaf

【myParam变量结构】

我从命令中得到了一个 Map 返回,它是一种 Map。我的问题看起来很简单,但花了我 4 天,我无法获取或设置“value”键的内容。下面是我在 Java 中调试的变量,它看起来像(您可以查看我的屏幕截图以获得更直观的效果)

我的参数

-[0]
--key: "value"
--value: CharSequence[1]
---[0]: "abcdefghijkl"  <--- I need to change this 
-[1]
--key:"id"
--value: 152438043653703040

我的目的是更改或获取“value”键的值,所以我只是通过 myParam.put("value","new content") 设置/获取 但Java总是改变文本CharSequence 1 ,而不是文本“abcdefghijkl”。 您能告诉我如何获取或设置文本“abcdefghijkl”吗?我想要的只是将文本“abcdefghijkl”更改为新文本。 到目前为止我已经完成但仍然无法正常工作的所有事情:

  1. 声明一个CharSequence然后返回myParam.get("value"),返回的字符串仍然是CharSequence refer scereenshot
  2. 使用myParam.put("value","new content"),它会将CharSequence更改为“new content”,这绝对不是我的需求

请帮助我摆脱这种困境。它现在让我发疯。非常感谢。

最佳答案

您似乎正在尝试访问要在 sendkeys 元素命令中传递的值。如果您看到signature of sendkeys它有可选的 CharSequence 数组。因此,作为值,您将获得 CharSequence 数组。

获取值(value)

CharSequence val = ((CharSequence [])myParam.get("value"))[0];

设置值

((CharSequence [])myParam.get("value"))[0]="new content";

关于java - 无法获取或设置 sendkeys 命令的参数映射中的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50111542/

相关文章:

java - 将 Excel 单元格内容附加到新的 Excel 文件

c# - Selenium 更新后出现 StaleElementException

java - AssertJ本地构建时没有这样的方法错误

Java - 如何从多个线程获取或创建连接

java - Selenium WebDriver - 如何按住鼠标右键?

java - selenium如何继续往下一页填充数据?

java - 线程中的异常 "main"java.lang.NoSuchMethodError : com. google.common.base.Preconditions.checkState(ZLjava/lang/String;Ljava/lang/Object;)

java - 为什么 tomcat 与 Facelets 一起工作?

java - 具有类注册的工厂方法模式会产生空指针异常

python - 正确终止Python中的selenium浏览器