【PHP】PHPUnitを使う(初期セットアップとかんたんな使い方)

導入から簡単なテストコードの実行までの手順のまとめ 前提条件 composerを使ってインストールするので、composerが必要 セットアップ $ composer global require "phpunit/phpunit:*" $ ~/.composer/vendor/bin/phpunit --version PHPUnit 7.5.17 by Sebastian Bergmann and contributors. インストールされるディレクトリ cd ~/.composer/vendor/phpunit/phpunit テストコードの書き方 ここでは名前を保持するUserクラスのテストコードを書いてみる User.php (テスト対象のモジュール) <?php class User { public $name; public function getName() { return (string)$this->name; } } UserTest.php (テストコード例) TestCaseクラスを継承する(場所は以下) ~/.composer/vendor/phpunit/phpunit/src/Framework/TestCase.php testXXXXというメソッドを用意して、その中…

続きを読む

【PHP】PHP_CodeSnifferを使う(コーディングルールのカスタマイズ)

社内独自のコーディン規約などにあわせてカスタマイズする方法 インストールされるディレクトリ 以下のディレクトリにインストールされている ~/.composer/vendor/squizlabs/php_codesniffer/ -rw-r--r-- 1 638 10 28 13:36 CONTRIBUTING.md -rw-r--r-- 1 187 11 26 12:08 CodeSniffer.conf.dist -rw-r--r-- 1 6399 10 28 13:36 README.md -rw-r--r-- 1 10085 10 28 13:36 autoload.php drwxr-xr-x 6 192 10 28 13:36 bin -rw-r--r-- 1 1083 10 28 13:36 composer.json -rw-r--r-- 1 1533 10 28 13:36 licence.txt -rw-r--r-- 1 6280 10 28 13:36 phpcs.xml.dist -rw-r--r-- 1 7054 10 28 13:36 phpcs.xsd -rw-r--r-- 1 340 10 28 13:36 phpstan.neon drwxr-xr-x 5 160 10 28 13:36 scripts drwxr-xr-x 16 512 10 …

続きを読む

【PHP】PHP_CodeSnifferを使う(初期セットアップとかんたんな使い方)

PHP_CodeSnifferとは決められたルールに沿ってPHPコードが書かれているかチェックしてくれる。また、ルールに沿った形に整形してくれるPHP_CodeFixerもある。 前提条件 composerを使ってインストールするので、composerが必要 セットアップ $ composer global require "squizlabs/php_codesniffer=*" ~/.composer 配下に以下がインストールされる $ ~/.composer/vendor/bin/phpcs --version PHP_CodeSniffer version 3.5.2 (stable) by Squiz (http://www.squiz.net) $ ~/.composer/vendor/bin/phpcbf --version PHP_CodeSniffer version 3.5.2 (stable) by Squiz (http://www.squiz.net) phpcs --- ソースコードがコーディング規約を守っているかを判定する。 phpcbf --- ソースコードをコーディング規約に合わせて整形する。 対象ファイルを直接編集する。 ルールによっては修正できないものもある。 phpcs (PHP_CodeSniffer) ソースコード例 : test.php 以下…

続きを読む

Google Pixel3 XLを買ってYmobileのSIMを使う

今更ですがPixcel3 XLが中古でかなり安くなっていたので購入しました。 Pixel3と4の違いとしては以下の記事にわかりやすくまとめられています。 https://japanese.engadget.com/2019/10/15/pixel-4-pixel-3-felica-esim/?guccounter=1&guce_referrer=aHR0cHM6Ly93d3cuZ29vZ2xlLmNvbS8&guce_referrer_sig=AQAAAL-Fp37DiZA75vnJIfq9fYIG7HeOkDJ-w1MhKf7LBZ5NhBCjOXUq7LMcSrfLE66OS-U_EOAOMa5M3spt4HFSydjiTCYDV70X46oXyfclW1-bJBolNIrdodUWtj--ZN3yeBXT43XOHqItfthxx97pg1T2dyW_Jjrqith8ehCxL9MN ざっと見て目新しい違いとしては... メモリが4GBから6GBへ 指紋認証が無くなった(FaceIDへ) Motion Senseが追加 カメラが2眼レフへ ぐらいでしょうか。あとは大きな変化はないと思います。 個人的に顔認証より指紋認証派なのでこれがないとちょっと困ります。 Motion Senseは現状そこまで興味が沸いていない。また中古でかなり安くなっているところを買ったので、Pixel4が中古に出回って安くなるのはだいぶ先になる。などなどの理由から、全く後悔は…

続きを読む

【AWS】コンソールログインに二段階認証(MFA)を設定する

AWSコンソールへのログインは通常アカウント、ユーザー名、パスワードによって認証しますが、これにMFAを加えて確実に本人しか認証できないようにするのがベターです。 MFA ー Multi-Factor Authentication携帯電話や他のデバイスを仮想多要素認証として使用すること。このデバイスをMFAデバイスという。 事前準備 ここではMFAデバイスとしてAndroid携帯を使用する これにより、このAndroid携帯の持ち主にしか認証できないようにするのが目的 認証アプリをインストール 認証用のアプリとして、Google 認証システムを使う (これ以外にもいろいろあるが使ったことない...) https://play.google.com/store/apps/details?id=com.google.android.apps.authenticator2この他にもSymantec製や https://play.google.com/store/apps/details?id=com.verisign.mvip.main マイクロソフト製がある https://play.google.com/store/apps/details?id=com.azure.authenticator 事前準備は以上 MFAの設定 AWSコンソールへログイン IAM ユーザーアクセスと暗号化キーの管理を開く (サ…

続きを読む

【Android】2019/11からtargetSdkVersionが28未満のアプリはGoogle Playで公…

Google Playからこんなメールが来てました。 This is a reminder that starting November 1, 2019, updates to apps and games on Google Play will be required to target Android 9 (API level 28) or higher. After this date, the Play Console will prevent you from submitting new APKs with a targetSdkVersion less than 28. タイトルの通りですが2019/11からtargetSdkVersionが28未満のアプリはGoogle Playで公開できなくなるようです。昨年もありましたね。今年はAndroid9が対象のAPIレベルとなるようです。 Play Console での対象 API レベルに関する要件 https://support.google.com/googleplay/android-developer/answer/113469#targetsdk

続きを読む

【GAS】Logger.logとconsole.logの違い

前回 作成したスクリプトの定期実行された際のログが記録されないのでなんでか調べてみました。 実験用スクリプト 試しにコンソールにも出力してみる function myFunction() { Logger.log('Hello World!! (Logger)'); console.log('Hello World!! (console)'); } デバッグログ 「Ctrl」+「Enter」で実行した結果が以下 実行ログ サイドメニューの実行数から当該のタスクを確認したのが以下 console.log により出力したログが、実行ログとして記録されるようです。Loggerはデバッグ時しか出ないのでここは使い分けというか注意が必要...

続きを読む

スポンサーリンク