タグ

phpunitに関するclavierのブックマーク (13)

  • PHPUnit コードカバレッジの向上事例を紹介します

    ヤフー株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。LINEヤフー Tech Blog はじめに こんにちは、ヤフーメール エンジニアの小沼俊治です。 開発者の皆さんの中には、CIにユニットテストの自動化を導入して、日々開発されるプロダクトの品質維持に務めている方々も多いのではないでしょうか? 私の担当サービスでもxUnitを使ってプロダクトコードにテストコードを作成して、CIツールのジョブで定期的にユニットテストを実行して品質維持に活用しています。 そして、それらテストコードがきちんと品質維持に貢献されていくためには、プロダクトコードのビジネスロジックをどれだけ網羅できているのか? と言う観点が重要になってきます。 その観点の達成状況を確認する指標の1つとして、ユニットテストを実行した時に行われるコードカバレッジ解

    PHPUnit コードカバレッジの向上事例を紹介します
  • PHPUnit でよりよくテストを書くために

    The document defines a fib function that recursively calculates Fibonacci numbers and prints the 10th Fibonacci number. It then defines some unit tests for a Calculator class that test the add method by asserting the expected result. Finally, it defines some unit tests for a User class that test validating a user object.Read less

    PHPUnit でよりよくテストを書くために
  • PHPUnit 並列実行に挑戦中 - jwata blog

    仕事PHPUnitを使うようになって1年くらいが経ち、チーム内にテスト書く文化が定着してきました。 テストの質と量が向上して、有効性も高まってきていい感じだなーと思う反面 「時間かかり過ぎ 」 という、面倒くさい問題が浮上してきました><。 現状のテスト実行ログ % ./vendor/bin/phpunit PHPUnit 3.7.28 by Sebastian Bergmann. ............................................................... 63 / 612 ( 10%) ............................................................... 126 / 612 ( 20%) .............................................

    PHPUnit 並列実行に挑戦中 - jwata blog
  • PHPUnit のスタブの will() で使えるメソッド « nia.note

    PHPUnit ユニットテストを書くときに重宝するPHPUnit。でも、以外と詳しく解説したマニュアルというか、リファレンスが無いというのもちょっと悲しい。 (もしかしたらあるのかもしれないです。あんまり深く探してないので←) 公式の日語訳ドキュメントは存在しますが、どうやらすべての説明が網羅されているわけではないようです。 今回はユニットテストを助ける立役者であるモックオブジェクトを使って、メソッド呼び出しを検査を設定する際の各メソッドの戻り値の指定の仕方について、備忘録的に書きます。長い。 基のおさらい まずは基をおさらいしましょう。 とりあえず簡単なテストケースを書きます。テスト対象のクラスがどのような実装かは察してください。 class Sample_Test extends PHPUnit_Framework_TestCase { public function test_

  • CakePHP + PHPUnitでの TDD 超入門 - Qiita

    はじめに このエントリーは TDD AdventCalendar 2013 の第21目の記事です。 前日のエントリーは、tq_jappyさんによる「レガシーテストコード改善ガイド #TddAdventJp」でした。 わたしも Advent Calendar 初参加です。どうぞよろしくお願いします。 この記事では主に TDD とはなにか聞いたことはあるけど、実践したことはない、というような方を対象に、 CakePHPPHPUnit を使った TDD の進め方をご紹介したいと思います。 CakePHPPHPUnit はそれぞれ開発環境にインストールされて、使える状態になっていることを仮定します。 準備 まずは CakePHP インストール直後の、この画面が出るところから始めます。 何をテストするか 今回はテスト対象として、ソーシャルゲームでよくあるような処理を取り上げてみたいと思い

    CakePHP + PHPUnitでの TDD 超入門 - Qiita
  • PHPUnit マニュアル – 第17章 PHPUnit と Selenium

    Selenium Server はテストツールのひとつです。これは、OS を通してブラウザのプロセスを動かし、 ブラウザのタスクを自動実行します。 あらゆるプログラミング言語で稼動しているウェブサイトに対応しており、 現在主流のあらゆるブラウザで使用することができます。Selenium RC は Selenium Core を使用しています。これは、ブラウザ上でのタスクを自動的に実行する JavaScript のライブラリです。Selenium でのテストは、 一般のユーザが使用するのと同じようにブラウザ上で直接実行されます。 主な使用例としては、受け入れテスト (各システム単体のテストではなく、結合されたシステム全体に対するテスト) や ブラウザの互換性のテスト (ウェブアプリケーションを、さまざまなオペレーティングシステムやブラウザでテストする) などがあります。 PHPUnit_Se

  • 一人でゲームをリリースするための自動化 PHPUnit編 ~目指せCoverage 100%~

    Coverage 100%への道のり 1. --coverage-htmlして現状を確認 2. time()やmt_rand()などを使うコードもテスト 3. 複雑なオブジェクトを使うコードもテスト 4. ファイルシステムを使うコードもテストRead less

    一人でゲームをリリースするための自動化 PHPUnit編 ~目指せCoverage 100%~
  • 「8時間耐久PHPUnitの教室」を開催しました。 : candycane development blog

    もう何回目かわからなくなってきた8時間耐久シリーズですが、今回は新作となるPHPUnitの教室を下北沢オープンソースカフェで開催してきました。初物という事もあり色々と試行錯誤な部分もありましたが、参加者の皆さんのご協力のおかげで楽しい時間を過ごすことができました。開催してみて思ったのが、PEARのセットアップ方法が環境ごとにカオスすぎるという事です。Macの場合はPHPの導入方法がOSバンドル、MAMP、MacPorts、自力ビルドと豊富かつ、重複して導入されている可能性が極めて高いのでパスの解決などが人によって違っています。PEARのinclude_pathを基準とした動作スタイルは実習の手順にはかなり影響が大きかったです。(セッションの為にphp.iniを変更させるというのは極力避けたいですし)またユニットテストは強制的に触る機会がないとなかなか始められないという事もあり、こういった内

  • 「40分濃縮 PHP classの教室」をPHPカンファレンス関西2012で開催しました : candycane development blog

    40分濃縮 PHP classの教室 すでにブックマークなどでご覧になった方もいるかと思いますが、表題の講演をPHPカンファレンス関西で行って来ました。サブ会場での講演でしたが40人以上の人にお越し頂けたので弾丸でしたが大阪にいってよかったと思います。既に動画などは上がっている内容であっても、参加者のニーズがあるのであれば再演するというのはいいことなのではと思いました。なお今回のセッションの動画もすでに公開されています。 Video streaming by Ustream今回は時間の関係で内容を大幅に削っています。継承やstaticにほとんど触れないオブジェクト指向というのもさみしい気もしますが、まずは関数ベースのコードを理解できる人がクラスを使ったコードを追うことができるのが目標でしょうか。今後もこのような中級者向けのセッションとしてPHPUnitPHPの環境構築、セッションの取り扱

  • All About Mocking with PHPUnit | Envato Tuts+

    There are two styles of testing: "black box" and "white box" styles. Black box testing focuses on the object's state; whereas, white box testing focuses on behavior. The two styles complement each other and can be combined to thoroughly test code. Mocking allows us to test behavior, and this tutorial combines the mocking concept with TDD to build an example class that uses several other components

    All About Mocking with PHPUnit | Envato Tuts+
  • 自動テストするぞ!tmux + PHPUnit + watchmedoで構築する自動ユニットテスト環境

    自動テストするぞ!tmux + PHPUnit + watchmedoで構築する自動ユニットテスト環境 こんにちは、斉藤です。 前回はテスト駆動開発という開発方法をご紹介しました。 その中では”ユニットテストの実行”を主体に開発を行っていくことをお伝えしました。 今回は(余計な話も交えつつ)そのユニットテストの実行を自動化する方法をご紹介します。 * なぜ自動化? ユニットテストを手動で走らせていませんか? ユニットテストなど、開発プロセスの中で機械がやれることを手動で行うと、そこでスピード(and 効率)がガクッと下がります。機械任せにできるものは、以下のようなタスクがあります。 手動で行うことにしていると、そのプロセスを実行することを忘れてしまったり、「めんどくさいよー」ってなってしまい、実行回数が減ってしまいます。 その結果、品質の低いアプリが生まれますよね・・・。 近年では、それら

  • PHPUnit と Selenium2 を使ってブラウザベースの自動テストを実行するための最初の一歩的な何かを発表してきた - 雑文発散(2013-03-09)

    ▼ [PHP][Selenium] PHPUnit と Selenium2 を使ってブラウザベースの自動テストを実行するための最初の一歩的な何かを発表してきた 「(CakePHPとか)PHPのテストについての勉強会」で「PHPUnit + Selenium2 First Step Guide」と題した発表をしてきた。 「First Step Guide」としたのは、これを見ながら「Selenium 環境を整備して、簡単な PHPUnit コードを書く」ところまで実行できるようにしたかったため。 当は発表よりもハンズオン的にやってみたかった話ではある。 発表資料 https://speakerdeck.com/suzuki/phpunit-plus-selenium2-first-step-guide サンプルコード https://github.com/suzuki/phpunit-se

    PHPUnit と Selenium2 を使ってブラウザベースの自動テストを実行するための最初の一歩的な何かを発表してきた - 雑文発散(2013-03-09)
  • phpunit + selenium rcで自動テストMac編 - komagataのブログ

    Selenium RCをインストール。 PHPUnitをインストール。 PHPUnit_Seleniumをインストール。 % pear install phpunit/PHPUnit_Selenium testを書く(ファイル名はクラスと同じCamelCase) test/integrations/LoginTest.php <?php require_once 'PHPUnit/Extensions/SeleniumTestCase.php'; class LoginTest extends PHPUnit_Extensions_SeleniumTestCase { protected function setUp() { $this->setBrowser('*firefox'); $this->setBrowserUrl('http://foo/'); } public functi

  • 1