Я точно не знаю, как писать тесты для этих следующих классов, особенно для контроллера и модели. Можно ли тестировать с помощью jUnit? Я слышал от Selenium, но сначала я проверил бы с jUnit. Спасибо за помощь и с наилучшими пожеланиями.Как проверить контроллер и модель в проекте JSF с помощью jUnit?
Controller.class:
import factory.InfoMessageFactory;
import entity.Product;
import java.io.Serializable;
import java.util.List;
import javax.annotation.PostConstruct;
import javax.enterprise.context.SessionScoped;
import javax.faces.application.FacesMessage;
import javax.faces.context.FacesContext;
import javax.inject.Inject;
import javax.inject.Named;
import model.ProductModel;
import project.Konstanten;
@Named(value = "ProductController")
@SessionScoped
public class ProductController implements Serializable {
private Product product;
@Inject
private ProductModel model;
@PostConstruct
public void init() {
this.product = new Product();
}
public String addProduct() {
this.model.newProduct(this.product);
}
public Product getProduct() {
return product;
}
public void setProdukt(Product product) {
this.product = product;
}
public List<Product> getProducts() {
return this.model.getProducts();
}
}
Model.class
package model;
import ejb.DB;
import entity.Product;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
import javax.enterprise.context.Dependent;
import javax.inject.Inject;
@Dependent
public class ProductModel implements Serializable{
@Inject
private DB db;
public boolean addProduct(Product p){
try{
db.persist(p);
}catch(Exception e){
System.out.println("Blablabla");
return false;
}
return true;
}
}
И DB.class
@Stateless
public class DB {
@Inject
@RealClass
private EntityManager em;
public void persist(Object object) {
em.persist(object);
}
Вы хотите иметь единичные или интеграционные тесты? –
только модульные тесты – Benimo
Используйте arquillian с jsfunit. Путь проще, поскольку вы используете реальный контейнер и не нуждаетесь в том, чтобы высмеивать все, что вам не нужно/нужно издеваться – Kukeltje