The Best Way to Run Integration Tests in Your CI/CD Pipeline

Поделиться
HTML-код
  • Опубликовано: 28 сен 2024

Комментарии • 42

  • @MilanJovanovicTech
    @MilanJovanovicTech  6 месяцев назад +4

    Want to master Clean Architecture? Go here: bit.ly/3PupkOJ
    Want to unlock Modular Monoliths? Go here: bit.ly/3SXlzSt

    • @vadimsbitnev2748
      @vadimsbitnev2748 6 месяцев назад

      Milan please make a video for RIDER or Visual Studio diff for developers

  • @cansozbir
    @cansozbir 6 месяцев назад +2

    Hi Milan,
    I want to thank you, by following your videos and learning the concepts you mention from multiple resources, I found a job that I couldn't even imagine.
    Your pragmatic clean architecture course was the best investment I've ever made in myself 🌻

    • @MilanJovanovicTech
      @MilanJovanovicTech  6 месяцев назад +2

      Way to go! Love to hear this. You're doing an awesome job. 🏆

  • @pragmatic-pr
    @pragmatic-pr 3 месяца назад

    Explaining every steps is very helpful, Learnt new things like what is the meaning of --- no restore .

  • @vibisoft
    @vibisoft 6 месяцев назад +1

    Great video that covers a lot of topics. I suggest breaking this video into smaller digestible pieces. Insert more background information for people who are not very familiar with the topic. Thank you for the good job.

    • @MilanJovanovicTech
      @MilanJovanovicTech  6 месяцев назад +1

      I've done longer videos on each of the individual topics, so it shouldn't be too hard to piece everything together

  • @JoseGonzalez-lt9kr
    @JoseGonzalez-lt9kr Месяц назад

    I like how his kick to star the car

  • @charlyeco20
    @charlyeco20 6 месяцев назад +1

    I'm not sure if i like the fact that an Integration test is using a docker container for the DB. I'm fine with Functional test using it, but the idea of an Integration test is to test the integration between layers and data in an isolated way. In this case if the connection with the DB in docker fails for some reason, your test is going to fail and not because the scenario you are testing, which defeats the purpose of integration tests.
    For integration test i would use InMemoryDB instead.
    But those are my two cents. Cheers!!

  • @seyurlutchminarain3651
    @seyurlutchminarain3651 6 месяцев назад +1

    Hi Milan,
    Thanks for sharing this content. I feel your videos have been helping me understand the .NET ecosystem more and more as time goes by making me a better developer. I wanted to ask how we can implement test containers to write integration tests for a Proxy API, meaning that the API doesn't interact with a Database but rather relies on receiving data from multiple downstream service (like other API's). Thanks in advance!

    • @MilanJovanovicTech
      @MilanJovanovicTech  6 месяцев назад

      You'd need to figure out a way to run all the services together

    • @seyurlutchminarain3651
      @seyurlutchminarain3651 6 месяцев назад

      @@MilanJovanovicTech if these services are deployed via ecs containers and are accessible via publicly accessible URLs can we point the test containers to that URL?

  • @pigrebanto
    @pigrebanto 13 дней назад

    How do you see to run a single-behaviour test case in isolation? I think you said that you are sharing the same containers (so the same DB) acroos multiple test cases. But are they all related to the same test case so that it is just fine to run it in sequence? To me what you showed is more close to Unit test though.

    • @MilanJovanovicTech
      @MilanJovanovicTech  12 дней назад +1

      You should be able to run them in any order. If each test takes care of setup/tear down

  • @MariMari-bh3xh
    @MariMari-bh3xh 6 месяцев назад +1

    Hey Milan, i really appreciate your videos. I learn a lot from them and i am always looking forward to your new videos. I have a question regarding your clean architecture course. I have seen that they are offered for half price off at the moment on your website, however when i try to order them the price is back to full. Can you help me with that? I would like to purchase your course.

    • @MilanJovanovicTech
      @MilanJovanovicTech  6 месяцев назад +2

      You should still be able to see the discount code at the top of the page. Just apply it on checkout.

    • @MariMari-bh3xh
      @MariMari-bh3xh 6 месяцев назад

      thank you :)

  • @2u1u
    @2u1u 6 месяцев назад

    You mention functional tests. I assume that's the api tests that call the endpoints in your github actions.
    Could you do a video on this but include barriers such as if your endpoints require authentication.
    Great video and thanks

    • @MilanJovanovicTech
      @MilanJovanovicTech  6 месяцев назад

      Good call on including Auth in tests, will cover that

  • @kj2w
    @kj2w 6 месяцев назад

    Hey Milan,
    Question for you, if all your integration tests share the same in-memory database, won't they inadvertently affect each other? I think I understand unit testing pretty well, so I'm thinking of the concept where tests are independent of each other. Wouldn't a shared in-memory database break this?
    For instance, if I run integration tests that ADD a user, followed by another integration test that UPDATES a user, followed by another integration test that DELETES a user, then everything works great. But, what if the unit tests now run in the order of DELETE, ADD, UPDATE, or ADD, DELETE, UPDATE?

    • @MilanJovanovicTech
      @MilanJovanovicTech  6 месяцев назад

      Tests shouldn't depend on each other in any way. Each test should seed any data it needs to execute correctly. That way, it won't matter what order they're executed in.

  • @CirillaFionaElenRiannon_
    @CirillaFionaElenRiannon_ 6 месяцев назад +1

  • @rezarezash
    @rezarezash 5 месяцев назад +1

    what is the best way to test data insertion into a azure table storage ?

    • @MilanJovanovicTech
      @MilanJovanovicTech  5 месяцев назад +1

      Can't really test cloud services - other than using the actual service

  • @pedrosilva1437
    @pedrosilva1437 6 месяцев назад +1

    Really great topic to simplify testing. I prefer these general .NET coding videos that you produce, rather than the Clean Architecture rehash videos.

    • @MilanJovanovicTech
      @MilanJovanovicTech  6 месяцев назад +1

      Cool, thanks! I'm trying to balance between the different topics I like to talk about.

  • @pigrebanto
    @pigrebanto 13 дней назад

    well done. So would you run Integration testing on every CI run (checkin of the code)? Wouldn't that be too slow for an on-line CI?

    • @MilanJovanovicTech
      @MilanJovanovicTech  12 дней назад +1

      Yes. These tests are still pretty fast to run. Especially if you reuse the containers between multiple runs.

  • @Yigrashill
    @Yigrashill 6 месяцев назад +1

    I love Your work ❤. I thinking about test i docker, and you make it😅

  • @pureevil379
    @pureevil379 6 месяцев назад

    this was awesome