MongoDB
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> MongoDB

Làm thế nào để vô hiệu hóa mongodb được nhúng vào flapdoodle trong một số thử nghiệm nhất định

Daemon Embedded Mongo được bắt đầu với EmbeddedMongoAutoConfiguration . Bạn có thể tắt khởi động daemon trong một lần kiểm tra bằng cách loại trừ EmbeddedMongoAutoConfiguration từ quét:

@RunWith(SpringRunner.class)
@SpringBootTest
@TestPropertySource(properties = "spring.autoconfigure.exclude=org.springframework.boot.autoconfigure.mongo.embedded.EmbeddedMongoAutoConfiguration")
public class DoNotStartMongoTest {
    //...

    @Test
    public void test() {
    }
}

Tôi thích một chức năng ngược lại:bắt đầu nhúng Mongo daemon theo yêu cầu. Để làm điều này, bạn cần loại trừ EmbeddedMongoAutoConfiguration trong mã sản xuất:

@EnableMongoRepositories
@SpringBootApplication(exclude = EmbeddedMongoAutoConfiguration.class)
public class MySpringBootApplication {
    public static void main(String[] args) {
        SpringApplication.run(MySpringBootApplication.class, args);
    }
}

Sau đó, trong mã thử nghiệm, hãy thêm chú thích sẽ cho phép khởi động daemon Mongo được nhúng:

@Retention(RUNTIME)
@Target(TYPE)
@Import(EmbeddedMongoAutoConfiguration.class)
public @interface EnableEmbeddedMongo {
}

Và chú thích bài kiểm tra của bạn:

@RunWith(SpringRunner.class)
@SpringBootTest
@EnableEmbeddedMongo
public class StartMongoTest {
    //...

    @Test
    public void test() {
    }
}



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Chúng ta có nên sử dụng dbref hoặc tài liệu nhúng trong một ứng dụng đọc nhiều không

  2. MongoDB tổng hợp dự án chọn lọc

  3. MongoDB $ atanh

  4. Cách hiệu quả nhất để nhận tất cả giá trị cho một trường trong MongoDB &Node.js

  5. Triển khai $ addToSet để cập nhật mảng theo yêu cầu PATCH