testability-driver 1.0.3 → 1.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/lib/tdriver-devtools/behaviour/xml/rdoc_behaviour_xml_generator.rb +2 -2
- data/lib/tdriver-devtools/tdriver-devtools.rb +1 -1
- data/lib/tdriver-devtools/tests/feature_tests/lib/custom_rdoc_generator.rb +3 -3
- data/lib/tdriver/base/behaviour/behaviours/object_behaviour_composition.rb +6 -1
- data/lib/tdriver/base/behaviour/behaviours/object_behaviour_description.rb +5 -3
- data/lib/tdriver/base/behaviour/behaviours/object_composition.rb +1 -1
- data/lib/tdriver/base/behaviour/factory.rb +225 -225
- data/lib/tdriver/base/errors.rb +1 -1
- data/lib/tdriver/base/state_object.rb +227 -179
- data/lib/tdriver/base/sut/controller.rb +2 -2
- data/lib/tdriver/base/sut/factory.rb +190 -182
- data/lib/tdriver/base/sut/generic/behaviours/application.rb +69 -25
- data/lib/tdriver/base/sut/generic/behaviours/controller.rb +1 -1
- data/lib/tdriver/base/sut/generic/behaviours/find.rb +4 -4
- data/lib/tdriver/base/sut/generic/behaviours/flash_behaviour.rb +3 -3
- data/lib/tdriver/base/sut/generic/behaviours/sut.rb +350 -165
- data/lib/tdriver/base/sut/generic/behaviours/switchbox_behaviour.rb +9 -9
- data/lib/tdriver/base/sut/generic/behaviours/verification.rb +191 -103
- data/lib/tdriver/base/sut/generic/commands/application.rb +1 -1
- data/lib/tdriver/base/sut/generic/commands/key_sequence.rb +1 -1
- data/lib/tdriver/base/sut/generic/commands/screen_capture.rb +1 -1
- data/lib/tdriver/base/sut/generic/plugin.rb +1 -1
- data/lib/tdriver/base/sut/sut.rb +5 -1
- data/lib/tdriver/base/test_object/abstract.rb +136 -151
- data/lib/tdriver/base/test_object/adapter.rb +293 -82
- data/lib/tdriver/base/test_object/behaviours/syncronization.rb +20 -17
- data/lib/tdriver/base/test_object/behaviours/test_object.rb +159 -532
- data/lib/tdriver/base/test_object/cache.rb +1 -1
- data/lib/tdriver/base/test_object/factory.rb +254 -605
- data/lib/tdriver/base/test_object/identificator.rb +1 -1
- data/lib/tdriver/base/test_object/loader.rb +1 -1
- data/lib/tdriver/base/test_object/verification.rb +17 -17
- data/lib/tdriver/loader.rb +20 -9
- data/lib/tdriver/report/report.rb +5 -0
- data/lib/tdriver/report/report_creator.rb +2 -2
- data/lib/tdriver/report/report_cucumber_listener.rb +4 -4
- data/lib/tdriver/report/report_cucumber_reporter.rb +4 -4
- data/lib/tdriver/report/report_execution_statistics.rb +22 -22
- data/lib/tdriver/report/report_grouping.rb +2 -2
- data/lib/tdriver/report/report_javascript.rb +11 -4
- data/lib/tdriver/report/report_test_case_run.rb +2 -2
- data/lib/tdriver/report/report_test_run.rb +5 -5
- data/lib/tdriver/report/report_test_unit.rb +74 -26
- data/lib/tdriver/report/report_writer.rb +70 -13
- data/lib/tdriver/tdriver.rb +17 -8
- data/lib/tdriver/util/common/array.rb +1 -1
- data/lib/tdriver/util/common/crc16.rb +1 -1
- data/lib/tdriver/util/common/environment.rb +1 -1
- data/lib/tdriver/util/common/file.rb +18 -9
- data/lib/tdriver/util/common/gem.rb +1 -1
- data/lib/tdriver/util/common/hash.rb +21 -0
- data/lib/tdriver/util/common/kernel.rb +1 -1
- data/lib/tdriver/util/common/loader.rb +5 -2
- data/lib/tdriver/util/common/numeric.rb +54 -3
- data/lib/tdriver/util/common/retryable.rb +30 -12
- data/lib/tdriver/util/common/stackable.rb +185 -0
- data/lib/tdriver/util/common/string.rb +21 -5
- data/lib/tdriver/util/{dbaccess/dbaccess.rb → database/access.rb} +4 -1
- data/lib/tdriver/util/{dbaccess/dbconnection.rb → database/connection.rb} +3 -0
- data/lib/tdriver/util/{dbaccess → database}/error.rb +0 -1
- data/lib/tdriver/util/{dbaccess → database}/loader.rb +5 -6
- data/lib/tdriver/util/{dynamic_attribute_filter.rb → filters/dynamic_attributes.rb} +1 -1
- data/lib/tdriver/util/hooking/hooking.rb +477 -0
- data/lib/tdriver/util/loader.rb +35 -29
- data/lib/tdriver/util/localisation/error.rb +0 -1
- data/lib/tdriver/util/localisation/loader.rb +1 -4
- data/lib/tdriver/util/localisation/localisation.rb +30 -27
- data/lib/tdriver/util/{common.rb → logger/loader.rb} +2 -4
- data/lib/tdriver/util/logger/logger.rb +574 -0
- data/lib/tdriver/util/operator_data/loader.rb +4 -3
- data/lib/tdriver/util/operator_data/operator_data.rb +5 -5
- data/lib/tdriver/util/parameter/parameter.rb +7 -1
- data/lib/tdriver/util/parameter/parameter_hash.rb +1 -1
- data/lib/tdriver/util/parameter/parameter_template.rb +1 -1
- data/lib/tdriver/util/parameter/parameter_user_api.rb +28 -20
- data/lib/tdriver/util/parameter/parameter_xml.rb +1 -1
- data/lib/tdriver/util/plugin/abstract.rb +1 -1
- data/lib/tdriver/util/plugin/service.rb +1 -1
- data/lib/tdriver/util/{localisation.rb → recorder/loader.rb} +4 -3
- data/lib/tdriver/util/recorder/recorder.rb +66 -0
- data/lib/tdriver/util/recorder/scripter.rb +258 -0
- data/lib/tdriver/util/{stats.rb → statistics/statistics.rb} +7 -8
- data/lib/tdriver/util/user_data/error.rb +0 -1
- data/lib/tdriver/util/user_data/loader.rb +1 -2
- data/lib/tdriver/util/user_data/user_data.rb +6 -6
- data/lib/tdriver/util/video/camera.rb +67 -0
- data/lib/tdriver/util/video/camera_linux.rb +139 -0
- data/lib/tdriver/util/video/camera_windows.rb +174 -0
- data/lib/tdriver/util/video/loader.rb +31 -0
- data/lib/tdriver/util/video/video_utils.rb +139 -0
- data/lib/tdriver/util/xml/abstraction.rb +56 -5
- data/lib/tdriver/util/xml/builder.rb +2 -5
- data/lib/tdriver/util/{parameter.rb → xml/comment.rb} +10 -2
- data/lib/tdriver/util/xml/loader.rb +32 -22
- data/lib/tdriver/util/xml/nil_node.rb +2 -2
- data/lib/tdriver/util/xml/parsers/loader.rb +0 -1
- data/lib/tdriver/util/xml/parsers/nokogiri/abstraction.rb +18 -44
- data/lib/tdriver/util/xml/parsers/nokogiri/attribute.rb +9 -13
- data/lib/tdriver/util/xml/parsers/nokogiri/builder.rb +9 -3
- data/lib/tdriver/util/xml/parsers/nokogiri/comment.rb +39 -0
- data/lib/tdriver/util/xml/parsers/nokogiri/document.rb +6 -11
- data/lib/tdriver/util/xml/parsers/nokogiri/element.rb +2 -122
- data/lib/tdriver/util/xml/parsers/nokogiri/loader.rb +26 -16
- data/lib/tdriver/util/xml/parsers/nokogiri/node.rb +203 -0
- data/lib/tdriver/util/xml/parsers/nokogiri/nodeset.rb +1 -2
- data/lib/tdriver/util/xml/parsers/nokogiri/text.rb +2 -20
- data/lib/tdriver/util/xml/xml.rb +52 -20
- data/lib/tdriver/verify/verify.rb +238 -81
- data/xml/behaviours/generic.xml +12 -10
- metadata +156 -180
- data/lib/tdriver/base/test_object/factory_new.rb +0 -202
- data/lib/tdriver/util/hooking.rb +0 -434
- data/lib/tdriver/util/logger.rb +0 -506
- data/lib/tdriver/util/recorder.rb +0 -297
- data/lib/tdriver/util/video_utils.rb +0 -384
- data/lib/tdriver/util/xml/nil_element.rb +0 -89
|
@@ -511,7 +511,7 @@ module MobyBase
|
|
|
511
511
|
end
|
|
512
512
|
|
|
513
513
|
# enable hooking for performance measurement & debug logging
|
|
514
|
-
|
|
514
|
+
TDriver::Hooking.hook_methods( self ) if defined?( TDriver::Hooking )
|
|
515
515
|
|
|
516
516
|
end # TestObjectIdentificator
|
|
517
517
|
|
|
@@ -21,7 +21,7 @@
|
|
|
21
21
|
require File.expand_path( File.join( File.dirname( __FILE__ ), 'abstract' ) )
|
|
22
22
|
|
|
23
23
|
# load test object identificator
|
|
24
|
-
require File.expand_path( File.join( File.dirname( __FILE__ ), 'identificator' ) )
|
|
24
|
+
#require File.expand_path( File.join( File.dirname( __FILE__ ), 'identificator' ) )
|
|
25
25
|
|
|
26
26
|
# load test object factory
|
|
27
27
|
require File.expand_path( File.join( File.dirname( __FILE__ ), 'factory' ) )
|
|
@@ -9,13 +9,13 @@ module TDriver
|
|
|
9
9
|
# TODO: Document me (TestObjectFactory::check_verify_always_reporting_settings)
|
|
10
10
|
def check_verify_always_reporting_settings
|
|
11
11
|
|
|
12
|
-
@@reporter_attached =
|
|
12
|
+
@@reporter_attached = $parameters[ :report_attach_continuous_verification_to_reporter, 'false' ]
|
|
13
13
|
|
|
14
|
-
@@rcv_raise_errors =
|
|
14
|
+
@@rcv_raise_errors = $parameters[ :report_continuous_verification_raise_errors, 'true' ]
|
|
15
15
|
|
|
16
|
-
@@rcv_fail_test_case =
|
|
16
|
+
@@rcv_fail_test_case = $parameters[ :report_continuous_verification_fail_test_case_on_error, 'true' ]
|
|
17
17
|
|
|
18
|
-
@@rvc_capture_screen =
|
|
18
|
+
@@rvc_capture_screen = $parameters[ :report_continuous_verification_capture_screen_on_error, 'true' ]
|
|
19
19
|
|
|
20
20
|
end
|
|
21
21
|
|
|
@@ -35,13 +35,13 @@ module TDriver
|
|
|
35
35
|
def initialize_settings
|
|
36
36
|
|
|
37
37
|
# defaults
|
|
38
|
-
@@global_reporter_attached =
|
|
38
|
+
@@global_reporter_attached = $parameters[ :report_attach_continuous_verification_to_reporter, 'false' ]
|
|
39
39
|
|
|
40
|
-
@@rcv_global_raise_errors =
|
|
40
|
+
@@rcv_global_raise_errors = $parameters[ :report_continuous_verification_raise_errors, 'true' ]
|
|
41
41
|
|
|
42
|
-
@@rcv_global_fail_test_case =
|
|
42
|
+
@@rcv_global_fail_test_case = $parameters[ :report_continuous_verification_fail_test_case_on_error, 'true' ]
|
|
43
43
|
|
|
44
|
-
@@rvc_global_capture_screen =
|
|
44
|
+
@@rvc_global_capture_screen = $parameters[ :report_continuous_verification_capture_screen_on_error, 'true' ]
|
|
45
45
|
|
|
46
46
|
@@inside_verify = false
|
|
47
47
|
|
|
@@ -64,7 +64,7 @@ module TDriver
|
|
|
64
64
|
|
|
65
65
|
@@inside_verify = true
|
|
66
66
|
|
|
67
|
-
logging_enabled =
|
|
67
|
+
logging_enabled = $logger.enabled
|
|
68
68
|
|
|
69
69
|
sut.verify_blocks.each do | verify |
|
|
70
70
|
|
|
@@ -72,7 +72,7 @@ module TDriver
|
|
|
72
72
|
|
|
73
73
|
begin
|
|
74
74
|
|
|
75
|
-
|
|
75
|
+
$logger.enabled = false
|
|
76
76
|
|
|
77
77
|
begin
|
|
78
78
|
|
|
@@ -103,8 +103,8 @@ module TDriver
|
|
|
103
103
|
|
|
104
104
|
TDriverReportAPI::tdriver_report_log("<hr />")
|
|
105
105
|
|
|
106
|
-
|
|
107
|
-
|
|
106
|
+
$logger.enabled = logging_enabled
|
|
107
|
+
$logger.log "behaviour", "FAIL;Verification #{verify.message.nil? ? '' : '\"' << verify.message << '\" '}failed:#{e.to_s}.\n#{verify.timeout.nil? ? '' : ' using timeout ' + verify.timeout.to_s}.;#{sut.id.to_s+';sut'};{};verify_always;" << verify.expected.to_s
|
|
108
108
|
|
|
109
109
|
end
|
|
110
110
|
|
|
@@ -142,9 +142,9 @@ module TDriver
|
|
|
142
142
|
|
|
143
143
|
TDriverReportAPI::tdriver_report_log("<hr />")
|
|
144
144
|
|
|
145
|
-
|
|
145
|
+
$logger.enabled = logging_enabled
|
|
146
146
|
|
|
147
|
-
|
|
147
|
+
$logger.log "behaviour", "FAIL;Verification #{verify.message.nil? ? '' : '\"' << verify.message << '\" '}failed:#{e.to_s}.\n#{verify.timeout.nil? ? '' : ' using timeout ' + verify.timeout.to_s}.;#{sut.id.to_s+';sut'};{};verify_always;" << verify.expected.to_s
|
|
148
148
|
|
|
149
149
|
end
|
|
150
150
|
|
|
@@ -152,9 +152,9 @@ module TDriver
|
|
|
152
152
|
|
|
153
153
|
rescue Exception => e
|
|
154
154
|
|
|
155
|
-
|
|
155
|
+
$logger.enabled = logging_enabled
|
|
156
156
|
|
|
157
|
-
|
|
157
|
+
$logger.log "behaviour", "FAIL;Verification #{verify.message.nil? ? '' : '\"' << verify.message << '\" '}failed:#{e.to_s}.\n#{verify.timeout.nil? ? '' : ' using timeout ' + verify.timeout.to_s}.;#{sut.id.to_s+';sut'};{};verify_always;" << verify.expected.to_s
|
|
158
158
|
|
|
159
159
|
@@inside_verify = false
|
|
160
160
|
|
|
@@ -169,7 +169,7 @@ module TDriver
|
|
|
169
169
|
|
|
170
170
|
ensure
|
|
171
171
|
|
|
172
|
-
|
|
172
|
+
$logger.enabled = logging_enabled
|
|
173
173
|
@@inside_verify = false
|
|
174
174
|
|
|
175
175
|
end
|
data/lib/tdriver/loader.rb
CHANGED
|
@@ -19,18 +19,29 @@
|
|
|
19
19
|
|
|
20
20
|
# load globally used external modules
|
|
21
21
|
require 'singleton'
|
|
22
|
-
require 'set'
|
|
23
22
|
|
|
24
|
-
#
|
|
25
|
-
begin; require File.expand_path( File.join( File.dirname( __FILE__ ), 'native_extensions' ) ); rescue LoadError; end
|
|
23
|
+
#require 'set'
|
|
26
24
|
|
|
27
|
-
|
|
28
|
-
|
|
25
|
+
begin
|
|
26
|
+
|
|
27
|
+
# load native extensions if available
|
|
28
|
+
require File.expand_path( File.join( File.dirname( __FILE__ ), 'native_extensions' ) )
|
|
29
|
+
|
|
30
|
+
rescue LoadError
|
|
31
|
+
|
|
32
|
+
# do nothing
|
|
33
|
+
|
|
34
|
+
end
|
|
35
|
+
|
|
36
|
+
# utility modules
|
|
37
|
+
require File.expand_path( File.join( File.dirname( __FILE__ ), 'util/loader.rb' ) )
|
|
29
38
|
|
|
30
39
|
# base modules
|
|
31
|
-
require File.expand_path( File.join( File.dirname( __FILE__ ), 'base/loader' ) )
|
|
40
|
+
require File.expand_path( File.join( File.dirname( __FILE__ ), 'base/loader.rb' ) )
|
|
41
|
+
|
|
42
|
+
# reporting modules
|
|
43
|
+
require File.expand_path( File.join( File.dirname( __FILE__ ), 'report/report.rb' ) )
|
|
32
44
|
|
|
33
|
-
#
|
|
34
|
-
require File.expand_path( File.join( File.dirname( __FILE__ ), '
|
|
35
|
-
require File.expand_path( File.join( File.dirname( __FILE__ ), 'verify/verify' ) )
|
|
45
|
+
# verify module
|
|
46
|
+
require File.expand_path( File.join( File.dirname( __FILE__ ), 'verify/verify.rb' ) )
|
|
36
47
|
|
|
@@ -23,6 +23,9 @@ require File.expand_path( File.join( File.dirname( __FILE__ ), 'error_recovery/t
|
|
|
23
23
|
require File.expand_path( File.join( File.dirname( __FILE__ ), 'report_file_capture' ) )
|
|
24
24
|
require File.expand_path( File.join( File.dirname( __FILE__ ), 'report_crash_file_capture' ) )
|
|
25
25
|
require File.expand_path( File.join( File.dirname( __FILE__ ), 'report_javascript' ) )
|
|
26
|
+
|
|
27
|
+
require 'chronic_duration' if Gem.available?('chronic_duration')
|
|
28
|
+
|
|
26
29
|
require File.expand_path( File.join( File.dirname( __FILE__ ), 'report_writer' ) )
|
|
27
30
|
require File.expand_path( File.join( File.dirname( __FILE__ ), 'report_combine' ) )
|
|
28
31
|
require File.expand_path( File.join( File.dirname( __FILE__ ), 'report_data_table' ) )
|
|
@@ -42,7 +45,9 @@ require File.expand_path( File.join( File.dirname( __FILE__ ), 'report_data_pres
|
|
|
42
45
|
|
|
43
46
|
|
|
44
47
|
if MobyUtil::Parameter[ :custom_error_recovery_module, nil ]!=nil
|
|
48
|
+
|
|
45
49
|
require MobyUtil::Parameter[ :custom_error_recovery_module ]
|
|
50
|
+
|
|
46
51
|
end
|
|
47
52
|
|
|
48
53
|
|
|
@@ -280,7 +280,7 @@ module TDriverReportCreator
|
|
|
280
280
|
|
|
281
281
|
each_video_device do | video_device, device_index |
|
|
282
282
|
begin
|
|
283
|
-
|
|
283
|
+
FileUtils.copy( "cam_" + device_index + "_" + @_video_file_name, "cam_" + device_index + "_" + @_previous_video_file_name )
|
|
284
284
|
rescue
|
|
285
285
|
# do nothing..
|
|
286
286
|
end
|
|
@@ -594,4 +594,4 @@ end #TDriverReportCreator
|
|
|
594
594
|
|
|
595
595
|
|
|
596
596
|
|
|
597
|
-
|
|
597
|
+
|
|
@@ -51,21 +51,21 @@ module TDriverReport
|
|
|
51
51
|
# === raises
|
|
52
52
|
def step_name(keyword, step_match, status, source_indent, background)
|
|
53
53
|
if status == :passed
|
|
54
|
-
step_name = step_match.format_args(lambda{|param| "
|
|
54
|
+
step_name = step_match.format_args(lambda{|param| "#{param}"})
|
|
55
55
|
update_test_case("#{step_name} PASSED")
|
|
56
56
|
@tc_status='passed'
|
|
57
57
|
end
|
|
58
58
|
if status == :failed
|
|
59
|
-
step_name = step_match.format_args(lambda{|param| "
|
|
59
|
+
step_name = step_match.format_args(lambda{|param| "#{param}"})
|
|
60
60
|
update_test_case("#{step_name} FAILED")
|
|
61
61
|
@tc_status='failed'
|
|
62
62
|
end
|
|
63
63
|
if status == :skipped
|
|
64
|
-
step_name = step_match.format_args(lambda{|param| "
|
|
64
|
+
step_name = step_match.format_args(lambda{|param| "#{param}"})
|
|
65
65
|
update_test_case("#{step_name} SKIPPED")
|
|
66
66
|
end
|
|
67
67
|
if status == :undefined
|
|
68
|
-
step_name = step_match.format_args(lambda{|param| "
|
|
68
|
+
step_name = step_match.format_args(lambda{|param| "#{param}"})
|
|
69
69
|
update_test_case("#{step_name} NOT RUN")
|
|
70
70
|
@tc_status='not run'
|
|
71
71
|
end
|
|
@@ -49,21 +49,21 @@ module TDriverReport
|
|
|
49
49
|
# === raises
|
|
50
50
|
def step_name(keyword, step_match, status, source_indent, background)
|
|
51
51
|
if status == :passed
|
|
52
|
-
step_name = step_match.format_args(lambda{|param| "
|
|
52
|
+
step_name = step_match.format_args(lambda{|param| "#{param}"})
|
|
53
53
|
update_test_case("#{step_name} PASSED")
|
|
54
54
|
@tc_status='passed'
|
|
55
55
|
end
|
|
56
56
|
if status == :failed
|
|
57
|
-
step_name = step_match.format_args(lambda{|param| "
|
|
57
|
+
step_name = step_match.format_args(lambda{|param| "#{param}"})
|
|
58
58
|
update_test_case("#{step_name} FAILED")
|
|
59
59
|
@tc_status='failed'
|
|
60
60
|
end
|
|
61
61
|
if status == :skipped
|
|
62
|
-
step_name = step_match.format_args(lambda{|param| "
|
|
62
|
+
step_name = step_match.format_args(lambda{|param| "#{param}"})
|
|
63
63
|
update_test_case("#{step_name} SKIPPED")
|
|
64
64
|
end
|
|
65
65
|
if status == :undefined
|
|
66
|
-
step_name = step_match.format_args(lambda{|param| "
|
|
66
|
+
step_name = step_match.format_args(lambda{|param| "#{param}"})
|
|
67
67
|
update_test_case("#{step_name} NOT RUN")
|
|
68
68
|
@tc_status='not run'
|
|
69
69
|
end
|
|
@@ -59,21 +59,21 @@ class ReportingStatistics
|
|
|
59
59
|
def generate_statistics_headers()
|
|
60
60
|
status_heads=Array.new
|
|
61
61
|
@pass_statuses.each do |status|
|
|
62
|
-
status_heads << "<
|
|
62
|
+
status_heads << "<th abbr=\"link_column\"><b>#{status}</b></th>"
|
|
63
63
|
end
|
|
64
64
|
@fail_statuses.each do |status|
|
|
65
|
-
status_heads << "<
|
|
65
|
+
status_heads << "<th abbr=\"link_column\"><b>#{status}</b></th>"
|
|
66
66
|
end
|
|
67
67
|
@not_run_statuses.each do |status|
|
|
68
|
-
status_heads << "<
|
|
68
|
+
status_heads << "<th abbr=\"link_column\"><b>#{status}</b></th>"
|
|
69
69
|
end
|
|
70
|
-
status_heads << "<
|
|
71
|
-
status_heads << "<
|
|
72
|
-
status_heads << "<
|
|
73
|
-
status_heads << "<
|
|
74
|
-
status_heads << "<
|
|
75
|
-
status_heads << "<
|
|
76
|
-
status_heads << "<
|
|
70
|
+
status_heads << "<th abbr=\"link_column\"><b>Reboots</b></th>"
|
|
71
|
+
status_heads << "<th abbr=\"link_column\"><b>Crashes</b></th>"
|
|
72
|
+
status_heads << "<th abbr=\"link_column\"><b>Duration</b></th>"
|
|
73
|
+
status_heads << "<th abbr=\"link_column\"><b>Dump count</b></th>"
|
|
74
|
+
status_heads << "<th abbr=\"link_column\"><b>Sent bytes</b></th>"
|
|
75
|
+
status_heads << "<th abbr=\"link_column\"><b>Received bytes</b></th>"
|
|
76
|
+
status_heads << "<th abbr=\"link_column\"><b>Used mem</b></th>"
|
|
77
77
|
status_heads
|
|
78
78
|
end
|
|
79
79
|
|
|
@@ -289,16 +289,16 @@ class ReportingStatistics
|
|
|
289
289
|
table_body=Array.new
|
|
290
290
|
reset_total_statistics()
|
|
291
291
|
collect_test_case_statistics()
|
|
292
|
-
table_body='<table id="statistics_table" align="center" border="0" cellspacing="0" style="width:100%;">'<<
|
|
293
|
-
'<tr>'<<
|
|
294
|
-
'<
|
|
295
|
-
'<b>Row</b></
|
|
296
|
-
'<
|
|
297
|
-
'<b>Name</b></
|
|
298
|
-
'<
|
|
299
|
-
'<b>Total</b></
|
|
292
|
+
table_body='<table id="statistics_table" class="sortable" align="center" border="0" cellspacing="0" style="width:100%;">'<<
|
|
293
|
+
'<thead><tr>'<<
|
|
294
|
+
'<th>'<<
|
|
295
|
+
'<b>Row</b></th>'<<
|
|
296
|
+
'<th abbr="link_column">'<<
|
|
297
|
+
'<b>Name</b></th>'<<
|
|
298
|
+
'<th abbr="link_column">'<<
|
|
299
|
+
'<b>Total</b></th>'<<
|
|
300
300
|
generate_statistics_headers.to_s <<
|
|
301
|
-
'</tr>'
|
|
301
|
+
'</tr></thead><tbody>'
|
|
302
302
|
|
|
303
303
|
test_case_added=Array.new
|
|
304
304
|
row=1
|
|
@@ -326,14 +326,14 @@ class ReportingStatistics
|
|
|
326
326
|
end
|
|
327
327
|
|
|
328
328
|
|
|
329
|
-
table_body << '
|
|
330
|
-
table_body << '<tr>' <<
|
|
329
|
+
table_body << '</tbody>'
|
|
330
|
+
table_body << '<tfoot><tr>' <<
|
|
331
331
|
'<td></td><td>'<<
|
|
332
332
|
'<b>Total</b></td>'
|
|
333
333
|
@total_statistics_arr.each do |statistic|
|
|
334
334
|
table_body << "<td><b>#{statistic[1]}</b></td>"
|
|
335
335
|
end
|
|
336
|
-
table_body << '</tr>' <<
|
|
336
|
+
table_body << '</tr></tfoot>' <<
|
|
337
337
|
'</table>'
|
|
338
338
|
|
|
339
339
|
|
|
@@ -102,7 +102,7 @@ class ReportingGroups
|
|
|
102
102
|
test_statistics=tog_list_statistics(tc_arr,name,status)
|
|
103
103
|
if test_statistics != 0
|
|
104
104
|
html_body='<dl class="togList">'<<
|
|
105
|
-
'<dt onclick="tog(this)" style="background-color: #CCCCCC;"><b><span><input id="Button1" type="button" value="
|
|
105
|
+
'<dt onclick="tog(this)" style="background-color: #CCCCCC;"><b><span><input id="Button1" type="button" value="Close" class="btn" /></span> '<<
|
|
106
106
|
name.to_s<<
|
|
107
107
|
'</b> '<<
|
|
108
108
|
'</dt>'<<
|
|
@@ -115,7 +115,7 @@ class ReportingGroups
|
|
|
115
115
|
end
|
|
116
116
|
else
|
|
117
117
|
html_body='<dl class="togList">'<<
|
|
118
|
-
'<dt onclick="tog(this)" style="background-color: #CCCCCC;"><b><span><input id="Button1" type="button" value="
|
|
118
|
+
'<dt onclick="tog(this)" style="background-color: #CCCCCC;"><b><span><input id="Button1" type="button" value="Close" class="btn" /></span> '<<
|
|
119
119
|
name.to_s<<
|
|
120
120
|
'</b> '<<
|
|
121
121
|
'</dt>'<<
|
|
@@ -30,10 +30,17 @@ module TDriverReportJavascript
|
|
|
30
30
|
'/* get dd */'<<
|
|
31
31
|
"do{ dd = dd.nextSibling } while(dd.tagName!='DD');"<<
|
|
32
32
|
'toOpen =!dd.style.display;'<<
|
|
33
|
-
"dd.style.display = toOpen? '
|
|
33
|
+
"dd.style.display = toOpen? 'none':'';"<<
|
|
34
34
|
"dt.getElementsByTagName('span')[0].innerHTML"<<
|
|
35
|
-
"= toOpen? '<input id=\"Button1\" type=\"button\" value=\"
|
|
35
|
+
"= toOpen? '<input id=\"Button1\" type=\"button\" value=\"Open\" class=\"btn\" />':'<input id=\"Button1\" type=\"button\" value=\"Close\" class=\"btn\" style=\"background-color: #FFFFFF\" />' ;"<<
|
|
36
36
|
'}'<<
|
|
37
|
+
get_table_sorting_java_script <<
|
|
38
|
+
'function init()
|
|
39
|
+
{
|
|
40
|
+
var Table1Sorter = new TSorter;
|
|
41
|
+
Table1Sorter.init(\'statistics_table\');
|
|
42
|
+
}
|
|
43
|
+
window.onload = init;'<<
|
|
37
44
|
'</script>'
|
|
38
45
|
java_script
|
|
39
46
|
end
|
|
@@ -111,11 +118,11 @@ module TDriverReportJavascript
|
|
|
111
118
|
{
|
|
112
119
|
case \"link_column\":
|
|
113
120
|
get = function(index){
|
|
114
|
-
return getCell(index).firstChild.firstChild.nodeValue;
|
|
121
|
+
return parseFloat(getCell(index).firstChild.firstChild.nodeValue);
|
|
115
122
|
};
|
|
116
123
|
break;
|
|
117
124
|
default:
|
|
118
|
-
get = function(index){ return getCell(index).firstChild.nodeValue;};
|
|
125
|
+
get = function(index){ return parseInt(getCell(index).firstChild.nodeValue);};
|
|
119
126
|
break;
|
|
120
127
|
};
|
|
121
128
|
}
|
|
@@ -491,13 +491,13 @@ module TDriverReportCreator
|
|
|
491
491
|
each_video_device do | video_device, device_index |
|
|
492
492
|
|
|
493
493
|
begin
|
|
494
|
-
|
|
494
|
+
FileUtils.copy("cam_" + device_index + "_" + @tc_video_filename, video_folder)
|
|
495
495
|
rescue
|
|
496
496
|
# Copy failed, do nothing
|
|
497
497
|
end
|
|
498
498
|
|
|
499
499
|
begin
|
|
500
|
-
|
|
500
|
+
FileUtils.copy("cam_" + device_index + "_" + @tc_previous_video_filename, video_folder)
|
|
501
501
|
rescue
|
|
502
502
|
# Copy failed, do nothing
|
|
503
503
|
end
|
|
@@ -473,7 +473,7 @@ module TDriverReportCreator
|
|
|
473
473
|
write_page_start(@report_folder+'/cases/statistics_index.html','Statistics')
|
|
474
474
|
write_page_end(@report_folder+'/cases/statistics_index.html')
|
|
475
475
|
rescue Exception => e
|
|
476
|
-
Kernel::raise e, "Unable to create report folder", caller
|
|
476
|
+
Kernel::raise e, "Unable to create report folder: #{@report_folder}", caller
|
|
477
477
|
end
|
|
478
478
|
return nil
|
|
479
479
|
end
|
|
@@ -606,7 +606,7 @@ module TDriverReportCreator
|
|
|
606
606
|
MobyUtil::Logger.instance.enabled=false
|
|
607
607
|
lang_version='-'
|
|
608
608
|
begin
|
|
609
|
-
if MobyUtil::Parameter[sut_id][:type]=='S60' || MobyUtil::Parameter[sut_id][:type]=='
|
|
609
|
+
if MobyUtil::Parameter[sut_id][:type]=='S60' || MobyUtil::Parameter[sut_id][:type]=='Symbian'
|
|
610
610
|
lang_version=sut_attributes[:sut].sysinfo( :Lang_version )
|
|
611
611
|
end
|
|
612
612
|
if MobyUtil::Parameter[sut_id][:type]=='QT'
|
|
@@ -637,7 +637,7 @@ module TDriverReportCreator
|
|
|
637
637
|
MobyUtil::Logger.instance.enabled=false
|
|
638
638
|
sw_version='-'
|
|
639
639
|
begin
|
|
640
|
-
if MobyUtil::Parameter[sut_id][:type]=='S60' || MobyUtil::Parameter[sut_id][:type]=='
|
|
640
|
+
if MobyUtil::Parameter[sut_id][:type]=='S60' || MobyUtil::Parameter[sut_id][:type]=='Symbian'
|
|
641
641
|
sw_version=sut_attributes[:sut].sysinfo( :Sw_version )
|
|
642
642
|
end
|
|
643
643
|
if MobyUtil::Parameter[sut_id][:type]=='QT'
|
|
@@ -668,7 +668,7 @@ module TDriverReportCreator
|
|
|
668
668
|
MobyUtil::Logger.instance.enabled=false
|
|
669
669
|
memory=0
|
|
670
670
|
begin
|
|
671
|
-
if MobyUtil::Parameter[sut_id][:type]=='S60' || MobyUtil::Parameter[sut_id][:type]=='
|
|
671
|
+
if MobyUtil::Parameter[sut_id][:type]=='S60' || MobyUtil::Parameter[sut_id][:type]=='Symbian'
|
|
672
672
|
memory=sut_attributes[:sut].sysinfo( :Get_used_ram )
|
|
673
673
|
end
|
|
674
674
|
if MobyUtil::Parameter[sut_id][:type]=='QT'
|
|
@@ -700,7 +700,7 @@ module TDriverReportCreator
|
|
|
700
700
|
MobyUtil::Logger.instance.enabled=false
|
|
701
701
|
memory=0
|
|
702
702
|
begin
|
|
703
|
-
if MobyUtil::Parameter[sut_id][:type]=='S60' || MobyUtil::Parameter[sut_id][:type]=='
|
|
703
|
+
if MobyUtil::Parameter[sut_id][:type]=='S60' || MobyUtil::Parameter[sut_id][:type]=='Symbian'
|
|
704
704
|
memory=sut_attributes[:sut].sysinfo( :Get_total_ram )
|
|
705
705
|
end
|
|
706
706
|
if MobyUtil::Parameter[sut_id][:type]=='QT'
|
|
@@ -1,32 +1,50 @@
|
|
|
1
1
|
############################################################################
|
|
2
|
-
##
|
|
3
|
-
## Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
|
|
4
|
-
## All rights reserved.
|
|
5
|
-
## Contact: Nokia Corporation (testabilitydriver@nokia.com)
|
|
6
|
-
##
|
|
7
|
-
## This file is part of Testability Driver.
|
|
8
|
-
##
|
|
9
|
-
## If you have questions regarding the use of this file, please contact
|
|
10
|
-
## Nokia at testabilitydriver@nokia.com .
|
|
11
|
-
##
|
|
12
|
-
## This library is free software; you can redistribute it and/or
|
|
13
|
-
## modify it under the terms of the GNU Lesser General Public
|
|
14
|
-
## License version 2.1 as published by the Free Software Foundation
|
|
15
|
-
## and appearing in the file LICENSE.LGPL included in the packaging
|
|
16
|
-
## of this file.
|
|
17
|
-
##
|
|
2
|
+
##
|
|
3
|
+
## Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
|
|
4
|
+
## All rights reserved.
|
|
5
|
+
## Contact: Nokia Corporation (testabilitydriver@nokia.com)
|
|
6
|
+
##
|
|
7
|
+
## This file is part of Testability Driver.
|
|
8
|
+
##
|
|
9
|
+
## If you have questions regarding the use of this file, please contact
|
|
10
|
+
## Nokia at testabilitydriver@nokia.com .
|
|
11
|
+
##
|
|
12
|
+
## This library is free software; you can redistribute it and/or
|
|
13
|
+
## modify it under the terms of the GNU Lesser General Public
|
|
14
|
+
## License version 2.1 as published by the Free Software Foundation
|
|
15
|
+
## and appearing in the file LICENSE.LGPL included in the packaging
|
|
16
|
+
## of this file.
|
|
17
|
+
##
|
|
18
18
|
############################################################################
|
|
19
19
|
|
|
20
20
|
|
|
21
21
|
require File.expand_path( File.join( File.dirname( __FILE__ ), 'report' ) )
|
|
22
|
-
#Report module which contains the
|
|
23
|
-
|
|
22
|
+
#Report module which contains the Test::Unit report formatter
|
|
23
|
+
def create_global_reporter_hook_for_test_unit()
|
|
24
|
+
eval("
|
|
25
|
+
module Test #:nodoc:all
|
|
26
|
+
module Unit
|
|
27
|
+
module UI
|
|
28
|
+
module Console
|
|
29
|
+
class TestRunner
|
|
30
|
+
def create_mediator(suite)
|
|
31
|
+
# swap in TDriver custom mediator
|
|
32
|
+
return TDriverReportTestUnit::TestUnit.new(suite)
|
|
33
|
+
end
|
|
34
|
+
end #TestRunner
|
|
35
|
+
end #Console
|
|
36
|
+
end #UI
|
|
37
|
+
end #Unit
|
|
38
|
+
end #Test
|
|
39
|
+
")
|
|
40
|
+
end
|
|
41
|
+
module TDriverReportTestUnit
|
|
24
42
|
def create_test_unit_formatter()
|
|
25
43
|
eval "
|
|
26
44
|
require 'test/unit'
|
|
27
45
|
require 'test/unit/ui/console/testrunner'
|
|
28
46
|
#class for listening test unit execution process
|
|
29
|
-
class TestUnit < Test::Unit::UI::TestRunnerMediator
|
|
47
|
+
class TestUnit < Test::Unit::UI::TestRunnerMediator
|
|
30
48
|
include TDriverReportCreator
|
|
31
49
|
def initialize(suite, report_mgr = nil)
|
|
32
50
|
super(suite)
|
|
@@ -36,13 +54,13 @@ module TDriverReport
|
|
|
36
54
|
add_listener(Test::Unit::UI::TestRunnerMediator::STARTED, &method(:started))
|
|
37
55
|
add_listener(Test::Unit::TestCase::STARTED, &method(:test_started))
|
|
38
56
|
add_listener(Test::Unit::TestCase::FINISHED, &method(:test_finished))
|
|
39
|
-
add_listener(Test::Unit::TestResult::FAULT, &method(:fault))
|
|
57
|
+
add_listener(Test::Unit::TestResult::FAULT, &method(:fault))
|
|
40
58
|
end
|
|
41
59
|
def get_class_name(full_test_name) #:nodoc:
|
|
42
60
|
begin
|
|
43
61
|
name=full_test_name
|
|
44
62
|
name=name.gsub(/[)]/,'')
|
|
45
|
-
name_arr=name.split('(')
|
|
63
|
+
name_arr=name.split('(')
|
|
46
64
|
return [name_arr[1].gsub(/[:]/,'_'),name_arr[0].gsub(/[:]/,'_')]
|
|
47
65
|
rescue
|
|
48
66
|
return ['Ruby test',full_test_name]
|
|
@@ -53,7 +71,7 @@ module TDriverReport
|
|
|
53
71
|
# === params
|
|
54
72
|
# === returns
|
|
55
73
|
# === raises
|
|
56
|
-
def started(result)
|
|
74
|
+
def started(result)
|
|
57
75
|
start_run()
|
|
58
76
|
add_report_group(@current_suite_name+'|')
|
|
59
77
|
end
|
|
@@ -64,7 +82,7 @@ module TDriverReport
|
|
|
64
82
|
# === raises
|
|
65
83
|
def test_started(name)
|
|
66
84
|
full_name=get_class_name(name)
|
|
67
|
-
@current_test_name=full_name[1]
|
|
85
|
+
@current_test_name=full_name[1]
|
|
68
86
|
add_report_group(@current_suite_name+':'+full_name[0]+'|')
|
|
69
87
|
start_test_case(@current_test_name)
|
|
70
88
|
add_test_case_group(full_name[0])
|
|
@@ -90,14 +108,42 @@ module TDriverReport
|
|
|
90
108
|
capture_screen_test_case()
|
|
91
109
|
update_test_case(fault)
|
|
92
110
|
@tc_result='failed'
|
|
93
|
-
end
|
|
111
|
+
end
|
|
94
112
|
end
|
|
95
113
|
"
|
|
96
|
-
end
|
|
114
|
+
end
|
|
115
|
+
|
|
116
|
+
def TDriverReportTestUnit.included(mod)
|
|
117
|
+
|
|
118
|
+
create_test_unit_formatter()
|
|
119
|
+
create_global_reporter_hook_for_test_unit()
|
|
120
|
+
|
|
121
|
+
end
|
|
122
|
+
|
|
97
123
|
end
|
|
98
124
|
|
|
99
|
-
module
|
|
125
|
+
module TDriverReport
|
|
100
126
|
def create_test_unit_formatter()
|
|
127
|
+
$stderr.puts "Warning: TDriverReport#create_test_unit_formatter() is deprecated please use only \"include TDriverReportTestUnit\" instead of
|
|
128
|
+
begin
|
|
129
|
+
include TDriverReport
|
|
130
|
+
create_test_unit_formatter()
|
|
131
|
+
end
|
|
132
|
+
module Test #:nodoc:all
|
|
133
|
+
module Unit
|
|
134
|
+
module UI
|
|
135
|
+
module Console
|
|
136
|
+
class TestRunner
|
|
137
|
+
def create_mediator(suite)
|
|
138
|
+
# swap in TDriver custom mediator
|
|
139
|
+
return TDriverReport::TestUnit.new(suite)
|
|
140
|
+
end
|
|
141
|
+
end
|
|
142
|
+
end
|
|
143
|
+
end
|
|
144
|
+
end
|
|
145
|
+
end
|
|
146
|
+
"
|
|
101
147
|
eval "
|
|
102
148
|
require 'test/unit'
|
|
103
149
|
require 'test/unit/ui/console/testrunner'
|
|
@@ -173,3 +219,5 @@ module MattiReport
|
|
|
173
219
|
end
|
|
174
220
|
|
|
175
221
|
|
|
222
|
+
|
|
223
|
+
|