タグ

テストに関するblackcat2_2のブックマーク (9)

  • Goで書くテスタブルなCLIツールの作り方 | gihyo.jp

    CLIツールをテストする難しさ ターミナルなどで動作するCLI(コマンドラインインタフェース)ツールは、パッケージを公開して利用してもらうライブラリと比べてテストがしにくいと感じる読者も多いでしょう。 CLIツールは、ファイル/標準入力からの入力や、ファイル/標準出力/標準エラー出力への出力があることが多いです。また、コマンドライン引数やオプション(フラグ)によって変わる挙動のパターンが多いため、網羅的なテストが大変です。 入出力についても単一のファイルを読み書きするだけではなく、ディレクトリごと作成したり、特定のディレクトリ以下を再帰的に読み込むような処理もよくあります。 main関数にすべての処理をすべて書くような作りのCLIツールだと、実際にビルドしてテストスクリプトなどから動かしてテストするしかありません。しかし、せっかくCLIツールをGoで書いているのであれば、テストもGoで書き

    Goで書くテスタブルなCLIツールの作り方 | gihyo.jp
  • SpotifyがミスによりKubernetesの本番クラスタを二度も削除。しかし顧客へのサービスにほとんど影響しなかったのはなぜか?

    SpotifyがミスによりKubernetes番クラスタを二度も削除。しかし顧客へのサービスにほとんど影響しなかったのはなぜか? 今年、2019年5月20日から3日間にわたりスペイン バルセロナで開催されたKubeCon+CloudNativeCon Europe 2019の基調講演では、SpotifyがミスによってKubernetesのクラスタを消去してしまった経験を振り返るという非常に興味深いセッション「Keynote: How Spotify Accidentally Deleted All its Kube Clusters with No User Impact - David Xia」(基調講演:SpotifyはいかにしてKubernetesクラスタの全削除というミスにもかかわらず顧客への影響を引き起こさなかったのか?)が行われました。 障害が起こることをあらかじめ計画とし

    SpotifyがミスによりKubernetesの本番クラスタを二度も削除。しかし顧客へのサービスにほとんど影響しなかったのはなぜか?
  • 【新元号】改元のシステム改修で慌てるシステム屋は「無能」とのこと - Qiita

    という記事を見ての職業プログラマ歴3年程度の若造の過剰反応です。 まとまっていないポエムのようなものなので、 こんなことあるんだなっていう程度に思っていただいたら幸いです。 作ったプログラムを保守しているとは限らない まずはこれが大前提。 「作ったやつが無能」だとか「あらかじめ予想していなかった人が問題」だとか、 いろいろ思うことは当然私にもないとはいいませんが、 そういうことは後続の人が云ってはいけないと思っています。 なぜそうなったかの原因究明は必要ですが、悪口を言うための究明なら時間の無駄でしかない。 考慮ができていない「おかしなプログラム」を直すのが我々保守の一端、おざなりにしてはいけない。 1か月でリリースは難しい そもそもプログラムに直接書き込まれていて、 なおかつオフラインで運用されているシステムが、全国各地にある場合にある場合、 たった1か月で「調査→修正→テスト→納品」で

    【新元号】改元のシステム改修で慌てるシステム屋は「無能」とのこと - Qiita
  • 書籍「Clean Architecture」が最高すぎたのでエッセンスをまとめてみた

    記事では、書籍「Clean Architecture 達人に学ぶソフトウェアの構造と設計」のポイントを抽出する。ただ、削った部分も多いので、ぜひ書籍を購入してほしい。 第1部 イントロダクション ソフトウェアを「一度だけ」動かすのは、それほど難しいことではない。正しくするのは難しい。 ソフトウェアを正しくすると、不思議なことが起こる。開発や保守に必要な人材はわずかで済む。変更は簡単で迅速になる。欠陥の数は少なく、ほとんど出てこなくなる。労力は最小に抑えられ、機能性と柔軟性は最大になる。 「あとでクリーンにすればいいよ。先に市場に出さなければ!」ソフトウェア開発者たちはそう言ってごまかす。だが、あとでクリーンにすることはない。短期的にも長期的にも、崩壊したコードを書くほうがクリーンなコードを書くよりも常に遅い。早く進む唯一の方法は、うまく進むことである。 すべてのソフトウェアシステムは、2

    書籍「Clean Architecture」が最高すぎたのでエッセンスをまとめてみた
  • AWS SAM Local(ベータ版) – サーバーレスアプリケーションをローカルに構築してテストする | Amazon Web Services

    Amazon Web Services ブログ AWS SAM Local(ベータ版) – サーバーレスアプリケーションをローカルに構築してテストする 今回、新ツール、SAM Local のベータ版がリリースされました。これにより、簡単にサーバーレスアプリケーションをローカルに構築してテストできるようになります。この記事では、SAM Local を使用し、クイックアプリケーションの構築、デバッグ、デプロイを実行します。これにより、エンドポイントに curl コマンドを使用してタブやスペースで投票できるようになります。AWS は サーバーレスアプリケーションモデル(SAM)を昨年導入しました。これにより、デベロッパーはサーバーレスアプリケーションをより簡単にデプロイできるようになっています。SAM の基にまだなじみがない場合は、私の同僚である Orr が SAM の使用方法について書いた素

    AWS SAM Local(ベータ版) – サーバーレスアプリケーションをローカルに構築してテストする | Amazon Web Services
  • 米海兵隊の「軍用犬ロボ」が初お目見え(動画あり)

  • 若手開発者の後悔 | POSTD

    (編注:2020/08/18、いただいたフィードバックをもとに記事を修正いたしました。) これはある仕事熱心な若手開発者のほぼ実話です。2004年の後半、この若手開発者は小さな会社で働き始めました。条件は全て彼の望みどおりでした。給料はいいし、扱うのは彼の得意とするプログラミング言語、アプローチの複雑性、モデリングのアーキテキチャでした。 彼にとって今回の会社が初めての職場ではありませんでした。しかし、ここでの最初のプロジェクトは結果的に 問題だらけ に終わりました。当時、この若手開発者は、機能は絶対に変わらないものだと思っていました。しかし、それは間違いでした。機能が変更されるたびに完全なリファクタリングを行わなければなりませんし、バグを引き起こして膨大な時間を無駄にしてしまいます。彼は、テストを書くといった実直な方法も試してみましたが、書いたテストはメンテナンスが必要な上、書くのに時間

    若手開発者の後悔 | POSTD
  • SSDにデータを書込みまくり再起不能に追い込む耐久試験で分かった信頼性に関する真実とは?

    2013年からTech Reportが継続していた「SSD耐久試験」は、SSD主要6モデルに特別なプログラムを使って尋常ではない量のデータを書き込みまくって再起不能まで追い込むというもので、耐久性に不安を持たれがちなSSDの信頼性を判断するのに大いに役立つデータとして注目を集めています。そして、最後まで生き残ったモデルもついに息の根を止められ、1年半にわたって続けられたSSD耐久試験が完全に終了。そこからSSDの信頼性に関するおそるべき事実が明らかになっています。 The SSD Endurance Experiment: They're all dead - The Tech Report - Page 1 http://techreport.com/review/27909/the-ssd-endurance-experiment-theyre-all-dead ◆これまでのテスト経過

    SSDにデータを書込みまくり再起不能に追い込む耐久試験で分かった信頼性に関する真実とは?
  • 「素人まがいのシステム開発」を見分ける方法

    自分のプロダクトだっていう意識が皆無なのかテストしないやつ多いよね 最近転職したんだけど、テストしてもリリース後にバグが見つかるからテストは意味がないとかぬかすし 新卒から数年のクソガキが、なぜかプログラマを単純作業労働者かと何か勘違いして下に見ているし テストをしないプランナーとかディレクター プログラマーが単純労働者だったとしてもテストは必要。 単純労働ってことは、工業製品なんですよ。で、工業製品はテストと称する品質チェックをしてますけどね。 素人まがいなところで、単純労働者扱いされて働くのは、正直メンタル的にかなりつらいと思う。マトモなプログラマーほどそう。 給料がそこそこあっても、そういうところで働くは、ストレスがたまると思う。 一度もプロ的な仕事をしたことがない人たちは、そういうのは全然気にならないから、平気。 ということで、素人まがいの人たちが、量産されていく。 素人まがいな開

    「素人まがいのシステム開発」を見分ける方法
  • 1