アカウント名:
パスワード:
10月10日10時10分10秒以降になると発動するバグを埋め込んだことがある。JavaScriptの自前の日付処理の問題で、全桁2桁になると前ゼロ埋めが不要になった結果、文字列連結が数値の足算になってバグった。秋にプロジェクトが開始して稼働が3末だったので、開発中は全然気づかなかった。
あーなるほど。'0'+がなくなって文字列への変換がされないと。桑原桑原。 やっぱ型に厳密な言語のほうがいいよ(ファィっ!)。
処理コストは嵩むけど'0'+数値してから、右二文字ってロジックもある。# 入力が文字列でシステムロケールが変更されてゼロフィルされていても、されてなくてもいけて、同じく型がなく、IFが大変なbatファイルだとこっちのほうが便利。
別ツリーのテストをさぼったからがマイナスモデされてるが、テストして当然の境界値チェックしてないから言われて当然ですわ。
どんな見落としに対しても後知恵でテストして当然と言うのは簡単なので情報量もないし役にも立たないコメントはマイナスモデされて当然
テストケースのレビュー時に指摘してくれれば神。バグ発生・検証後に言ってくるならただの事後諸葛亮。
究極的にはあらゆる不具合の未発見はテストケース不足に帰結できるからなぁまあ無意味だよな
自分なら指摘してるし、テストするからなぁ。
JavaScriptの日時クラスは無駄にサポート範囲広いからシステム仕様でサポートする日付範囲が決まってないならテストが糞面倒臭いよ。日本国内限定だと、遡っても1873年以降しかサポートしないってしておかないと地獄。でもうるう秒は入ってこないからマシな部類だと思う。
西暦マイナスは端折るけど、単体テストで境界値とかの-1/12/31 23:59:59 西暦0年直前0/1/1 00:00:00 西暦0年(紀元前1年)0/12/31 23:59:59 西暦1年直前1/1/1 00:00:00 西暦1年9/12/31 23:59:59 西暦1桁最大10/1/1 00:00:00 西暦2桁最小99/12/31 23:59:59 西暦2桁最大
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
身近な人の偉大さは半減する -- あるアレゲ人
特定の日付で発動するバグ (スコア:1)
10月10日10時10分10秒以降になると発動するバグを埋め込んだことがある。
JavaScriptの自前の日付処理の問題で、全桁2桁になると前ゼロ埋めが不要になった結果、文字列連結が数値の足算になってバグった。
秋にプロジェクトが開始して稼働が3末だったので、開発中は全然気づかなかった。
Re: (スコア:0)
あーなるほど。'0'+がなくなって文字列への変換がされないと。
桑原桑原。
やっぱ型に厳密な言語のほうがいいよ(ファィっ!)。
Re:特定の日付で発動するバグ (スコア:0)
処理コストは嵩むけど'0'+数値してから、右二文字ってロジックもある。
# 入力が文字列でシステムロケールが変更されてゼロフィルされていても、されてなくてもいけて、同じく型がなく、IFが大変なbatファイルだとこっちのほうが便利。
別ツリーのテストをさぼったからがマイナスモデされてるが、
テストして当然の境界値チェックしてないから言われて当然ですわ。
Re:特定の日付で発動するバグ (スコア:1)
どんな見落としに対しても後知恵でテストして当然と言うのは簡単なので情報量もないし役にも立たないコメントはマイナスモデされて当然
Re: (スコア:0)
テストケースのレビュー時に指摘してくれれば神。
バグ発生・検証後に言ってくるならただの事後諸葛亮。
Re: (スコア:0)
究極的にはあらゆる不具合の未発見はテストケース不足に帰結できるからなぁ
まあ無意味だよな
Re: (スコア:0)
自分なら指摘してるし、テストするからなぁ。
JavaScriptの日時クラスは無駄にサポート範囲広いからシステム仕様でサポートする日付範囲が決まってないならテストが糞面倒臭いよ。
日本国内限定だと、遡っても1873年以降しかサポートしないってしておかないと地獄。
でもうるう秒は入ってこないからマシな部類だと思う。
西暦マイナスは端折るけど、単体テストで境界値とかの
-1/12/31 23:59:59 西暦0年直前
0/1/1 00:00:00 西暦0年(紀元前1年)
0/12/31 23:59:59 西暦1年直前
1/1/1 00:00:00 西暦1年
9/12/31 23:59:59 西暦1桁最大
10/1/1 00:00:00 西暦2桁最小
99/12/31 23:59:59 西暦2桁最大