私のチームと私はプロジェクトとしてSpringでWebappを作ったので、コードの大部分をテストしなければなりません。問題は、かなり多くのメソッドでFaceContext
メッセージを使用していることです。これらのメソッドをテストしようとすると、常にFaceContext-MessagesでNullPointerException
が返されます。 どうすればそれらを避けることができますか?JunitテストでFaceContextからのNullPointerExceptionを回避する方法は?
私たちの現在の解決策は@Test(expect = NullPointerException.class)
を使用することですが、それは実際に私たちが行きたい方法ではありません。これはJunitで可能ですか?これはSeleniumが必要ですか?
例は次のようになります。
public boolean validateInfo(){
boolean correct = true;
if(startDate == null || endDate == null) {
if(startDate == null)
FacesContext.getCurrentInstance().addMessage("msg", new FacesMessage(FacesMessage.SEVERITY_ERROR, "Gib ein Startdatum an!", ""));
if(endDate == null) FacesContext.getCurrentInstance().addMessage("msg", new FacesMessage(FacesMessage.SEVERITY_ERROR, "Gib ein Enddatum an!", ""));
return false;
}
if(startDate.after(endDate)) {
FacesContext.getCurrentInstance().addMessage("msg", new FacesMessage(FacesMessage.SEVERITY_ERROR, "Startdatum muss vor dem Enddatum sein!", ""));
correct = false;
}
if(maxChildren < 1) {
FacesContext.getCurrentInstance().addMessage("msg", new FacesMessage(FacesMessage.SEVERITY_ERROR, "Max. Kinderanzahl muss größer 0 sein!", ""));
correct = false;
}
if(bringTime.after(pickupTime)) {
FacesContext.getCurrentInstance().addMessage("msg", new FacesMessage(FacesMessage.SEVERITY_ERROR, "Bringzeit muss vor dem Abholzeit sein!", ""));
correct = false;
}
return correct;
}
それは最初FaceContextメッセージに行くとNullPointerException
をスローします。助けてもらえますか? StackOverflow上の他の解決策は役に立たなかった。
どのようにプログラムを起動しますか?いくつかのローカルサーバーにホスティングしていますか? –