Rectorでリファクタリングを自動化 その3
以前にリファクタリングを自動化できるツール、Rectorを紹介しました。前回の記事ではRector側で用意された変換ルールに則ってリファクタする方法をお伝えしました。しかし、Rectorの真骨頂はむしろ自分で変換ルールを作成して各々の環境に合わせて自由にカスタマイズ出来る点にあります。直近の実務でそちらに触れる機会がありましたのでご紹介致します。
以前にリファクタリングを自動化できるツール、Rectorを紹介しました。前回の記事ではRector側で用意された変換ルールに則ってリファクタする方法をお伝えしました。しかし、Rectorの真骨頂はむしろ自分で変換ルールを作成して各々の環境に合わせて自由にカスタマイズ出来る点にあります。直近の実務でそちらに触れる機会がありましたのでご紹介致します。
前回のCypressでの画面表示テストに続き、今回はログイン・ログアウトのテストです。カスタムコマンドの作り方やHTTPリクエストの実行など、Cypressのテストに欠かせないアプローチが出てきますので参考になれば嬉しいです。
長年管理しているお客さんのプロジェクトのユニットテスの数が増えてきました。Featureテストも含めてテストケースの数は2,400以上あります。私の古めのWindowsのマシン(i7-9700CPU @ 3.00GHz)のWSL2環境では、7分51秒かかります。今回はこのテスト実行所有時間をほぼ1/10の50秒以下に縮めた話です。
テスト自動化ツールCypressのセットアップに続いて、今回は画面表示のテストです。Cypressでの画面遷移や要素の取得、アサーションなど基本的な書き方をご紹介します。
円安の世の中AWSのドル支払は痛いです。最近お客さんのためにコスト削減できないかと調査したところなんと1ヶ月に1,400ドル以上もコストを下げる結果となりました。年間にしたら16,800ドルの節約です!
流行し始めた当初は何て事ない個人の呟きが主流だったのが、あれよあれよと著名人が使い出し、いつの間にか近代SNSの代名詞へと変貌を遂げたTwitterもといXですが、実はこのララジャパンもアカウントを持っていて時折最新記事が投稿されたらお知らせをツイートしています。しかし、何分手動で行なっているのでついつい忘れてしまいサボり気味です。(ごめんなさい!)何とか改善しなければ、と思いX APIを活用して自動ツイートが出来ないか試してみる事にしました。
Webアプリの動作確認時、ブラウザをポチポチ手動でテストをするのも良いですが、可能な限り自動化すればテストに割く時間や手間を大きく削減できます。 テスト自動化ツールは色々なタイプがありますが、導入がシンプル・JavaScrirptベースなCypressを試してみました。
以前、Laravel Excelというpackageを使用してExcelやCSVにデータを出力する方法について解説しました。Laravel Excelはinterfaceが充実しており、それに則ってコードを書くと体系的かつ統一的に少ない記述量で実装できるので気に入っていました。しかし、大きなデータを扱う際などはなぜか消費メモリが徐々に増えていく為(今は改善されているかもしれませんが)、
さあ大変です。PHP 8.2において動的プロパティが廃止(Deprecated)となりました。PHP 9.0ではErrorExceptionが投げられるようです。動的プロパティをたくさん使っているLaravelのプログラムは大丈夫なのでしょうか?
今回は、Laravelの動的プロパティの裏側を見てみます。つまり、どうしてインスタンスのプロパティがメソッドのコールとなるのか。