タグ

テストに関するindicationのブックマーク (58)

  • BDD は Given, When, Then のことだと勘違いされているんじゃないか

    たまたま社内で自分が主催しているアジャイルに関する勉強会で BDD (Behaviour-Driven Development) の話をすることがあった。 個人的には、「Given, When, Then でテスト書くやつでしょ?」といった形で Gherkin記法 だけが一人歩きしている印象があるためその誤解を解くことを目的にその勉強会では話題に挙げたのでその熱が冷めないうちに自分の認識のメモを残しておきたい。 とはいえ、 https://cucumber.io/docs/bdd/ を読めば全てが書いてあるので気になった人はそちらを参照して欲しい。 前置きはそれくらいにしつつ、上記のドキュメントの中から抜粋してきた以下の画像が BDD の全体を示している。 この図が言わんとすることは、 BDD というのは Discover Formulation Automation の3つのステップで構

  • 開発チームにおけるバックエンドテストのガイドライン策定の軌跡をふりかえる

    はじめに 株式会社マイベストでバックエンドエンジニアをしています、井上周(@isaka1022)です。 マイベストの開発組織において、2023年度の後半にかけて、バックエンドのテストの書き方の方針、ガイドラインの策定のプロジェクトを担当しました。 そもそもどのようにテストの書き方を決めるのか、また、ガイドラインとして機能させるためにエンジニア全員で共通認識を持てるものに仕上げるか、など考えることが多かったのですが、なんとか形にすることができたので今回はどのようにガイドラインを策定したか、その背景や経緯をお伝えできればと思います。 ガイドライン策定の背景 mybestのアーキテクチャには近年、Ruby on Railsに加えてNext.jsが導入されました。 それに伴い、バックエンドのテスト環境に大きな変化がありました。 それまでもテストの書き方のルールが決まっていなかったこともそうですが、

    開発チームにおけるバックエンドテストのガイドライン策定の軌跡をふりかえる
  • freeeの自動テストの全体構成 - freee Developers Hub

    こんにちは、Software Engineer in Qualityチーム(通称SEQチーム)の @teyamagu です。 私たちのチームは普段自動/手動テストの基盤開発や開発フィードバックサイクルの高速化に向けた開発をおこなっています。 その一環で、先日、社内でfreeeの自動テストシステム全体像を共有したのですが、この辺りのことを社外の友人達と話したところ、自動テストの具体的な構成や普段の運用など事例が少なく、どんなことをやっているのかイメージしにくいとの話を伺ったので、社内向け原稿をちょっと手直しして、おすそ分けと言うことで、ここで紹介します。 特に変わったことをおこなっているわけではありませんが、自動テストの関係性の理解に参考になれば幸いです。 基的な考え方 自動テストが既存のデプロイ・リリースのブロッカーではなく、開発のフィードバックを加速させるために、自動テストそのものが高

    freeeの自動テストの全体構成 - freee Developers Hub
  • 英国政府によるRailsアプリケーションテストの新標準(翻訳)|TechRacho by BPS株式会社

    概要 Open Government Licenceに基づいて翻訳・公開いたします。 英語記事: A new standard of testing for GOV.UK - Technology in government 著者: Ben Thorner、Peter Hartshorn -- 英国GDS(Government Digital Service)所属の開発者です 原文公開日: 2021/10/08 サイト: GOV.UK blogs 日語タイトルは内容に即したものにしました。GOV.UKのRFCは以下で公開されています。 GOV.UKには、アプリに加えた変更をテストするという強靭な文化が根付いています。私たちは多くの場合、変更を加える前に(テスト駆動開発に沿って)テストを書き、変更をデプロイする前に(回帰テストに沿って)既存のテストがすべてパスする必要があります。 GOV.

    英国政府によるRailsアプリケーションテストの新標準(翻訳)|TechRacho by BPS株式会社
  • テストコードを書き始める前に考えるべきテストの話(2021年版) #scrumosaka / scrum_fest_osaka_2021

    以下のイベントの投影資料です。 https://confengine.com/conferences/scrum-fest-osaka-2021/proposal/15337 お問い合わせは https://twitter.com/nihonbuson まで。 【発表資料中のURL】 P…

    テストコードを書き始める前に考えるべきテストの話(2021年版) #scrumosaka / scrum_fest_osaka_2021
  • ソフトウェアテストはなぜやるのか誰がやるのかについて考えてみる / why who testing

    アジャイル開発研修の中で、ソフトウェアテストってなぜやるの?誰がやるの?って話をしたときの資料です。

    ソフトウェアテストはなぜやるのか誰がやるのかについて考えてみる / why who testing
  • 「テスト書いてないとかお前それ〜」が私の代名詞になるまで。テスト駆動開発とともに歩んだキャリア - Findy Engineer Lab

    におけるテスト駆動開発の著名人といえば誰か? この問いを投げかけられたとき、多くのエンジニアが思い浮かべる人物がいます。ITコンサルタント・ソフトウェアエンジニアの和田卓人(@t_wada)さんです。和田さんは日のテスト駆動開発の第一人者として、長年、この分野の実践や講演・執筆などの普及活動を続けてきました。 こう書くと、読者のなかには「和田さんはもともとテストが好きだったから、テスト駆動開発の第一人者になれたのでは」と思われた方もいるかもしれません。しかし、その答えはNOです。むしろ和田さんは、テストが嫌いなエンジニアだったといいます。ある出来事をきっかけとして、嫌いだったテストを好きになれる方法を見つけたのです。 読者の方々にも「自分には○○なんて向いていない」という印象を抱いている技術領域があるかもしれません。ですが、そんな領域にこそ、あなたの新たな可能性が詰まっているかもしれ

    「テスト書いてないとかお前それ〜」が私の代名詞になるまで。テスト駆動開発とともに歩んだキャリア - Findy Engineer Lab
    indication
    indication 2021/04/12
    自動化テストのハンズオンなど、いろいろ参加させてもらった。ていねいに教えてくれるイメージ。
  • 大学入試新共通テストの古典問題が凄かったので解説させてほしい

    タイトルの通り。筆者は高校の教員で、いま業務が少しだけ落ち着いていて分析する暇が出来たので、次年度以降の入試対策のために解き直してみたのだが、新テストの方針をすごい形で問題として体現していたので、なるべくわかりやすく解説していきたい。 わかりやすくとはいえ、大学入試の古典問題について突っ込んで書くので、もし興味(と古典の知識)があったら実際に解いてから読んでみてほしい。 問題や解説・予備校の分析などは以下から参照。解けなくても解説や、現代語訳と設問を見るだけでもいい。 予備校 https://www.toshin.com/kyotsutest/ https://kaisoku.kawai-juku.ac.jp/nyushi/kyotsutest/21/ ちなみに大学入試センターの問題作成方針はこっち。 https://www.dnc.ac.jp/albums/abm.php?f=abm00

    大学入試新共通テストの古典問題が凄かったので解説させてほしい
    indication
    indication 2021/02/20
    文章I→旧システム、文章II→新システムと仮定すると、胃に穴が空きそう(実践向けの問題かな)
  • 「息子の高校が労働法について教えてくれてました」超実践的なテストに賞賛の声

    りんりんちゃま♡お気持ち痩せた @rinrinshalala 数センチ単位のスカートの丈について生産性のない、くっだらん議論するのは勉強やこういった必要な教育をコンプリートした後の話だと改めて思う!親御さん、素敵な学校に入れさせたんだなというきもち❤️ twitter.com/itamitakashi/s… しゃみ @ 政治は大人の部活動 @ksmksmtnnmgm @itamitakashi 良い高校ですね! うちの息子も同じく高校で労働者の権利を教わり、色々教えてくれました。 以前勤めていた職場で有休がなかった事について、取得する権利があった事、事業主は尋ねられたら説明する義務があった事など。 労働者の権利を知らずに過ごしている人は多いと思います。 知らなきゃ損損!

    「息子の高校が労働法について教えてくれてました」超実践的なテストに賞賛の声
    indication
    indication 2020/11/23
    大切な問題がない。これらを違反した場合、どうすればよいのかという、最大の問題。しかしながら、素晴らしい。
  • 20年物のC言語で作られたシステムのテスト工程を改善しようとした話 - Qiita

    はじめに ちょっと前に20年物のC言語で作られたシステムのテストを色々改善しようとしてみたので、この時に得たちょっとした知見を書いていこうと思います。 ※注意 記事を書くために自分のパソコンで当時を思い出しながら環境を作っているので、実際、実務でやった環境やバージョンとは違います。 また、この記事にはいくつかコードがでてきますが、すべて記事を書くために考えた疑似的な例にすぎません。 単体テスト用のテストコードの作成 20年も動いているシステムだと、もはや誰にも意味はわからんが、既存の挙動を変えてはいけない箇所がいくつもあります。 そういう箇所に手を入れざるを得ないときに、有効な方法として以下のような方法があります。 まず、既存のコードに対するテストコードを記載します。そして全て合格することを確認してから、少しづつ機能を拡張していきます。 これにより、新規機能追加が既存の機能を壊していないこ

    20年物のC言語で作られたシステムのテスト工程を改善しようとした話 - Qiita
    indication
    indication 2019/10/29
    参考にする。スクロールバーがヤバイ
  • うちのチームのプログラマーはなぜテストがうまいのか - CAT GETTING OUT OF A BAG

    うちのチームのプログラマーはテストが好きかどうかは分からないけど「これよく見つけたなー」と思うようなバグを見つけてくるからテストがうまいと思う。で、なんでうまいのか考えているのだけど「毎日1時間、システムレベルのテストをしている」のが、うまくなる要因の一つなんじゃないか。— miwa (@miwa719) 2019年6月24日 医用機器(自社製品)のソフトウェア開発に従事して、あと数年で30年になります。いろんなチームに所属し、多くの開発者と一緒に仕事してきましたが、現在所属しているチーム(うちのチーム)のプログラマーはテストがうまいです。プログラマー時代の自分と比較してもそう思いますし、『ソフトウェアテスト』という側面から製品開発を考えられるようになった今の自分から見てもそう思います。いいバグを見つけたなぁ…(素晴らしい)と思うことが多々あります。 うちのチームのプログラマーはなぜテスト

    うちのチームのプログラマーはなぜテストがうまいのか - CAT GETTING OUT OF A BAG
    indication
    indication 2019/06/25
    本当にそうだと思う。書く量が多いから不具合が多いように見えるけど、割合は凄く小さい。だが、その人の不具合または仕様に嵌まると私はポンコツだ。このコストの捻出は素晴らしい
  • JavaScriptユニットテストの理想と現実

    Talk at 関西Node学園 梅田キャンパス 1時限目 https://nodejs.connpass.com/event/82614/

    JavaScriptユニットテストの理想と現実
    indication
    indication 2018/04/21
    uiとの分離がまずは難しそうだけど、よい入門
  • テスト駆動開発における進化的設計とデザインパターンの勘所とは?〜テスト駆動開発をやめて、なお残すべき習慣とは(9)

    前回から、書籍を辿り、TDDの再考を試みています。TDDを既に知っている、実践しているという人にとっては、TDDについて新しい発見、ジャメヴ(未視感)が起きれば幸いです。たとえTDDが不要だったとしても、不要だと判断したものが一体何だったのか知ることは欠かせません。 忘れないで、テスト駆動開発にもデザインパターンの話が出てくるよTDDはテストファーストやベイビーステップのインパクトがありすぎて、あまり目立っていないですが、書籍『テスト駆動開発』にもソフトウェアパターンの話が出てきます。そう、出てくるんですよ。 余談ですが、テスト駆動開発3部におけるSingletonパターンの説明はGoFの説明とは違ったユニークな内容になっています。(で確認してみてね) 1回だけ設計ではなく繰り返し設計注意点ですが、テスト駆動開発においてのソフトウェアパターンは、プロジェクト初期に1回だけパターンを使って

    テスト駆動開発における進化的設計とデザインパターンの勘所とは?〜テスト駆動開発をやめて、なお残すべき習慣とは(9)
    indication
    indication 2018/04/21
    結局バランスだから、使いどころを考えると悩ましい。サイクロマティック分析は単体をやらないにせよ、参考になるから、1ケースだけでも書くようにしてる。
  • privateメソッドについての思いの変遷 — 裏紙

    新人の頃の☃「private?メソッド?というのがあるのか。ふむ。ふむ……?」 新人ではなくなったが若手の頃の☃「メソッドが大きくなってきたな。privateメソッドで分割だ!」 若手とは言えなくなった頃の☃「privateメソッドのテストコードってどう書いたら良いんだ?リフレクションか?」 2、3年前の☃「privateメソッドは共通処理を切り出すためのもの。呼び出し元のpublicメソッドのテストコードで担保される」 最近の☃「privateメソッド スベテ コロス!!!」 解説 新人の頃は割愛。 次の若手の頃の話は、これは大きいメソッドを単にぶつ切りにして満足しちゃってた感じ。 臭いものに蓋してるだけで何の解決にもなっていませんでしたね、今から思うと。 それからprivateメソッドのテストコードについて悩みました。 どうすれば良いんだ?と。 悩んだ挙句protectedにしちゃたり

    indication
    indication 2016/09/07
    visial studio ultimateじゃないと、publicの試験しか簡単にできないから思い悩んでる
  • サービス分割時の複雑性に対処する: テスト戦略の話 - クックパッド開発者ブログ

    技術部の taiki45 です。 現在のクックパッドでは、cookpad.com 内のデータを利用するようなプロダクトでも、cookpad.com を提供しているアプリケーション(体アプリケーション)とは別に新規のアプリケーションとして設計・実装しています。また、すでに体アプリケーションの一部として実装されているプロダクトについても、トレードオフを考慮しながら場合によっては、体アプリケーションから独立した別のアプリケーションとして設計・実装することが増えてきています。これらの体アプリケーションや、新規にあるいは体アプリケーションから独立させて設計・実装したアプリケーションのことを「サービス」と呼んでいます。また、この体アプリケーションから独立させることを「サービス分割」と呼んでいます。 制御できないほどの巨大な複雑なまとまりを制御するために、その巨大なまとまりと単純なまとまりに

    サービス分割時の複雑性に対処する: テスト戦略の話 - クックパッド開発者ブログ
    indication
    indication 2016/01/05
    マイクロサービスで提供する場合のテスト手法
  • ソフトウェア開発で得た教訓22箇条 | POSTD

    1. 小規模なものから徐々に拡張していく。 私は日頃、新たなシステムを作るにせよ既存のシステムに機能を追加するにせよ、必要な機能すら殆ど持たないようなとてもシンプルなバージョンを作るところから始めるようにしています。そこから当初予定していた機能まで、段階的にソリューションを拡張していきます。私は初めから細部にわたって計画をできたことはありませんが、代わりに開発を進めていく中で新しく見つけた情報をソリューションに役立たせます。 私はJohn Gallの、この言葉が好きです。 “複雑なシステムというのは、往々にしてシンプルなシステムから発展したものだ。” 2. 同時に複数のものを変えない。 開発中にテストが失敗したとき、あるいは機能がうまく動作しなかったとき、1つだけ変更すれば、問題発見が格段に容易になるでしょう。言い換えるなら、短いイテレーションを行いなさいということです。1つずつ変更を行い

    ソフトウェア開発で得た教訓22箇条 | POSTD
    indication
    indication 2015/06/18
    一度は実行する…か。なかなか難しい
  • ログイン - はてな

    パスワードを忘れた方はパスワードの再設定を行ってください。 初めての方ははてなID登録 (無料) してください。 うまくログインできない方はお問い合わせをご覧いただき、Cookieの設定をご確認ください。

    ログイン - はてな
    indication
    indication 2015/04/17
    travisciでリリース用のapk生成して、テストと本番用にコミットする荒業をしているが、今度何か書こうかな
  • 【初心者向け】ApacheBench入門 | DevelopersIO

    こんにちは、虎塚です。 今週クラスメソッド社内で性能テストツールのApacheBench をテーマにした勉強会を行うことになりました(勉強会というと固い感じですが、経験者から知見をいろいろ教えてもらおうという雑談会です)。 そこで、ApacheBenchをまったく使ったことがない方の予習用に、ごく基的な情報をまとめておきましたので、公開します。 ApacheBenchのインストール方法 Apache HTTP Serverをインストールします。 sudo yum install httpd または、apr-utilパッケージをインストールすれば、httpdをインストールしなくてもApacheBenchを利用できます。 sudo yum install apr-util ApacheBenchの特徴 ApacheBenchは、Apache HTTP Serverに同梱されている性能テストツ

    【初心者向け】ApacheBench入門 | DevelopersIO
  • Androidのテスティングフレームワークを選定してみる - Qiita

    Androidで良い感じにテストするために、たくさんあるテスティングフレームワークを試して選定してみる。 環境 OS X Android Studio 1.0.2 テスト用サンプルアプリ 入力された値を足して表示するだけのサンプルアプリ(アクティビティを跨いだテストもしたいので2画面構成)。 リポジトリ https://github.com/shikato/AndroidTestSample 今回はこのアプリに対してテストする。 ロジックのテスト Android Testing Framework 標準でJUnitベースのAndroid Testing Frameworkが使える。 これまではJUnit3ベースだったけど、最近JUnit4がAndroid support libraryに含まれるようになり、JUnit4な記述でも簡単に書けるようになった。 JUnit4の導入 1. Andr

    Androidのテスティングフレームワークを選定してみる - Qiita
    indication
    indication 2015/01/26
    参考にする
  • 【組み込み】ハードウェアに近い組み込み開発でもテストの自動化を行いたい - 環境構築編 - - undefined

    普段、業務ではRenesasのRL78やRX、ARMのCoretexM0〜CoretexM3辺りを触ることが多いんですが、このあたりのハードウェアに近いレイヤーの開発はテストの自動化の浸透が遅れている領域の一つかと思っています。(自分の周りだけかもしれませんが・・。) Renesas製のマイコンとなるとホストwindowsになる場合が多く、それがテスト自動化の導入のしきいを上げる要因のひとつになっているのでは?と考えています。 今回はwindows上でCygwin/Eclipse/googleTestを使用し、テストを行えるところまでのメモを記載します。 基的には以下の書籍を参考にしていますが、書籍ではVirtualBox+Ubuntu上に環境を構築しています。 諸事情によりVirtualBox+Ubuntuが使用できない方の参考になればと思います。 参考書籍 モダンC言語プログラミン

    【組み込み】ハードウェアに近い組み込み開発でもテストの自動化を行いたい - 環境構築編 - - undefined
    indication
    indication 2015/01/24
    参考にする。