タグ

testに関するmazinlabsのブックマーク (26)

  • リリースプロセス改善のために工夫して自動化を推し進めたらチームの底力が爆上がりした話 - NTT Communications Engineers' Blog

    こんにちは、クラウド&ネットワークサービス部の福岡です。 SDPF(Smart Data Platform) クラウドの IaaS である、ベアメタルサーバー・ハイパーバイザーサービス開発のソフトウェアエンジニアとして働いています。 記事では、リリースプロセスの改善を目指して QA チームが実施している試験の一部を自動化したことで、チームの底力が爆上がりした事例について紹介します。 SDPF ベアメタルサーバーサービスのミッション 機能リリースまでの流れと課題 課題1: 価値提供までのリードタイムが長くなる 課題2: QA チームの稼働がひっ迫する QA 削減に向けた取り組み 〜自動テストによる代替〜 思いがけない困難 どうやってこの困難に立ち向かったのか 1. 締切のあるタスクと締切のないタスクをセットにして取り組む 2. チームでサービス説明書の読み合わせ会を実施 取り組みの成果 1

    リリースプロセス改善のために工夫して自動化を推し進めたらチームの底力が爆上がりした話 - NTT Communications Engineers' Blog
  • Software Design連載 2021年8月号 Python製のレガシー&大規模システムをどうリファクタリングするか - MonotaRO Tech Blog

    Software Design連載開始 ※ (2021/09/02 08:55) 「Pythonを用いて開発を始めたのが2003年」を「Pythonを用いて開発を始めたのが2002年」に修正 こんにちは。金谷です。 このたび、モノタロウにおけるPython大規模開発に関する取り組みを、技術評論社様で発刊されている Software Design に連載させていただくことになりました。 モノタロウがPythonを用いて開発を始めたのが2002年。2021年の現在もPythonを用いた開発が続けられています。 事業の成長に伴い、関連するシステムやエンジニアの数も増え続けていくなかで、いかに安定的に価値を提供し続けられるのか。 モノタロウにおける取り組みを、開発や運用周りを通してご紹介していきます。 記事の初出は、 Software Design2021年8月号「Pythonモダン化計画(第1

    Software Design連載 2021年8月号 Python製のレガシー&大規模システムをどうリファクタリングするか - MonotaRO Tech Blog
  • Erratic Test at XUnitPatterns.com

    The book has now been published and the content of this chapter has likely changed substanstially. Please see page 228 of xUnit Test Patterns for the latest information. One or more tests are behaving erratically; sometimes they pass and sometimes they fail. Symptoms We have one or more tests that run but give different results depending on when they are run and who is running them. In some cases,

  • 現在時刻が関わるユニットテストから、テスト容易性設計を学ぶ - t-wadaのブログ

    この文章の背景について この文章はテスト容易性設計をテーマに 2013/11/26 に CodeIQ MAGAZINE に寄稿したものです。残念ながら CodeIQ のサービス終了と共にアクセスできなくなっていたため、旧 CodeIQ MAGAZINE 編集部の皆様に承諾いただき、当時の原稿を部分的に再編集しつつ、ライセンス CC BY(クリエイティブ・コモンズ — 表示 4.0 国際 — CC BY 4.0) で再公開いたしました。 旧 URL にいただいたブックマークとご意見はこちらです(これであなたもテスト駆動開発マスター!?和田卓人さんがテスト駆動開発問題を解答コード使いながら解説します~現在時刻が関わるテストから、テスト容易性設計を学ぶ #tdd|CodeIQ MAGAZINE)。旧記事には当に多くの反響をいただき、誠に感謝しております。 目次 この文章の背景について 目次 出

    現在時刻が関わるユニットテストから、テスト容易性設計を学ぶ - t-wadaのブログ
  • FIT: Failure Injection Testing – Netflix TechBlog – Medium

    by Kolton Andrus, Naresh Gopalani, Ben Schmaus It’s no secret that at Netflix we enjoy deliberately breaking things to test our production systems. Doing so lets us validate our assumptions and prove that our mechanisms for handling failure will work when called upon. Netflix has a tradition of implementing a range of tools that create failure, and it is our pleasure to introduce you to the latest

    FIT: Failure Injection Testing – Netflix TechBlog – Medium
  • テスタブルコードの書き方 - 基本戦略編 - ブログなんだよもん

    今のチームにテストコードの導入を格的にしようと思ってるので、思考の整理がてらメモ。内容は初学者向け。 テストの必要性をとくのは比較的簡単である程度できた。既存のレガシーコードはとりあえず忘れることに(特定メンバーでプロジェクト的に実施)。 というわけで、新規コードはみんなテスト書いてね! と、これだけでテストを書いてくれるでしょうか? 答えは否でした。 原因として自分の書きたいコードをどうテストすれば良いかわからないというものです。 新規コードなのでテストをしやすいように設計をすれば良いだけです。TDDはそれを支援してくれる有効な手法です。 しかし、テストが無い環境に慣れた人間はそもそもテスタブルコードを見慣れてません。なので、自分の書きたい実装をどう書けばテストが書きやすくなるかが分からないのでテストコードが非常に複雑になったり、立ち止まったりしてしまいます。 なので、テスタブルコード

    テスタブルコードの書き方 - 基本戦略編 - ブログなんだよもん
  • GoogleのCIとテスト自動化の取り組み [GTAC 2013] - ワザノバ | wazanova.jp

    [Video] http://www.youtube.com/watch?v=nyOHJ4GR4iU [Slide] http://goo.gl/76Ggf Google Test Automation Conference 2013のキーノートスピーチで、GoogleのAri Shamashが同社のCIツール & 自動化されたテストプロセスを紹介しています。 [最初の前置きが13分。GoogleのCIの紹介の内容ではないので割愛。お話としては面白いのでVideo見てみてください。] エンジニア1,5000+人が5,000プロジェクトにアサインされている 1億行のコード。50%が毎月更新。 1日当たり5,500+件がサブミッションされ、1億件以上のテストケースが実行されている。 Googleのクラウドテストシステムは多機能。ビルド作成、特定のターゲットをテストでき、テストカバレッジ計算、依

  • スケール可能なTwitterの負荷テストの仕組み [GTAC 2013] - ワザノバ | wazanova.jp

    [Video] http://www.youtube.com/watch?v=99RABfKNfcY [Slide] http://goo.gl/9VY2b TwitterのJames Waldropが、オープンソースのロードジェネレータライブラリlagoと、スケールが可能な負荷テストの仕組みについてGTAC (Google Test Automation Conference) 2013で語ってます。Twitterには番トラフィックの一部を利用したテストもありますが、講演ではテスト環境でのロードジェネレータを話題にしてます。 FacebookからTwitter転職し、lagoをつくった理由は、 ありあわせのツールをもってきて使ってもだめで、エンジニアであれば何か開発しないと他のエンジニアから尊敬されない。 Scalaで書いてみたかった。 既存のロードジェネレータはどれも役に立たない

  • RSpec Performance Turning - くりにっき

    社内で開催されたRSpec勉強会テストのパフォーマンスチューニングについて話したので資料を公開してみます。 RSpecの名は冠しているものの他の言語やテスティングフレームワークでも応用できるところがあるかもしれません。 RSpec Performance Turning from sue445 8/3追記:はてブコメント返信 テストのテストにはテスト対象を使えばいいんでしょうか。 場合によりますね。 基的にはテストコードとテスト対象のプロダクトコードはペアであるはずなので、テストにバグが混入したとしても対応するテスト対象が変更されていなければテストがなんらかの形でエラーになるので、そこで検知できると思います。 テストコードのリファクタリング(共通処理をメソッド抽出など)は、既存のテストが品質を担保してくれてます(グリーンのままであればリファクタリング成功) 0からテスト書く場合でテストの

    RSpec Performance Turning - くりにっき
  • さくらVPSセットアップ用のシェルスクリプトを今話題の「Ansible」で書き直してみた - Copy/Cut/Paste/Hatena

    「Chef! Chef!」と叫ばれる昨今、そのChefに挫折した皆様、いかがお過ごしでしょうか? Chefに挫折中のid:k1LoWです。 Ansibleいいよ。Ansible。 Chefに挫折したからといってプロビジョニングツールへの憧れは消えるわけもなく、時間を見つけてはいろいろいじっていた時、 同僚からの「Ansibleというツールが良さげらしい」という情報をそのまま鵜呑みにし、PHP Matsuri 2013を通じて使ってみて今に至っています。 Ansibleいいよ。Ansible。 AnsibleはPython製のプロビジョニングツールです。ChefやPuppetと同じ領域のツールですね。 ちなみに、呼び方は、日英語的に「あんしぼぉ」です。「あんじぼぉ」でも「あんそぉぼぉ」でもありません。PHP Matsuri 2013でVagrantのMitchell Hashimotoさ

    さくらVPSセットアップ用のシェルスクリプトを今話題の「Ansible」で書き直してみた - Copy/Cut/Paste/Hatena
  • TDD Anti-patterns catalogue at Stack Overflow を簡単に訳してみた - joker1007’s diary

    Stack OverflowのTDD Anti-patterns catalogueというスレがとても面白かったので訳してみた。 Stack Overflowのvoting機能でアンチパターンへの投票を行っている感じ。 上から投票の多い順になっている。 得票数はこの記事執筆時点(2013.7.9)のもの。 SQLアンチパターンっぽく、パターン名はそのまま片仮名にしてみた。 また、内容がかなり被っているとか、状況がかなりレアじゃないかと思うものは、一部省略しました。 (ブコメで訳間違ってるよ、って教えてもらったので、一部修正しました 2013.7.10) フリーライド (テストのただ乗り) 50pt 新しいテストケースを書くのではなく、他の機能のテストに新しいアサーションを追加して既存のテストケースに乗っかる。 セカンドクラス シティズン (二等市民) 47pt プロダクションコードのように

    TDD Anti-patterns catalogue at Stack Overflow を簡単に訳してみた - joker1007’s diary
  • テスト駆動開発の効果はどのくらいある?

    ソフトウェアの開発を行うときに、まずテストケースを先に作ってから機能を作り込む「テスト駆動開発」(Test-Driven Development:TDD)。これにより、ソフトウェアの開発工数や品質にはどの程度の変化があるのでしょうか。 TDD(テスト駆動開発)の適用評価を紹介した研究論文 - エリクソンはじめ3社:森崎修司の「どうやってはかるの?」:ITmedia オルタナティブ・ブログ この疑問について調査した論文を、奈良先端科学技術大学院大学 助教の森崎修司氏が3月10日のブログ「国立大学法人奈良先端科学技術大学院大学 助教」のエントリ「TDD(テスト駆動開発)の適用評価を紹介した研究論文 - エリクソンはじめ3社」で紹介しています。 開発時間はやや増えたがコードの品質は上がった 論文全文は有料なので読めないものの、森崎氏のブログによると次の知見が得られたとのことです。まず、ソフトウェ

    テスト駆動開発の効果はどのくらいある?
  • 知って得する21のRubyのトリビアな記法

    (追記:2013-08-16) 記事のトリビアを含む55のトリビアを以下の記事にまとめました。 知って得する!55のRubyのトリビアな記法 ちょっとトリビアだけど、知っていると意外と便利なRubyの記法を21個拾ってみたよ(Ruby1.9限定)。 君なら全部知ってるかもしれないけど.. 1. 動的継承 Rubyのクラス継承では < 記号の右辺にクラス定数だけでなくクラスを返す式が書けるよ。 class Male def laugh; 'Ha ha ha!' end end class Female def laugh; 'Fu fu fu..' end end class Me < [Male, Female][rand 2] end Me.superclass # => Female Me.new.laugh # => 'Fu fu fu..' def io(env=:develop

  • 「自動受け入れテスト」を考えてみる - 日々常々

    きっかけは XP祭り関西2013 の @StoneGuitar777 さんのLTからです。 LTスライド: XP祭り2013-LT-Codeer @ITの記事: 特集:受け入れ検査の自動化手法の考察:Windowsアプリの受け入れテストを自動化しよう (1/5) - @IT 「継続的デリバリー」に貼付けた付箋を抜き出してみる 【大阪】継続的デリバリー読書会(8回目) - connpassの範囲でもありました。 受け入れ=ビジネス的な受け入れ基準=ユーザーの価値 ユニットテストとの色分け ユニットテスト: 作り手の意図 受け入れテスト: 顧客の意図 うまくやらないとコストが高すぎる 適切に作成して保守すれば自動のほうがはるかに安上がりになる ユニットテストやコンポーネントテストではどれほど包括的にやっても検出出来ない問題がある 手動テストはアプリケーションの複雑さに関わらずきわめて高くつく

    「自動受け入れテスト」を考えてみる - 日々常々
    mazinlabs
    mazinlabs 2013/05/08
    読ませる
  • テストの自動実行あれこれ - Qiita

    この記事は、Ruby開発環境 Advent Calendar / Jul.の3日目の記事です。 テスト自動実行のススメ TDDを実践していると、Red -> Green -> Refactoring をリズムよくループさせることが重要となります。 そこで、コードの変更を検出してテストを自動で実行するようなツールによるサポートがあるとものすごく捗ります。 古くは autotest(ZenTest) のような gem を利用して実現していました。 今でも「ruby 自動テスト」とかでググると autotest に関する昔の記事が上位に出たりします。 autotest は定まった環境では非常に便利なのですが、 少し違ったことをしようとすると、変更が非常にめんどくさく、柔軟性に欠けていました(今もそうかは知りません)。 そこで、監視対象とそれが変更された時に何をするかがDSLで簡単に書けるような

    テストの自動実行あれこれ - Qiita
  • 私はRSpecでテストをこんな感じで書いてる - アジャイルSEを目指すブログ

    私がRSpec使ってテスト書く時はこんな感じで書いてるよ〜ってのを書いてみた。*1 テストを書く順番について TDDでコードを書く場合、先にテストを書く事になります。 そして、そのテストを書く順番ですが、私は下記のような順番で書くように意識しています。 設計する describe を書く itを書く subjectを明確にする before(context)を明確にする その他に、気をつけている点はこんな感じ 別のメソッド呼ぶ時は基的にstubなどで潰す contextは「〜の場合」、it は「〜であること」になるようにする 一つずつ、詳細を書きます。 設計する テストを書き始める前に、まず実装しようとしてるクラス、メソッドを簡単に設計します。 少なくとも、「クラス名」「クラスメソッド or インスタンスメソッド」「メソッド名」「メソッドの戻り値」ぐらいは決めます。 describe を

    私はRSpecでテストをこんな感じで書いてる - アジャイルSEを目指すブログ
  • RSpec の入門とその一歩先へ - t-wada の日記(旧)

    和田 卓人(@t_wada) 作『RSpec の入門とその一歩先へ』はクリエイティブ・コモンズ 表示 - 継承 4.0 国際 ライセンスで提供されています。 東京 Ruby 会議 03 の RSpec ワークショップの資料です。このワークショップでは参加者の方に「写経」(コードを書き写すこと)をして貰い、TDD/BDD と RSpec を同時に学べるように都度説明を入れるかたちで行いました。 第2イテレーションも書きました。続きに興味ある方はご覧下さい (更新) 第3イテレーションも書きました。続きに興味ある方はご覧下さい 1st iteration favotter の みたいな NG ワードのフィルタリング機能を RSpec で作りましょう。まずは NG ワードの検出機能を作成します。 このイテレーションでは最初ベタな形のテストコードと実装を書き、だんだんとそのコードを洗練させてゆきま

  • SIerにはコード記述の自動化からビルド・デリバリの自動化へのトレンドの変化を理解してほしい - 達人プログラマーを目指して

    ちょっと前にTogetterで作成したまとめに対して大きな反響をいただきました。 SIerは自動化する対象が違っているのでは? - Togetter これは、私が Continuous Delivery: Reliable Software Releases through Build, Test, and Deployment Automation (Addison-Wesley Signature Series (Fowler)) 作者: Jez Humble,David Farley出版社/メーカー: Addison-Wesley Professional発売日: 2010/07/27メディア: ハードカバー購入: 3人 クリック: 141回この商品を含むブログ (23件) を見るを読み始めて、ふとつぶやいた をきっかけに始まったTL上での議論をまとめたものです。このは、7月に行わ

    SIerにはコード記述の自動化からビルド・デリバリの自動化へのトレンドの変化を理解してほしい - 達人プログラマーを目指して
  • ユニットテストの保守性を作りこむ, xpjugkansai2011

    3. 自己紹介 • 井芹洋輝(いせりひろき) • 扱っているもの – 組込み開発/ソフトウェアテスト/開発者テスト • 所属 – WACATE実行委員/TDD研究会/ATECなど • 対外活動 – JaSST’11 Tokyo/WACATE2011冬/Androidテスト祭り等 – ソフトウェアテストPRESS総集編/Ultimate agile Stories

    ユニットテストの保守性を作りこむ, xpjugkansai2011
  • CCUnit: メインページ

    CCUnit は C 言語で繰り返し可能なテストを書くための簡単なフレームワークです。 [see also English documents] インストール 以下に CCUnitをインストールする手順を示します。 アーカイブファイルを展開します。 展開したディレクトリにcdします。 `./configure' ファイルを実行します。 make とタイプして ccunit ライブラリを作成します。 make install としてインストールします。 さあ始めましょう モジュール セクションは CCUnit のモジュールを整理して表示しています。 サンプルコード examples ディレクトリにはサンプルファイルがあります。 complex - 複素数を計算するライブラリとそのテストケースのサンプルです。 libcomplex.a - complex number library comp