前提条件
- EC-CUBE(今回は4)プロジェクト がローカル環境に保存されている事
- Docker でEC-CUBEを立ち上げている状態
- OS:Ubuntu
概要
今回は、標準EC-CUBEの単体テストをするために
・標準EC-CUBEの(Front)新規会員登録画面に新規入力項目を追加
・testファイルの書換え
・PHPUnit の実行
という手順を踏んだ。
実行手順
新規会員登録画面に新規入力項目を追加
- 関連テーブルに新規カラム追加
対象テーブル:dtb_customer
カラム名:hobby
※company_nameを参考にしながら実行 - CustomerEntity にメンバ変数 + geter + seterを追加
- EntryType クラス に hobbyバリデーション設定を追加
- Twigに新規項目を追加
- テストファイルに、新規追加項目のテスト内容を記述
プロキシ―ファイルの罠話を追加
EntryController.php で $form = $builder->getForm(); が実行されたタイミングで
下記エラーが出力される。それはなぜ?
Can’t get a way to read the property “hobby” in class “Eccube\Entity\Customer”.
想定できる原因
1.(2)の設定が出来ていないのでは?
2.(1)でdtb_customer にカラム追加ができていないのでは?
=> どちらもOKだった。
customerプロキシ―ファイルをec-cubeが見ていたから。