質問編集履歴

1

修正です。

2016/11/08 07:41

投稿

yuki_90453
yuki_90453

スコア326

test CHANGED
File without changes
test CHANGED
@@ -40,6 +40,152 @@
40
40
 
41
41
  また、もしタイムアウトをするまで動作を繰り返していた場合、タイムアウト時間を短くする方法または、繰り返させない方法を教えて頂けれないでしょうか
42
42
 
43
+ 宜しくお願い致します。
43
44
 
44
45
 
46
+
47
+
48
+
49
+ ###編集部分
50
+
51
+ ボトルネックになっている部分は条件分岐で使用しているelement_present?メソッドまたは、point_nextTDメソッドかと思います。
52
+
53
+ 計測結果、element_present?にてrealが平均20秒掛かっています。
54
+
55
+ このrealの待機時間を解消する方法はないでしょうか?
56
+
57
+
58
+
59
+ ###ベンチマークの実施結果
60
+
61
+ **該当のコード**
62
+
63
+ ```Ruby
64
+
45
- 宜しくお願い致します。
65
+ def point(i)
66
+
67
+ if element_present?(i, :xpath, ".//th[contains(text(),'ポイント利用(')]") == true
68
+
69
+ point_nextTD(i)
70
+
71
+ else
72
+
73
+ return " "
74
+
75
+ end
76
+
77
+ end
78
+
79
+
80
+
81
+ def element_present?(where, how, what)
82
+
83
+ Benchmark.bm 10 do |r|
84
+
85
+ r.report "条件分岐" do
86
+
87
+ begin
88
+
89
+ where.find_element(how => what)
90
+
91
+ true
92
+
93
+ rescue Selenium::WebDriver::Error::NoSuchElementError
94
+
95
+ false
96
+
97
+ end
98
+
99
+ end
100
+
101
+ end
102
+
103
+ end
104
+
105
+
106
+
107
+ def point_nextTD(i)
108
+
109
+ Benchmark.bm 10 do |r|
110
+
111
+ r.report "アクション" do
112
+
113
+ i.find_element(:xpath => ".//th[contains(text(),'ポイント利用(')]/following-sibling::td").text().gsub(/[円]/,"").gsub(/[,]/,"").to_i
114
+
115
+ end
116
+
117
+ end
118
+
119
+ end
120
+
121
+
122
+
123
+ ```
124
+
125
+
126
+
127
+ **ベンチマーク結果**
128
+
129
+ ```Ruby
130
+
131
+ user system total real
132
+
133
+ 条件分岐 0.040000 0.020000 0.060000 ( 26.678073)
134
+
135
+ user system total real
136
+
137
+ 条件分岐 0.050000 0.030000 0.080000 ( 25.499489)
138
+
139
+ user system total real
140
+
141
+ 条件分岐 0.010000 0.000000 0.010000 ( 0.017920)
142
+
143
+ user system total real
144
+
145
+ 条件分岐 0.050000 0.030000 0.080000 ( 24.706779)
146
+
147
+ user system total real
148
+
149
+ 条件分岐 0.000000 0.000000 0.000000 ( 0.011791)
150
+
151
+ user system total real
152
+
153
+ 条件分岐 0.000000 0.000000 0.000000 ( 0.012549)
154
+
155
+ user system total real
156
+
157
+ 条件分岐 0.050000 0.020000 0.070000 ( 25.037440)
158
+
159
+ user system total real
160
+
161
+ 条件分岐 0.050000 0.020000 0.070000 ( 26.076752)
162
+
163
+ user system total real
164
+
165
+ 条件分岐 0.000000 0.000000 0.000000 ( 0.018694)
166
+
167
+ user system total real
168
+
169
+ アクション 0.000000 0.000000 0.000000 ( 0.038412)
170
+
171
+ user system total real
172
+
173
+ アクション 0.010000 0.000000 0.010000 ( 0.028833)
174
+
175
+ user system total real
176
+
177
+ アクション 0.010000 0.000000 0.010000 ( 0.032794)
178
+
179
+ user system total real
180
+
181
+ アクション 0.000000 0.000000 0.000000 ( 0.026723)
182
+
183
+ user system total real
184
+
185
+ アクション 0.000000 0.000000 0.000000 ( 0.030527)
186
+
187
+
188
+
189
+
190
+
191
+ ```