watir_testlink_framework 0.0.4 → 0.0.5

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 8b5efc70001d005a4a3913f9d56dc48663286dd1
4
- data.tar.gz: 3cad3bb62b09a36d2151a033ab779c8c140c8242
3
+ metadata.gz: b63cabf156d49a42393b10e9286851b47e37e9cf
4
+ data.tar.gz: ca1c5e0976bd15e920b1b799aece5758ebd83b91
5
5
  SHA512:
6
- metadata.gz: 7adaa57f852cc4d06cbdd1810dcbd9849ddb1a8cca84e7eea1652866f2d9a869e1f16746fa90fa49728958563f7fa2f67bfa2003affa417764bb9e10131f5b67
7
- data.tar.gz: 7210f6985708434e81dacc2e2305ce6b6fcfe7f373184cddc2a12bd3c7de43f70322fa57f013560770ffa8e84bab4fb32879d1b7ce71852384de968c1c85ac42
6
+ metadata.gz: 7237112642b298cc2d296be02c66c4324150e5e5917e169b9f7dacd3d7ea3a01b5c6ed32a06fe74e7b26ba41ac8fd29f46b457d607670cfa98f4a10f22750270
7
+ data.tar.gz: c70caa939f21e842cc26b41d9d637da860c3a086561deb6e386d21b668df563cda0524df3130b051a8311d0f6ece9cfd3a2e8952aaecd554d5ab59fbab5a4e34
data/CHANGELOG.md CHANGED
@@ -1,5 +1,8 @@
1
1
  # CHANGLOG
2
2
 
3
+ # v0.0.5 - 2015-01-27
4
+ * implement testlink reporting
5
+
3
6
  # v0.0.4 - 2015-01-23
4
7
  * add multi-environment functionality:one test plan multiple agains
5
8
  multiple urls
@@ -7,7 +7,7 @@ namespace :testlink do
7
7
  raise "No valid testplan defined in config.yml"
8
8
  end
9
9
 
10
- WatirTestlinkFramework::TestLinkPlan::run_plan_cases $config['testlink']['testplans'].keys[0]
10
+ WatirTestlinkFramework::TestLinkPlan::run_plan_cases $config['testlink']['testplans'].keys[0], 'spec'
11
11
  end
12
12
 
13
13
  desc 'run continuious intergration plan'
@@ -25,28 +25,39 @@ module WatirTestlinkFramework
25
25
  return TestLinker.new(server, dev_key)
26
26
  end
27
27
 
28
- def self.casesbyplan(tl,plan)
29
- plan_id = tl.test_plan_by_name($config['testlink']['project'], plan)
30
- return tl.test_cases_for_test_plan(plan_id[0][:id])
28
+ def self.planid_by_name(tl,name)
29
+ plan_id = tl.test_plan_by_name($config['testlink']['project'], name)
30
+ return plan_id[0][:id]
31
31
  end
32
32
 
33
33
  #plans_string comma seperated string with plans
34
34
  def self.run_plan_cases(plans_string, spectask='spec', dryrun=false)
35
35
 
36
36
  tl = self.testlinkplanconnection
37
-
38
37
  plans = plans_string.split(';')
39
38
 
40
39
  plans.each do | plan |
41
- test_cases = self.casesbyplan(tl,plan.strip)
40
+
41
+ plan_id = self.planid_by_name(tl, plan.strip)
42
+ test_cases = tl.test_cases_for_test_plan(plan_id)
43
+
44
+ #create new build
45
+ buildname = "watirbuild_#{Time.new}"
46
+ tl.create_build(plan_id, buildname, 'created by watir_testlink_framework')
47
+
42
48
  if $config['testlink'].has_key?("multi_env") && $config['testlink']['multi_env'] != 0
43
49
  $config['testlink']['testplans'][plan.strip].each do | envname, envarr |
50
+
44
51
  envstr = make_env_string(envarr)
45
- self.execute_cases(tl, envstr,spectask,test_cases,dryrun)
52
+ self.execute_cases(tl, envstr, spectask, test_cases, dryrun)
53
+ self.report_cases(tl, plan_id, test_cases, envstr) if spectask=='junit' && !dryrun
54
+
46
55
  end
