【问题标题】:Selenium: How to verify a word in a string inside a variable?Selenium:如何验证变量内字符串中的单词?
【发布时间】:2013-07-15 23:25:51
【问题描述】:

我想知道如何验证字符串中是否有单词(使用变量)。

例如,我有一个名为 options 的变量,其中包含一个字符串“test,test2,test3”(不带引号)。我想验证这个字符串是否包含单词 test2.

我试过这种方式:

  1. command: store // 目标: test,test2,test3 // 值: options
  2. 命令:storeEval // 目标:javascript{storedVars['options'].contains("test2");} // 值:result

如果 Selenium 在此字符串上找到单词 test2,我希望 Selenium 在该变量结果上存储 TRUE 或 FALSE,但我收到此错误:

[错误] 意外异常:TypeError:storedVars.options.contains 不是函数。文件名 -> chrome://selenium-ide/content/selenium-core/scripts/selenium-api.js, lineNumber -> 2545

有什么想法吗?

截图:http://oi40.tinypic.com/2qibcxf.jpg

【问题讨论】:

  • 用纯javascript做可以吗?
  • 怎么做?我真的是初学者,我刚刚安装了 Selenium IDE...我需要安装其他东西吗?
  • 我不太记得了,因为我使用 IDE 已经有一段时间了,但我很确定您需要遍历 options 数组的内容才能找到您的布尔结果.
  • jsfiddle.net/x6cva 一个很简单的例子
  • javascript{storedVars['options'].search("test2");} 为我工作,它返回-1或0,这就是我想要的,感谢支持!!!

标签: javascript selenium selenium-ide


【解决方案1】:

javascript{storedVars['options'].search("test2");} 有效。

【讨论】:

  • 如果您自己找到了解决方案,那么您应该接受答案;这会将您的问题从未回答的列表中删除。
【解决方案2】:

如果您使用的是 IDE,您可以简单地使用以下命令:

verifyTextPresent | storedVars['options'] | test2

如果找到文本,该行将通过(变为绿色),如果未找到,则将失败(红色)。

克伦达图

【讨论】:

  • 感谢您的建议,实际上我使用了 storeEval / '${variable}'.search("term") / variable_name,因为我希望它找到并存储 true 或 false 是否找到,verifyTextPresent 命令只显示绿/红线而不存储布尔值:)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-03-15
  • 2022-01-09
  • 1970-01-01
相关资源
最近更新 更多