PHPでE2Eテストが作れるCodeceptionが簡単に使えてとても良かったという話。 Codeception インストール composerでインストール Codeceptionをインストールしたいディレクトリ配下でcomposerでインストールを行う。 composer require "codeception/codeception" --dev 使ってみる セットアップ ./vendor/bin/codecept bootstrap Codeceptionの設定ファイルと、テストのディレクトリが作成されます。 テストクラスを作成する ./vendor/bin/codecept generate:cest acceptance First FirstCest.phpというテストのクラスの雛形が作成されます。 初期設定 tests/acceptance.suite.yml actor
簡単なJavaScriptのプログラムを作る時の雛形プロジェクトを作ったのですが、Sassの組み込みで苦戦したので、備忘録として設定ファイルなどについて残しておきます。 2017/11/3 index.htmlのテンプレートをsrcフォルダーに入れて、html-webpack-pluginでdistにビルドする手順を追加 目次 目次 前提 Browsersync Browsersyncをインストール Browsersyncの設定ファイル WebpackとSassのインストール 必要なパッケージをインストール プロジェクトフォルダー内を構築 設定ファイルを設定 Webpackの実行 Seleniumのインストール SeleniumとCodeceptionの起動コマンドを作成 Codeception Acceptanceテスト用の設定 テストファイルの作成 開発とテストの実行 まとめ Sele
PHPカンファレンス関西 2017の発表資料です。
こんにちは。 今回はYii2ベースのCodeception/PhantomJSを利用して、メールや外部サービスとの連携を伴う機能のテスト自動化について紹介します。 数ヶ月前、関わっていた開発案件で作ったプログラムがリリースされ、現在は不具合の修正、改善要望、新機能の追加などの開発を行うフェーズになりました。改善や機能追加の開発スパンは短いため必然的にリリース作業も多くなっています。 当然リリース前に動作確認をするわけですが、メールや外部サービスと連携した機能を有するサービスの場合、手動でテストすると非常に時間がかかってしまいます。そこでメールや外部サービスとの連携を伴う機能のテスト自動化で動作確認にかかる時間の短縮を目指しました。 テスト自動化の際に利用したフレームワーク/APIの紹介とメール、外部サービスとの連携を伴う機能として以下の処理のテスト自動化を紹介します。 会員登録機能 会員登
Codeceptionとは PHPのテストを簡単に行うためのテスティングフレームワーク 単体テスト、機能テスト、受け入れテストの3種類のテストを簡単に書くことができる 公式ドキュメントも日本語で読めるので敷居が低い Codeception.docs.ja しかしそれでも敷居が高い人や、使ってはいるけどあんまり理解していない人向けに簡潔にまとめていくこととする Codeceptionはテストの実行環境としてPHPUnitを使用しているので、今まで PHPUnitを使っているテストでも、Codeceptionに移行するのは容易である。またテストを実行するためにPHPUnitを別途インストールする必要はない 実際にプロジェクトにCodeceptionを追加する話は次回としている プロジェクトにCodeceptionテストをゼロから追加する 単体テスト・機能テスト・受け入れテスト Codecept
こんにちは。次世代システム研究室のS.Iです。 次世代システム研究室ではシステム開発を行う上で様々な取り組みを行っています。 現在進行中のプロジェクトでは、Codeceptionを利用して生産性や品質を向上させる取り組みを行っています。ここではその導入事例について触れていきたいと思います。 Codeceptionによるテストの自動化 概要 CodeceptionはテストフレイムワークでLaravel5やsymfony、Yii2、Zend FrameworkなどのPHP Frameworkをサポートしています。また、コードジェネレータが提供されているため、簡単なサンプルのテストコードを素早く生成することが出来ます。 コードを生成する 「./codecept list」で以下のように各コマンドを表示することができます。まずは「generate:suite」設定ファイルを作成し、各テストプログラ
LaravelのPHPのみのページのテストは、CodeceptionのFunctionalテストで問題なく動きますが、Vue.jsを利用したようなJavaScriptを使ったページは、Functionalテストでは完全にテストできないようです。そのような場合は、実際のWebブラウザー上でテストするAcceptanceテストを利用します。 Seleniumを利用したり、テスト環境を利用する方法で手間取ったので、動作に必要だった項目をまとめます。 目次 目次 PhpBrowserのテストの欠点 CodeceptionとWebDriverの動作環境は別 .envと.env.testingの読み分け Codeception用の設定 Webブラウザー側の設定 データベースの初期化 テスト時に必要な準備 Codeceptionで利用できるメソッド まとめ 参考URL PhpBrowserのテストの欠点
(submitFormでは、フォームを指定すべきなのがわかりづらい例になっていたので修正 2016/11/1) Laravelアプリの開発時に、テストする時とそうでない時で、別のデータベースを使うようにする方法です。これをやっておけば、テスト時に好き勝手にデータベースをいじれるので便利です。 PHP 用のテストフレームワークである Codeception を導入すると、テスト時に使用する環境設定ファイルを指定できるので、そこでデータベースの情報を変更できます。 Codeception は Laravel を始めとする様々なフレームワークに対応していて導入しやすく、テスト用の機能も充実しているので導入して損はありません。 Laravel5.3でプロジェクトを作成して、 Codeception を組み込んで、データベースのテストを行うまでの簡単な流れです。 目次 目次 前提 Laravelプロ
初心者がテストコードを書くようになった経緯とオススメのテストフレームワーク 初めまして会社の隅っこで働いているvolと窓際で働いてるnagodonです。 今回は機会がありまして別のプロジェクトメンバー同士で技術ブログを書くことになりました。 テストコードを業務で使ったことがなかった二人が探りながらテストコードを書いたお話を、 前半をvol、後半をnagodonが行っていきたいと思います。 よろしくお願いします。 テストコードを書き始めた切っ掛け 私、volのプロジェクトでの切っ掛けは唐突でした。 ちょっと難しい機能を実装する事になり以下の内容で悩んでました。 1.時間足りない・・・ 2.仕様が複雑で設計大変 3.分担難しいけど一人じゃ間に合わない・・・ でもやらなくちゃいけないんだよ!! 時間が無いながらも大きな機能から小さい機能を切り出して 一個一個丁寧に設計 設計が出来上がった所、 手
個人的なメモ書き。Larave5 のプロジェクトで CodeCeptionでテストしながら作っていく形 Version laravel/framework: 5.2.* codeception/codeception: 2.2 Install よく使うものをインストール composer require laravelcollective/html composer require barryvdh/laravel-ide-helper composer require doctrine/dbal composer require barryvdh/laravel-debugbar テスト環境のパッケージインストール composer require codeception/codeception --dev composer require site5/phantoman --dev c
FROM php:7-apache ENV DEBIAN_FRONTEND noninteractive RUN a2enmod rewrite RUN apt-get update && apt-get install -y git zlib1g-dev libicu-dev g++ vim RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/bin --filename=composer RUN docker-php-ext-configure intl RUN docker-php-ext-install intl ADD date.ini /usr/local/etc/php/conf.d/date.ini ADD ./symfony-demo.conf /etc/apache2/si
Would you like to test your PHP code like a boss? Do you feel that basic unit tests and PHPUnit just don’t cut it anymore? If your answer to both questions is yes, you might want to try Codeception, a mature and well-documented testing framework designed to outperform PHPUnit and Behat. In this post, Toptal Freelance Software Engineer Vasily Koval describes how he came to take the plunge and start
$yum -y groupinstall base network-tools development httpd-devel $yum install httpd openssl autoconf libxml2-devel openssl-devel freetype-devel libcurl-devel net-snmp-devel libpng-devel libjpeg-turbo-devel openldap-devel libmcrypt-devel readline-devel gd-devel bzip2-devel libicu-devel libwebp-devel gmp-devel libtidy-devel libxslt-devel $rpm -ivh http://dev.mysql.com/get/mysql57-community-release-el
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く