よし、次はテストクラスだ。
こればっかりは、本気でどうにかしたかった。
Salesforceの開発は、テストクラスの作成に異様に時間を食う。
いや、テストは大事、当たり前だ。
しかし、品質を落とさずに時間を削れるなら、削るに越したことはない。
作り方は至って簡単、らしい。
コード画面を右クリックするか、右上のフラスコめいたボタンか、
あるいは左の・・・どうにも形容しがたいボタンでも押すか。

Apex Fileには、テストしたいクラスのファイルを選ぶ。当然だろう。
Apex Methodはテストしたいメソッド、とある。全部テストしてほしいので、メインとなるメソッドを選択した。
Test Fileは「Create a new file」を選ぶと、テスト対象のクラス名の後ろに「Test」を付けたファイルをこしらえてくれるという。
あとは「Generate」を押すだけ。
すると、差分を見せる形で生成したコードを閲覧できる。問題なければ「Accept」を押す、とあるが……どうにも腑に落ちない。取り込みテスト用のデータとやらも、ヘッダ名やヘッダ数がまるで違うではないか。
テストクラス生成時に情報を追加することもできないのだから、これは困った。どうしたものか……。
調べてみれば、どうやら完璧なテストクラスを一発で作ってくれるわけではない、というのが世間の常識らしい。むしろ、テストしたいクラスをDev Assistantに丸ごと渡して「テストクラスを作れ」と依頼した方が、よほど賢明だという。
言われた通りにやってみた。
作ってくれた。今度のは、ぱっと見は問題なさそうだ。これをデプロイして、実行してみよう。
はい、エラーが出た。
仕方がない、こっからは手動でなおそう。
その後、ソースを修正し、テストを通すことができた。カバレッジ率も問題なし。
ただし、テスト対象のクラス自体にも問題があったりして、100%のものをポンと作ってくれるわけではないようだ。もっとも、AIは日々進化しているのだから、来月には修正されている、などということもあり得るのだろうが。
とはいえ、7〜8割は瞬時に作ってくれるのだから、使う価値は十分にある。
仮に5割しか作ってくれなかったとしても、コードを書く時間が半分になるのだ。
是非活用していきたい。