56
+
47
57
  else
48
58
  envstr = make_env_string($config['testlink']['testplans'][plan.strip])
49
- self.execute_cases(tl, envstr,spectask, test_cases,dryrun)
59
+ self.execute_cases(tl, envstr, spectask, test_cases, dryrun)
60
+ self.report_cases(tl, plan_id, test_cases, envstr) if spectask=='junit' && !dryrun
50
61
  end
51
62
 
52
63
  end
@@ -78,6 +89,44 @@ module WatirTestlinkFramework
78
89
  return envstr
79
90
  end
80
91
 
92
+ def self.report_cases(tl, plan_id, cases, envstring)
93
+ cases_arr ={}
94
+ require 'pp'
95
+ Dir["reports/*.xml"].each do | report |
96
+ case_arr = XmlSimple::xml_in(report)
97
+ cases_arr[case_arr['testcase'][0]['name']] = case_arr
98
+ end
99
+
100
+ cases.each do | tc |
101
+ tc_customfield = tl.test_case_custom_field_design_value(tl.project_id($config['testlink']['project']),
102
+ tc[1][0]['full_external_id'],
103
+ tc[1][0]['version'].to_i,
104
+ 'RSPEC CASE ID',{:details=>''})
105
+ if cases_arr.has_key?(tc_customfield)
106
+ options = {}
107
+ notes=''
108
+ if cases_arr[tc_customfield]['failures'] == '0'
109
+ status ='p'
110
+ elsif cases_arr[tc_customfield]['failures'] == '1'
111
+ notes += "Message: " + cases_arr[tc_customfield]['testcase'][0]['failure'][0]['message']
112
+ notes += "\n"
113
+ notes += "Type: " + cases_arr[tc_customfield]['testcase'][0]['failure'][0]['type']
114
+ notes += "\n"
115
+ notes += "Content: " + cases_arr[tc_customfield]['testcase'][0]['failure'][0]['content']
116
+ notes += "\n"
117
+ notes += "EnvString: " + envstring
118
+ status ='f'
119
+ else
120
+ status = 'b'
121
+ end
122
+
123
+ options['notes'] = notes
124
+ tl.report_test_case_result(plan_id, tc[0], status, options)
125
+ end
126
+
127
+ end
128
+ end
129
+
81
130
  end
82
131
  end
83
132
 
@@ -1,3 +1,3 @@
1
1
  module WatirTestlinkFramework
2
- VERSION = "0.0.4"
2
+ VERSION = "0.0.5"
3
3
  end
@@ -24,6 +24,7 @@ Gem::Specification.new do |spec|
24
24
  spec.add_runtime_dependency "rspec", "~> 3.1"
25
25
  spec.add_runtime_dependency "rspec_testlink_formatters", "~> 0"
26
26
  spec.add_runtime_dependency "testlink_rspec_utils", "~> 0"
27
+ spec.add_runtime_dependency "xml-simple", "~> 1.1.4"
27
28
  # spec.add_runtime_dependency "watir", "~> 5.0"
28
29
  # spec.add_runtime_dependency "headless", "~> 1.0"
29
30
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: watir_testlink_framework
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.4
4
+ version: 0.0.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Pim Snel
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-01-23 00:00:00.000000000 Z
11
+ date: 2015-01-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -80,6 +80,20 @@ dependencies:
80
80
  - - "~>"
81
81
  - !ruby/object:Gem::Version
82
82
  version: '0'
83
+ - !ruby/object:Gem::Dependency
84
+ name: xml-simple
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - "~>"
88
+ - !ruby/object:Gem::Version
89
+ version: 1.1.4
90
+ type: :runtime
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - "~>"
95
+ - !ruby/object:Gem::Version
96
+ version: 1.1.4
83
97
  description: Watir TestLink Framework combines a lot of fine software like Watir,
84
98
  TestLink, Rspec, Rake, Junit to make it easy to run large sets of watir test cases
85
99
  on different stages of sites.