我有一个这样的哈希:
$login_form = {
$username => {web_element_type: :id, web_element: 'uname'},
$password => {web_element_type: :id, web_element: 'pass'}
}
如何用最简单的方法检索$password的 Web 元素类型和 Web 元素?
此解决方案可以帮助您并准备好哈希
像这样定义哈希
$login_form = {
:username => {web_element_type: :id, web_element: 'uname'},
:password => {web_element_type: :id, web_element: 'pass'}
}
您可以像这样检索password
$login_form[:password]
如果您有任何问题,请告诉我。
全局变量 ?
您确定需要全局变量吗?
现在,哈希中的键不是字符串、符号或整数,而是变量 $username
和 $password
引用的对象。这些变量是全局变量,可以从代码中的任何位置访问。对于名为 password
的变量来说,这似乎不是一个好主意。
如果这些变量没有初始化,它们都是nil
的,所以你的login_form
实际上是:
{nil=>{:web_element_type=>:id, :web_element=>"pass"}}
$username
的值已被 $password
覆盖。
如果您确定login_form
应该是全局变量:
$login_form = {
username: {web_element_type: :id, web_element: 'uname'},
password: {web_element_type: :id, web_element: 'pass'}
}
p $login_form[:password].values_at(:web_element_type, :web_element)
#=> [:id, "pass"]
type, element = $login_form[:password].values_at(:web_element_type, :web_element)
p type
#=> :id
p element
#=> "pass"
如果没有,您可以使用@login_form
或仅使用login_form
。
如果你仍然感到困惑,你可以看看这个。