java
1 public String Test01(String in){ 2 if(in == null || in.length() != 13){ 3 return null; 4 String phoneNumber = res(in); 5 if(phoneNumber .length() != 15){ 6 return null; 7 } 8 } 9} 10 11 12//引数桁テスト 13@Test public void 01(){ 14assertNull("12345", target.test001(null)); 15assertNotNull(target.test001("123456789012345")); 16}
junitテストコードを書くとき、Test01メソッドの引数に
ついてのテストコードは作成できますが、Test01の中のif(phoneNumber .length() != 15)
に対してはテストコードを書いて実行することはできないでしょうか?
テストコードで引数を15にしてしまうと if(in == null || in.length() != 13)でreturn null;
でそれ以上進めない。
junitというのは Test01メソッドでいうとpublic String Test01(String in){}の最初の引数inに対してのみの試験となりますか?
そもそもどういうテストケースを作ったのでしょうか?
機能仕様次第なのでどういう試験が必要かは設計次第ということになります。
この内容だけでは他者には何とも言えません。
設計者に聞くべきところもあります。コードだけでは話ができません。
if(phoneNumber .length() != 15)に対してテストコードの作成をしたいです。
設計した人に聞いてください。
そもそもTest01()というメソッドもコンパイルエラーがでる内容ですし(returnの後に同じスコープ内にコードがある)、やはりコードだけでは話ができません。
テスト設計書には引数15に対しての試験項目が存在します。ですが、その場合junitでどのように実行できるかがわかりません。記載したテストコードではjava.lang.AssertErrorが出てしまいます。
>テスト設計書には引数15に対しての試験項目が存在します。
テスト設計書があるのなら余計に設計者に聞くべき内容です。
何の事情も知らない赤の他人にはどうにもできません。
それにテストしたい機能自体もご自身が組まれたものではないように見受けられます。
他者がどうもできない条件が揃いすぎてます。
> 記載したテストコードではjava.lang.AssertErrorが出てしまいます。
それはテストが失敗している=実装が正しくない
ということです。
そもそもですが、target.test001("123456789012345")
は、NotNullになることを確認したいのですか?
どのような値になることを想定していますか?
数字以外が含まれているかいないかの確認をしたいです。
回答3件
あなたの回答
tips
プレビュー