タグ

Programmingとテストに関するluccafortのブックマーク (16)

  • テスト、正常系から書くか異常系から書くか - hitode909の日記

    今週は同僚と毎日長時間ペアプロしていた。 おもしろかったのが、同僚のテストの書き進め方で、一番複雑な正常系のテストをちゃんと書いてから、その複雑なテストをもとに、いろんな条件を削っていって異常系のテストを作っていく、というところ。 僕は逆で、入力が空なら何も起きない、とか、一番簡単な異常系のテストを書いて、そこだけ通るのを確認して、よしよし、と進めていって、メソッド来の動きは最後に確認して終わる。 変な進め方だな〜(主観)と思って眺めていたけど、たしかに正常系のテストが通っていれば、あとはバリデーションまわりのチェックとか、例外となる場合のチェックをすれば終わりで、異常系のテストがすごい速さで書かれていておもしろかった。 …という話をしたら、チームメンバーたちは正常系のテストから書きはじめるという人が多くて、正しくことを確認してから、1個ずつ前提となる条件を外してみて試す、と聞いて、同値

    テスト、正常系から書くか異常系から書くか - hitode909の日記
    luccafort
    luccafort 2020/10/24
    面白かった。個人的には異常系から書きたいが、時間がないときは正常系から書き始める。 正常ではたまに本来はエラーになるところをすり抜けてしまうことがあり、先に異常系を書いてから薄く正常系を書きたい。
  • 絶対にやってはいけない「Apple IDをテストで13歳未満にすること・・」

    概要 AppleIDの生年月日を13歳未満にすると、 そのアカウントが成長!?して13歳になるまで修正できないというお話(;;) Apple IDとは -> iPhoneとかMacとか使うというに使うアレ 公式サイト説明:https://support.apple.com/ja-jp/apple-id Apple ID とは? Apple ID とは、App Store、Apple MusiciCloud、iMessage、FaceTime などの Apple のサービスを利用する時に使うアカウントのことです。たった一つの Apple ID とパスワードで Apple のすべてのサービスにサインインできます。 詳細 今回やりたかったこと →ファミリー共有のテストをしたい(未成年のアカウントで) 子供のアカウントでアプリで課金したりするときは、親のアカウントに承認リクエストが飛びます。 →

    絶対にやってはいけない「Apple IDをテストで13歳未満にすること・・」
    luccafort
    luccafort 2017/08/10
    Developmentオプションみたいので設定を可変にしてほしいが多分そういう想定になっていないので変えれない、変えさせないのだろうなー。会社端末で設定しろとそういうことじゃないかな。
  • Big Sky :: Re: Go言語感想文

    幾らか言いたい事があったので。 Go言語感想文 - なるせにっき 序 最近、敵情視察を兼ねた仕事ととしてGoでアプリケーションを書いていた。このアプリケーションがどんなものかはそのうち id:tagomoris さんがどこかで話すと思うけれど、この コンポーネント ... http://naruse.hateblo.jp/entry/2017/06/02/203441 GoroutineとChannel Goroutineはようするにスレッドなんですが、文法と実装の支援でより気軽に使えるのが他の言語との違いでしょうか。なので、Goroutineをどれだけほいほい使うべきかというコスト感覚を身につけることがとても大事な気がします。Rubyなどとは気持ちを切り替えていく必要があるでしょう。ぼくはまだ切り替えきれていません。 Goroutine はスレッドではありません。Goroutine はコ

    Big Sky :: Re: Go言語感想文
    luccafort
    luccafort 2017/06/03
    元記事で違和感を覚えてたら詳細が書かれていて知らなかった知見に出会えた。そうかコルーチンだと思ってたがコルーチンでありスレッドであるのが正解だったのか知らなんだ。テストの書き方も同様。
  • Goではじめてみたブラウザの自動操作 - Qiita

    はじめに 面倒なWEBブラウザの定型作業を自動化したくて。 WEBブラウザの自動操作には定番のSeleniumを利用する。 Seleniumは主にウェブブラウザのテストに利用されているが、テスト用途以外でも利用はできる。 なおウェブスクレイピングが目的であれば、scrapeとかgoqueryなどを利用するほうが簡単。 それでもSeleniumを利用するのは、 実際のブラウザが利用できるという点であり、以下のような利点があると思っている。 IEなど特定のブラウザのみをサポートしているサイトの自動操作 ごりごりのJavascriptやFlashを利用されているサイトの自動操作 証跡として画面のスクリーンショットを取得できる 前提知識 WebDriverを介することで、スクリプトとしてJava,C#,Pythonなど多くの言語から利用できる ブラウザごとにWebDriverが用意されており、1つ

    Goではじめてみたブラウザの自動操作 - Qiita
    luccafort
    luccafort 2017/01/21
    agouti知らんかったのでページに移動したら左側の花のバックグラウンド画像が主張強くてチョット異常にうざいw…でも良さ気。
  • Bayonetta2 開発ブログ

    Bayonetta2 開発ブログ 『ベヨネッタ2』発売2周年&amiibo初公開! 2016.09.20

    Bayonetta2 開発ブログ
    luccafort
    luccafort 2014/11/25
    ないよりはマシレベルだろというがデバッガの負担や機械に任せれるところは任せるべきという思想こそを大事にするべきだとは思わんかね?人力で消耗するよりはいいじゃん。
  • 【ノンプログラマ向け】プログラマの仕事内容を理解する(1) ~「テスト」という工程が必要な理由 | きのこる庭

    前書き 「一緒に働いている以上、プログラマのことを理解して仕事をしたい」そう考えている企画・ディレクションの方は経験則的に少なくない。 ノンプログラマから見て、プログラマの仕事はイメージが湧きづらく、何故その工程にそこまでのコストをかける必要があるのかわからない事が多い。 プログラマは作業の必要性を説明してくれるかもしれないけれど、専門用語も多いしイマイチピンとこなかったりする。 ここで重要なのはまさに「イメージ」だと思う。すなわちイメージを提供するための良質なメタファーだと思う。メタファーが良質であれば より直感的に理解できる。 実際メタファーの力はバカにならない。「Chef」も「Jenkins」も それぞれ 統一的な世界観が学習者の直感的な理解を後押ししてくれる。 というわけで、今回から数回に分けて なるべく「技術的な話」をせずに イメージを想起しやすいストーリーを導入することで プロ

    【ノンプログラマ向け】プログラマの仕事内容を理解する(1) ~「テスト」という工程が必要な理由 | きのこる庭
    luccafort
    luccafort 2014/11/20
    絵が何度見てもまずりんのノブ子にみえてしまって内容が入ってこないでござる。
  • 最近行ったTDDの講演や寄稿について - t-wada の日記(旧)

    こんにちは、だんだんブログ勘を取り戻していきたい和田です。このエントリは TDD Advent Calendar 2013 の 11 日目のエントリです。このエントリでは、最近行ったテスト駆動開発関連の講演や寄稿に関して、この機会にまとめておきたいと思います。 DevLOVE 現場甲子園 まず 11/9 にDevLOVE現場甲子園2013にて「テストを書く文化を育てる戦略と戦術」というタイトルで短い講演をさせて頂きました。DevLOVE 甲子園は楽天第2タワー大広間の四隅で最大四つの講演が同時に行われるという意欲的なイベントで、話す方も気合い(と声量)が必要な場でした。 この講演では、開発者が自動テストを書く文化が無かった組織に自動テストの文化を育てる際の姿勢、心がけについて短い時間でまとめました。そのときの講演資料がこちらです(ライセンスは CC BY です)。 テストを書く文化を育てる

    最近行ったTDDの講演や寄稿について - t-wada の日記(旧)
  • テストを書く文化を育てる戦略と戦術

    at DevLOVE現場甲子園2013 2013/11/09 (土) http://http://devlove.doorkeeper.jp/events/5464

    テストを書く文化を育てる戦略と戦術
  • ペアプロの新ジャンル「ぶつかり稽古」の面白さ - Pixel Pedals of Tomakomai

    秋のエンジニアぶつかり稽古 2013で横綱級エンジニアのペアプログラミングを見てきたのだけど、これが想像以上に面白かった。他のイベントでもドンドンやるべき。 「ぶつかり稽古」はあんちぽさん(@kentaroさん)が考案した新しいエンターテインメントペアプログラミングのスタイル。単体テストを書く"受ける側"と、そのテストを通すために実装する"ぶつかる側"が交互にコードを書いて行き、聴衆はそれを観覧する。一種のライブコーディングではあるのだが、2人が実装に関わるため、事前の想定と違う方向にコーディングが進み易く、実装者のよりリアルな問題への対処方法を観察することができる。その人が普段どのようにコードを書いているかも、より正確に想像しやすい。参加者もテストを通す側の立場に立って内容を考えられるので、自分の実装と参加者の実装の癖の違いを楽しむこともできる。ぶつかる側だった@__kanさんは懇親会で

    ペアプロの新ジャンル「ぶつかり稽古」の面白さ - Pixel Pedals of Tomakomai
    luccafort
    luccafort 2013/11/24
    なるほど、これ面白いかも。カンファレンスでやるよりも会社内とかで全然関係ない人同士でやらせてみたい。
  • 巨大な(あるいは、汚くて邪悪な)コードの泳ぎ方 - mizchi's blog

    ロンドンへの飛行機(11時間)で暇だったから書いた文章。 自分でゼロからすべてのコードを書けるときはテストファーストでいいけど、アンドキュメントな実験的なライブラリを利用する際や、巨大なプロジェクトの一部としてコードを書く際は、テストファーストよりもとにかくコードを書きまくって挙動の変化を確かめるほうが有用な時がある。 まあ多分どっかでこういうのはハウツー化してあるんだろうけど、自分ルールが固まってきたので、メモっておく。 目的を設定する トップダウンに読むには、コスパが悪いことが多い。とにかく「アレする」「コレする」という目的を定義して、そのためにその周辺領域からボトムアップに読むことにしよう。 エンドポイントを追う 巨大なプロジェクトに放り込まれた最初の段階では、エンジニア当に無力だ。 最初にやることは、自分が処理を挟むべき位置を見つけることだろう。 まずはファイル名や関数名を読ん

    巨大な(あるいは、汚くて邪悪な)コードの泳ぎ方 - mizchi's blog
    luccafort
    luccafort 2013/11/07
    「最初の段階で何をテストしているかわからないケースが多々ある。」あるある、あとで見返すとあぁこういうことがテストしたかったんだろうなー、でもその仕様なくなったんだ…とかな。そういう意味でテストは素晴ら
  • いまだにユニットテストって受け入れられないんだろうな - 個人的なまとめ

    色んな所で「テスト(ここではユニットテスト)を書かないのは小学生までだよねー」とか、もっと汚い言葉で言われたりするけど、いまだにうちのチームでは自分だけしか書かない現状が悩ましい。 Jenkinsさんが激おこになっても誰も何も反応しない。 もちろん、全部が書けるとも思ってないので、自分が不安なところとか、変更が多く入りそうなところとかを中心に書くようにしてる。一種の精神安定剤みたいなもん。 あるとき、一緒に働いてるエンジニアさん(ここではAさんとしておこう)に「ここ難しそうだから、テスト書いたほうがいいですよ」って話をしたら、「じゃぁ、工数かかっちゃいますね」って言われて結局書いてなかったな。 そうだよ。ユニットテスト書いたら工数かかるよ。それは純然たる事実。でも、再利用できないチェックシートを作ってやるよりもいいと思うんだけどね。しかもこの前に見せてもらったこのチェックシートも運用レベル

    いまだにユニットテストって受け入れられないんだろうな - 個人的なまとめ
    luccafort
    luccafort 2013/10/08
    最初はとりあえず義務化しないと誰も書く文化がないから無理じゃないかなー。一度書いてなれてしまえば工数がかかろうと利便性に目覚める可能性が微レ存。それでも駄目なら…心が折れるな。
  • ユニットテストにまつわる10の勘違い | DevelopersIO

    渡辺です。さる方面からテスト系のエントリーがまだか…と催促されたので、ユニットテストについて少し考えてみたいと思います。 最近、TwitterのTLをチェックしていると、JUnitを利用しているにも関わらず違和感のあるTweetや、原因をJUnitにして来解決すべき問題から目をそらしているようなTweetを多く見かけます。そこで、JUnitをによるユニットテストに関するありがちな勘違いをまとめてみました。 なお、JUnitの部分は、RSpecでもNUnitでも適当に置き換えて読んでも構いません。 1.JUnitを使うことが目的という勘違い JUnitを利用すること自体を目的にしたところで何も得る事はありません。 ありがちな話ですが、「納品物としてJUnitのテストコード(または実行結果)を求められている」ことが理由でJUnitを利用しているならば、それは足かせでしかない可能性があります。

    ユニットテストにまつわる10の勘違い | DevelopersIO
    luccafort
    luccafort 2013/09/24
    「2.」がん?どういうこと???ってなったので自分の勉強不足感が否めない。
  • Rails で、Controller に定義されている action を一度に取得する方法はありますか? - QA@IT

    平素よりQA@ITをご利用いただき、誠にありがとうございます。 QA@ITは「質問や回答を『共有』し『編集』していくことでベストなQAを蓄積できる、ITエンジニアのための問題解決コミュニティー」として約7年間運営をしてきました。これまでサービスを続けることができたのは、QA@ITのコンセプトに共感をいただき、適切な質問や回答をお寄せいただいた皆さまのご支援があったからこそと考えております。重ねて御礼申し上げます。 しかしながら、エンジニアの情報入手方法の多様化やQAサービス市場の状況、@ITの今後のメディア運営方針などを検討した結果、2020年2月28日(金)15:00をもちましてQA@ITのサービスを終了することにしました。 これまでご利用をいただきました皆さまには残念なお知らせとなり、誠に心苦しく思っております。何とぞ、ご理解をいただけますと幸いです。 QA@ITの7年間で皆さまの知識

    Rails で、Controller に定義されている action を一度に取得する方法はありますか? - QA@IT
    luccafort
    luccafort 2013/06/26
    Ruby初心者だけども見ててなるほどと思ったので多分わかりやすい解説なんだろうなー。
  • Travis CIと連携してカバレッジを測定するCoverallsがCandyCaneに炸裂した件 : candycane development blog

    先日告知したCandyCaneの開発会が無事に執り行われました。参加者の皆様にはCandyCaneの特製パーカーと肉たくさんカレーを進呈させていただきました。Hamacoさんの動きっぷりにイベントの盛況さが現れています。 丸一日のTDDは強烈な成果 今回は新しく開発に加わってもらう方を募るという事も兼ねて、ユニットテストを厚くするという作業を中心に丸一日の開発を行いました。よって1日で20以上のプルリクエストをマージしましたが、昨日は何も増えていません。とはいえ実際に稼働するアプリケーションのソースコードにテストを書き、プリリクエストとCIを併用したチーム開発を行うという内容は実にチャレンジでTDD未経験の方にとっても実りある内容になったようです。 Travis CIは最強 コミットがプッシュされる度に自動的にユニットテストを実行して結果をレポートしてくれるTravis CIですがやはり便

    luccafort
    luccafort 2013/04/30
    読んだ。これはちょっと試してみたい。
  • JS開発におけるTDDと自動テストツール利用の勘所

    カジュアルにMySQL Clusterを使ってみよう@MySQL Cluster Casual Talks 2013.09Mikiya Okuno

    JS開発におけるTDDと自動テストツール利用の勘所
  • JavaScriptのテストツール「testem」が素晴らしいぞ - Mach3.laBlog

    この記事は賞味期限切れです。(更新から1年が経過しています) JavaScriptユニットテスト一年生の私が、Nettuts+ のチュートリアルで知ったテストツール 「testem」のお陰で大変捗ったので是非お勧めしたく、ここで紹介してみます。 testem ってなに testem via GitHub : airportyh/testem Unit testing in Javascript can be tedious and painful, but Testem makes it so easy that you will actually want to write tests. 要するに、面倒なJSのユニットテストをより快適にしてみんなでハッピーにテスト書こうよ!というツールです。 testem自体はnode.jsベースで動作し、Jasmine/QUnit/Mochaに対応して

    JavaScriptのテストツール「testem」が素晴らしいぞ - Mach3.laBlog
  • 1