を生成していない私は、ページwww.jira.com用のFirebugでDOMで見つかった層が、私のスクリプトで宣言されたハッシュ値と一致しているかどうかをチェックするRubyスクリプトを書きました。以下は、私が書いたRubyスクリプトです:WaitrとのJiraの統合は、所望の出力
require 'watir'
browser = Watir::Browser.new(:chrome)
browser.goto('https://jira.com')
JIRA_DATA_LAYER = {
'jira' => {
'event' => ['gtm.js', 'gtm.load'],
'gtm.start' => '1468949036556',
}
}
def get_jira_data_layer(get_data_layer)
result = []
get_data_layer.each do |data_layer|
data_layer.each do |data_layer_key, data_layer_value|
result << {"#{data_layer_key}" => data_layer_value}
end
end
return result
end
def compare_jira_data_layer(layer, jira_name)
message = []
index = 0
JIRA_DATA_LAYER[jira_name].each do |jira_key, jira_value|
if layer.include?({jira_key => jira_value})
result = 'matches - PASS'
else
result = 'matches - FAIL'
end
index += 1
message.push("'#{jira_key} => #{jira_value}' #{result}")
end
return message.join("\n")
end
data_layer = browser.execute_script("return dataLayer")
get_data_layer = get_jira_data_layer(data_layer)
compare_data_layer = compare_jira_data_layer(get_data_layer, "jira")
puts compare_data_layer
私は次の出力を取得しています:
'event => ["gtm.js", "gtm.load"]' matches - FAIL
'gtm.start => 1468949036556' matches - FAIL
私は次のように達成したい:
'event => gtm.js' matches - FAIL
'gtm.start => 1468949036556' matches - FAIL
はあなたが与えることができると同じくらい無意味な記述がある「動作しない」を覚えておいてください。 – tadman
@tadman Oh.Thanksと申し訳ありません –