タグ

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

タグの絞り込みを解除

DBUnitに関するhkjのブックマーク (5)

  • 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 DBUnit で getDataSet() が動作しなかった件 - Qiita

    環境(今回の原因は環境関係ないですが) FuelPHP 1.8 PHP 5.6 PHPUnit 5.5.7 DBUnit 2.0.3 動かなかったソース class TestCase_Controller extends \PHPUnit_Extensions_Database_TestCase { protected function getConnection() { //~~~割愛~~~ } protected function getDataSet() { //実際に読み込む内容は各テストクラスに記載している } protected function setup() { //~~~いろいろ 処理(割愛)~~~ }

    PHP DBUnit で getDataSet() が動作しなかった件 - Qiita
    hkj
    hkj 2020/12/18
  • PHP DBまわりのテスト - Qiita

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

    PHP DBまわりのテスト - Qiita
  • 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