回答編集履歴
3
追記2: 時間の計測方法について
test
CHANGED
@@ -223,3 +223,21 @@
|
|
223
223
|
他の案: 一定時間経過後にシグナルを送る等、テストコードに影響しない他の仕組みで解決。
|
224
224
|
|
225
225
|
参考: [pytest-timeout](https://pypi.org/project/pytest-timeout/)
|
226
|
+
|
227
|
+
|
228
|
+
|
229
|
+
追記2: yymmt さんの投稿を見て、気づいた点
|
230
|
+
|
231
|
+
time.time は [time.perf_timer](https://docs.python.org/ja/3.7/library/time.html?highlight=time%20perf_counter) の方が適切でした。
|
232
|
+
|
233
|
+
|
234
|
+
|
235
|
+
time.time()はシステムに設定された時刻に依存するので
|
236
|
+
|
237
|
+
|
238
|
+
|
239
|
+
> この関数が返す値は通常減少していくことはありませんが、この関数を 2 回呼び出し、その呼び出しの間にシステムクロックの時刻を巻き戻して設定した場合には、以前の呼び出しよりも低い値が返ることがあります。
|
240
|
+
|
241
|
+
|
242
|
+
|
243
|
+
timeitの実装も timer.perf_counter を利用しています。
|
2
誤字訂正
test
CHANGED
@@ -218,7 +218,7 @@
|
|
218
218
|
|
219
219
|
追記: 処理内容によっては誤差かもしれないけど、
|
220
220
|
|
221
|
-
「経過時間チェック」により時間は遅くなるので、用途次第ではこの実装は適切でないかも
|
221
|
+
「経過時間チェック」により時間は遅くなるので、用途次第ではこの実装は適切でないかもしれません。
|
222
222
|
|
223
223
|
他の案: 一定時間経過後にシグナルを送る等、テストコードに影響しない他の仕組みで解決。
|
224
224
|
|
1
ベンチマーク用途への追記
test
CHANGED
@@ -213,3 +213,13 @@
|
|
213
213
|
time.sleep(1)
|
214
214
|
|
215
215
|
```
|
216
|
+
|
217
|
+
|
218
|
+
|
219
|
+
追記: 処理内容によっては誤差かもしれないけど、
|
220
|
+
|
221
|
+
「経過時間チェック」により時間は遅くなるので、用途次第ではこの実装は適切でないかも入れません。
|
222
|
+
|
223
|
+
他の案: 一定時間経過後にシグナルを送る等、テストコードに影響しない他の仕組みで解決。
|
224
|
+
|
225
|
+
参考: [pytest-timeout](https://pypi.org/project/pytest-timeout/)
|