【java – Spring中的单元测试:将依赖项注入到测试中的组件中】教程文章相关的互联网学习教程文章

java-没有getter的单元测试私有集合【代码】

我有一个具有方法的类ProductRegisterprivate List<Product> products = new CopyOnWriteArrayList<>(); void registerProduct(Product p) {products.add(p); }记住产品是私有的,没有吸气剂,并且是在类内部创建的,我该如何对它进行单元测试?我已经考虑过添加吸气剂,但这不是暴露我不希望别人知道的内部逻辑吗?解决方法:您要对产品ProductRegister而不是CopyOnWriteArrayList进行单元测试.因此,问题必须是如何测试方法registerPro...

java-Apache HttpClient中的单元测试超时【代码】

我正在尝试测试此方法,以检查超时设置是否正确.public HttpClientBuilder getClientBuilderWithTimeouts(final int connT, final int reqT, final int socketT){RequestConfig.Builder requestBuilder = RequestConfig.custom();requestBuilder = requestBuilder.setConnectTimeout(connT);requestBuilder = requestBuilder.setConnectionRequestTimeout(reqT);requestBuilder = requestBuilder.setSocketTimeout(socketT);HttpCli...

java-Spring:对具有字段和构造函数注入的类进行单元测试【代码】

我有下面的课程设置.class Base {@Autowiredprivate BaseService service; //No getters & setters.... }@Component class Child extends Base {private final SomeOtherService otherService;@Autowired Child(SomeOtherService otherService) {this.otherService = otherService;} }我正在为Child类编写单元测试.如果我使用@InjectMocks,则otherService结果为null.如果使用测试设置中的Child类的构造函数,则Base类中的字段显示...

java-Spring Boot单元测试-测试失败,抱怨没有定义“ entityManagerFactory” bean【代码】

我正在尝试在Spring Boot应用程序中为Controller编写单元测试.该应用程序运行平稳,我的问题是运行其测试. 这是测试代码:@RunWith(SpringRunner.class) @WebMvcTest(MyController.class) @AutoConfigureTestEntityManager public class MyControllerTest {@Autowired private MockMvc mockMvc;@Mock private MyRepository myRepository;@Mock ZendeskNotifier zendeskNotifier;@Mock ActivityLogger activityLogger;@Before public...

java-如何将@WebMvcTest用于单元测试POST方法?【代码】

我正在使用Spring Boot和Mockito运行单元测试,并且正在测试RESTful服务.当我尝试测试GET方法时,它可以成功运行,但是当我尝试测试POST方法时,则失败.我应该怎么做才能解决这个问题?提前致谢! 这是REST控制器的代码:package com.dgs.restfultesting.controller;import java.net.URI; import java.util.List;import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.ResponseEntity; imp...

java-如何查找不属于任何套件的单元测试?

使用JUnit 3,如果您忘记将测试添加到套件中,它将无法运行.如何找到不属于顶层套件或其递归包含的任何套件的所有JUnit测试用例?解决方法:使用UCDetector,您应该能够从Eclipse中识别未使用的公共类(包括未使用的TestCases).

java-大量的单元测试导致Binder事务失败而冻结

我已经为Android应用程序编写了约400个单元测试.如果我逐包运行测试,则一切正常,我的所有测试均通过.但是,如果我尝试一次全部运行它们,最终(进行了约360次测试),Android会吐出来!!!失败的活页夹交易错误!在大约10到20个错误之后,我正在测试的应用程序进程被杀死,并且单元测试甚至从未完成. 我应该注意,在此期间Eclipse报告控制台中正在收集测试信息.我认为这很奇怪,因为它表明即使JUnit UI并未反映出它正在运行测试.当一切正常...

java-如何在testet方法内使用断言编写单元测试?【代码】

我有一个问题,我想测试一些在我的junit测试中被其他方法隐藏的值.你怎么会这样.和Mockito在一起吗?子类化? 这里的问题:public class MyService extends AbstractService {public ResponseObject insert(SomeData data) {Request request = createRequest(data);Response response = new Response();callService(request, response);return createResponseObject(response);}protected void callBackendService(...) {...} }您将...

Java服务器端单元测试GCM的结果【代码】

我正在使用GCM(Google云消息传递)来向Android应用发送通知.我的服务器使用的是Google提供的gcm-server.jar,我正在使用documentation.我可以将通知发送到设备,而不会出现问题. 现在,我尝试基于从PushNotificationDaoGcmImpl的私有方法sendNotificationToServer返回的Result(source)进行业务逻辑的单元测试. 我知道Result不能被嘲笑,因为它是最后一个类,而且由于没有公共构造函数,因此简单地将其实例化为新Result()将无法工作.在com....

java-使用Mockito对DAO层进行单元测试【代码】

我正在尝试使用Mockito对Spring Hibernate项目进行单元测试.以下是我的DAO类的实现:@Repository public class EmployeeDAOImpl implements EmployeeDAO {@Autowiredprivate SessionFactory sessionFactory;public void setSessionFactory(SessionFactory sessionFactory) {this.sessionFactory = sessionFactory;System.out.println("Session factory");}@Overridepublic ArrayList<Employees> getAllData() {System.out.println(...

java-在单元测试中,运行实际代码而不是函数存根和模拟对象【代码】

这是一个非常简单的单元测试用例. 我在School课堂上有两种方法:protected S3Object getAwsObject(AmazonS3Client client, String bucketName, String keyName) {GetObjectRequest objRequest = new GetObjectRequest(bucketName, keyName);return client.getObject(objRequest); }上面的方法由下面显示的第二种方法调用:public void doTask() {// get clientAmazonS3Client client = getAwsS3Client();// invoke the 1st method...

java-单元测试ContainerRequestFilter,它将ResourceInfo与Mockito一起使用【代码】

我正在尝试使用Mockito对使用@NameBinding应用的ContainerRequestFilter进行单元测试.过滤器检查注释字段以确定该做什么.请参阅示例代码: 注解@Target({TYPE, METHOD}) @NameBinding @Retention(RetentionPolicy.RUNTIME) public @interface MyAnnotation {MyEnum info() default MyEnum.DEFAULT; }MyEnumpublic enum MyEnum {VALUE1,VALUE2,DEFAULT }使用MyEnum作为条件的带注释的筛选器@MyAnnotation public class MyFilter imp...

java-Spring Boot:如何在单元测试中覆盖默认属性【代码】

我尝试为单元测试加载第二个属性文件,那会覆盖一些属性. 在@Configuration上使用@PropertySource加载它无效,用@TestPropertySource加载它也不起作用.仅在@TesPropertySource上直接设置属性有效,但是当我尝试将其添加为元注释时,它不起作用. 这是一个示例项目:https://github.com/cptwunderlich/SpringTestProperties 我宁愿加载一个对所有测试都具有影响的文件(例如,使用@PropertySource),但是如果不起作用,那么至少有一个自定义的...

什么是HTTP正确的Java单元测试库?

我正在开发一个servlet应用程序,我正在使用JWebUnit来检查所有基本响应,但是现在我必须开始使用其他与GET(POST,PUT和DELETE)不同的HTTP方法. 因此,我找到了HttpUnit,它看起来可以满足我的需求,那里提供了POST和PUT方法,我想我可以通过HttpUnit支持的HEAD遍历DELETE方法. 但是我发现该项目没有近期活动.最新版本大约是两年前.所以我的问题是人们是否还使用其他任何库,或者HttpUnit是否适合我的情况? 谢谢.解决方法:我建议改为使用H...

java-何时在单元测试中使用模拟对象【代码】

我知道关于模拟和测试有很多问题,但是我发现没有什么问题可以完美地帮助我,因此我仍然在理解以下方面存在问题: 如果我弄错了,请纠正我,但是据我所知,单元测试用于隔离测试一个特定类的业务逻辑,并且如果有外部需要的任何对象,它们将被模拟.因此,例如,如果我有一个简单城市公民的管理系统,该系统将公民添加到列表中并按其姓名返回公民(假设:公民仅包含一些基本个人信息),如下所示:public class ProcessClass {ArrayList<Citizen>...

单元测试 - 相关标签