タグ

関連タグで絞り込む (2)

タグの絞り込みを解除

PHPUnitに関するhkjのブックマーク (9)

  • 実際にテストを書いてみた|開発室ブログ|株式会社アクセスジャパン

    最近バタバタしていて更新遅れてしまいましたが、技術ネタ書きます。 以前「テストの」としてTDDを実践して思ったことを記載しましたが、TDDを始めてもう4ヶ月も経ちました。徐々に三十路が体に出てきています。腰が重いです。夜更かし辛いです。 実際にTDDでプロジェクトを始めると躓いたり、リアルで「考える顔」アイコンになったりした場面がけっこうありましたが、その中でも特に長い時間、リアルで「考える顔」アイコンになった作業である「GuzzleHttpでリクエストを投げる」ときのテストの作成と実装を簡単な説明を交えて書いていきます。 テストファーストで書くときにしていることや、テストを書くうえで頻繁に出てくるMockの作成のことを書いているので、少しでもテストの雰囲気が伝われば幸いです。 今回の環境 PHP 7 Laravel 5.7 PHPUnit 7.5 GuzzleHttp 6.3 別サーバ

    実際にテストを書いてみた|開発室ブログ|株式会社アクセスジャパン
  • PHPUnitを使用したPDOオブジェクトのモック

    hkj
    hkj 2020/12/20
  • PHPUnit DBUnit のテストでハマったことなどメモ - tanaka's Programming Memo

    データベースのテストを行うには、PHPUnitのエクステンションであるDBUnitを利用することができます。 PHPUnit マニュアル – 第8章 データベースのテスト インストール ComposerでDBUnitをインストールします。composer.jsonの"require-dev"に、以下を追加します。 "phpunit/dbunit": ">=1.2"追加したら、 composer update してインストール環境を更新。 継承するクラス PHPUnit_Framework_TestCase ではなく、 PHPUnit_Extensions_Database_TestCase を継承 $this->assertEquals()などはそのまま利用できる 必要なメソッド public function getConnection() テスト対象のデータベースへのPDOの接続を定義

    PHPUnit DBUnit のテストでハマったことなどメモ - tanaka's Programming Memo
    hkj
    hkj 2020/12/18
    setUp()メソッドはテスト開始時の初期化を行うメソッドですが、これがあるとgetDataSet()が正しく機能しない場合があり、parent::setUp();とする必要もある
  • PHP DBまわりのテスト - Qiita

    DBを使ったテストを考えた場合、 ・Insertのテストが走るとTableにそのデータがInsertされテストが正常完了する ・上記テストをもう一度走らせると、前回のInsertされたデータがあるのでDuplicateでテストが失敗する 上記の問題を解決することを考える ・テストが走るとテーブルが初期化される ・Insertのテストが走ると初期化されているので、前のテストでInsertされたデータは消えているので、Duplicateにはならない。 phpunit/dbunit ・テストが接続するDB情報を設定できる ・テストが走るとテーブルのデータが初期化される インストール Composerを使ってインストール

    PHP DBまわりのテスト - Qiita
  • フラットphpをテストする - Qiita

    まえがき phpunitを用いればphpのテストで困ることはありません。 ただし、今夜までだ! テスト対象はフラットphp。classもvendorもなく、DBアクセスもありません。 もちろんcomposerも使用していません。 <?php namespace honya; [$status, $res] = fncHonya(); header('HTTP/1.1 '.$status); header('Content-Type: application/json; charset=utf-8'); echo json_encode($res); function fncHonya(){ // ちょこっとビジネスロジック return [200, ['result'=>'ok']]; } phpunitはフラットphpをテストできない! 初めて知りました。フラットphpで開発したことがな

    フラットphpをテストする - Qiita
    hkj
    hkj 2020/12/13
  • PHPUnitでクラスに入っていない関数のテスト - 書いて覚える日記

    プログラマじゃないのにPHPUnit導入の調査をしなきゃいけなくて、ずーっと疑問だったのがやっとわかったので書いておく。 <?php // function.php function sample($x,$y) { return $x + $y; } <?php // FunctionTest.php use PHPUnit\Framework\TestCase; class FunctionTest extends TestCase { public function testSample() { require_once 'function.php'; $this->assertEquals(5,sample(2,3)); } } 普通にクラス呼ばないで関数書けばok。 テストケースのファイル名とかクラス名とかは何でも大丈夫。 と思ったけど、なにか不都合あれば追記する。 雑記 自分がず

    PHPUnitでクラスに入っていない関数のテスト - 書いて覚える日記
    hkj
    hkj 2020/11/29
    クラスに入っていない関数のテスト
  • PHPUnit + DBUnit + YAML で MySQL をテストする - Qiita

    PHPUnit マニュアル – 第8章 データベースのテスト https://phpunit.de/manual/current/ja/database.html で紹介されている、YAMLデータセットを使ったテストを動かしてみる。データベースに MySQL を使う。 ソースコードはこちら: takatama/php-dbunit-yaml https://github.com/takatama/php-dbunit-yaml Mac OS X を使って開発する。 MySQL の準備 MySQL をインストールする MacMySQL を Homebrew でインストールする手順 - Qiita http://qiita.com/hkusu/items/cda3e8461e7a46ecf25d ユーザー、データベース、パスワードを作る ユーザー user@localhost を、パスワ

    PHPUnit + DBUnit + YAML で MySQL をテストする - Qiita
    hkj
    hkj 2020/11/23
    現在ではhttps://github.com/kornrunner/dbunitを使い、PHPUnit_Extensions_Database_TestCaseを\PHPUnit\DbUnit\TestCaseに、PHPUnit_Extensions_Database_DataSet_YamlDataSetを\PHPUnit\DbUnit\DataSet\YamlDataSetにして使用
  • PHPUnitのDBUnit拡張を使ってみる

    アライドアーキテクツの伊藤です。 前回のエントリでは、PHPUnit系のお話を書きましたが、今回もしつこくPHPUnit系のお話を書きます。PHPUnitでテストを書いている時、データベースへの接続が発生するようなテストがあった場合、皆さんはどうしてますでしょうか。 レガシーコード改善ガイドによれば、データベース接続を伴う単体テストはあまり望ましくない為、データベース接続を伴うクラス、メソッドとの依存関係を排除して単体テストを書くべきとあります。 僕もそれが来あるべき姿だと思いますが、今回はその話は一旦横に置いておき、PHPUnit上で使えるDBUnit拡張について書かせて頂きます。 使い方 通常のテストクラスは「PHPUnit_Framework_TestCase」を継承して作りますが、DBUnitを使う場合は「PHPUnit_Extensions_Database_TestCase」

  • GameWithのPHPUnitを4から8にバージョンアップした話 #GameWith #TechWith - GameWith Developer Blog

    こんにちは!GameWithのサーバサイドエンジニアのkuromokaです! 先日、GameWithのサイトをPHP7.3にバージョンアップした記事を書きました。 tech.gamewith.co.jp ただPHPUnitのバージョンはそのまま4系を使い続けていて、4系だとPHP7に対応していないために次のような問題点がありました。 新規にPHP7.3のコードは書けるけどテストコードが書けない 既存のテストコードが書かれている箇所を、PHP7.3のコードに変更するとテストコードが失敗 そのため今回、現行の最新バージョンであるPHPUnit 8へのバージョンアップを行いました。 対応内容 そのままパッケージのバージョンを上げただけでは当然動かなかったので、次の対応を行いました。 DbUnitの変更 DB関連のテストコードでは、DbUnitというパッケージを使っています。今回の対応ではこれも合

    GameWithのPHPUnitを4から8にバージョンアップした話 #GameWith #TechWith - GameWith Developer Blog
    hkj
    hkj 2020/11/21
    PHPUnit_Extensions_Database_TestCaseから\PHPUnit\DbUnit\TestCaseへの変更など
  • 1