TESTS UNITAIRES D'UNE SERVLET
Bonjour,
J'ai un petit souci pour résoudre ce problème car je n'ai jamais fait de test auparavant.
voilà le sujet :
Écrire les tests unitaires pour la classe fr.epsi.mvc.InscriptionServlet.
Attention, la méthode publique d'invocation d'une servlet est Servlet#service(ServletRequest, ServletResponse). Les méthodes doXXX (doGet, doPost, ...) sont des méthodes protected qui sont appelées par la méthode Servlet#service(ServletRequest, ServletResponse) selon la valeur de retour de la méthode HttpServletRequest#getMethod().
Pour cet exercice, à vous de choisir la stratégie que vous utiliserez pour fournir les doublures(mock) nécessaires au SUT.
quelqu'un pourrait me renseigner sur un bon tutoriel ou une suggestion car je n'arrive pas à voir une meilleure solution. j'avoue que je suis débutante en ce qui concerne les tests.
voici le code de la servlet
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
|
@WebServlet("/inscription")
public class InscriptionServlet extends HttpServlet {
private static final long serialVersionUID = -8710385077137206045L;
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
forward("inscription.jsp", req, resp);
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
req.setCharacterEncoding("UTF-8");
Inscription inscription = new Inscription();
inscription.setLogin(req.getParameter("login"));
inscription.setEmail(req.getParameter("email"));
inscription.setConditionsGeneralesApprouvees(Boolean.parseBoolean(req.getParameter("conditionsGeneralesApprouvees")));
try {
inscription.validate();
req.setAttribute("inscription", inscription);
forward("inscriptionOk.jsp", req, resp);
} catch (InscriptionInvalideException e) {
req.setAttribute("errors", e.getErrorMessages());
forward("inscription.jsp", req, resp);
}
}
private void forward(String page, HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
RequestDispatcher dispatcher = req.getServletContext().getRequestDispatcher("/WEB-INF/views/" + page);
dispatcher.forward(req, resp);
}
} |
je vous remercie pour toute suggestion.
Avatar75