狗万大网,狗万最新网址,狗万体育官网

储蓄。 Matching key,values of Hash of Hash in script with key,values of Array of Hash got from the page is not working has been deleted. 保存了 匹配键,脚本中带有键的哈希值已被删除,从页面获取的哈希值不可用。 显示了匹配键,脚本中的哈希值与从页面获取的哈希值不匹配的显示。
将键,脚本中的哈希值与键,从页面获取的哈希数组的值匹配不起作用
标题
我<span style =“ color:rgb(36,39,41); font-family:Arial,'Helvetica Neue',Helvetica,sans-serif; line-height:19.5px;”>想编写一个Ruby脚本来检查在Firebug的DOM中找到的页面层(例如:www.jira.com)是否与我的脚本中声明的哈希值匹配。 以下是我编写的Ruby脚本:</ span>

我想编写一个Ruby脚本来检查在Firebug的DOM中找到的页面层(例如:www.jira.com)是否与我的脚本中声明的哈希值匹配。 以下是我编写的Ruby脚本:

需要“ watir”

#初始化浏览器
浏览器= Watir :: Browser.new(:chrome)

#转到页面
browser.goto('www.jira.com')

#初始化需要匹配的哈希。 我之所以这样初始化,是因为将来如果哈希中有更多附加内容,将很容易修复
JIRA_DATA_LAYER = {
'一个'=> {
'event'=>'gtm.js',
'gtm.start'=> 1468393184212,
},
}

#函数读取JIRA数据层的元素
def read_data_layer(浏览器)
data_layer = browser.execute_script(“ return dataLayer”)

返回data_layer
结束

#函数比较直接从页面获得的JIRA值
def compare_jira_data_layer(浏览器)
结果= []

compare_data_layer = read_data_layer(浏览器)

compare_data_layer [0]。每个| key,value |
result.push(键)
结束

返回result.join(“ \\ n”)
结束

#函数检查创建的哈希值和从页面获取的值是否匹配
def jira_data_layer(浏览器,层)
讯息= []

result_compare = compare_jira_data_layer(浏览器)

message.push('检查Jira数据层')

JIRA_DATA_LAYER。每个|键,值|
value.each做| data_layer_key,data_layer_value |
如果data_layer_value == result_compare
结果=“匹配-通过”
其他
结果=“不匹配-失败”
结束

message.push(“#{data_layer_key}#{result}”)
结束
结束

返回message.join(“ \\ n”)
结束

#从页面读取dataLayer的元素
data_layer = read_data_layer(浏览器)

放置jira_data_layer(浏览器,data_layer)

以下是我在Netbeans中运行脚本时遇到的错误。
事件不匹配-失败
gtm.start不匹配-失败

我希望实现以下输出:
'event => gtm.js'匹配-通过
'gtm.start => 1468393184212'个匹配项-通过

我的意图是在功能中应该覆盖所有可能的代码的大部分,以便可以将其用于更多的主脚本

以下代码不起作用:
#函数检查创建的哈希值和从页面获取的值是否匹配
def jira_data_layer(浏览器,层)
讯息= []

result_compare = compare_jira_data_layer(浏览器)

message.push('检查Jira数据层')

JIRA_DATA_LAYER。每个|键,值|
value.each做| data_layer_key,data_layer_value |
如果data_layer_value == result_compare
结果=“匹配-通过”
其他
结果=“不匹配-失败”
结束

message.push(“#{data_layer_key}#{result}”)
结束
结束

返回message.join(“ \\ n”)
结束

#从页面读取dataLayer的元素
data_layer = read_data_layer(浏览器)

放置jira_data_layer(浏览器,data_layer)

我要去哪里错了? 请帮忙。 提前致谢


<span style =“ color:rgb(36,39,41);字体系列:Arial,“ Helvetica Neue”,Helvetica,无衬线;行高:19.5px;”>
</ span>
<span style =“ color:rgb(36,39,41);字体系列:Arial,“ Helvetica Neue”,Helvetica,无衬线;行高:19.5px;”>
</ span>

General None min None sec Ruby 一般 无分钟 无秒 16-07-16,上午10:01 ashwint87

答案:

登录以回答这个问题。