Writing robust integration tests in .NET with WireMock.NET

Sdílet
Vložit
  • čas přidán 28. 04. 2021
  • Become a Patreon and get source code access: / nickchapsas
    Check out my courses: dometrain.com
    Hello everybody I'm Nick and in this video I will show you how you can step your integration testing (or even acceptance testing) up using WireMock.NET. Third party APIs are a crucial part of a lot of applications and mocking them during integration testing can be really tricky. WireMock.NET is a library that can make your live so much easier by allowing your to cleanly create a mock version of the third party API that you're integrating with.
    Given WireMock.NET a star: github.com/WireMock-Net/WireM...
    Don't forget to comment, like and subscribe :)
    Social Media:
    Follow me on GitHub: bit.ly/ChapsasGitHub
    Follow me on Twitter: bit.ly/ChapsasTwitter
    Connect on LinkedIn: bit.ly/ChapsasLinkedIn
    #dotnet #testing #wiremock

Komentáře • 25

  • @deathmachine808
    @deathmachine808 Před 3 lety +16

    You’ve got a really solid channel man. One day when I can actually stop working long enough to learn something else I’m going to be deep diving.

  • @kaiserbergin
    @kaiserbergin Před 3 lety +5

    Nice work. Been using wiremock for some time, and I'm glad to see it getting some love on your channel. I started pointing my devs to your channel as you're constantly posting useful content and do a good job at keeping on top of current features and libs. Good work, man. Thanks.

    • @user-tp8xp1hj8e
      @user-tp8xp1hj8e Před 2 lety

      me2, the company i work in also created a custom wrap over it,
      @Nick consider to also cover the topic of PACT testing

  • @chamiz
    @chamiz Před 2 lety

    Good work!. Thanks Nick

  • @dimamartyshchenko2265
    @dimamartyshchenko2265 Před 2 lety

    Really nice ! Thanks for the video

  • @darianferrer
    @darianferrer Před 3 lety +1

    Great demo Nick! I've been using it for a couple of years and when building micro-services with multiple externals APIs it's very helpful. One thing that maybe you could expand on this topic is how to do recordings and playbacks, I've never tried that because its not that hard to setup manual requests/responses, but maybe you have experience on this.

  • @vespuxi2516
    @vespuxi2516 Před 11 měsíci

    Beautiful

  • @Mrnik123s
    @Mrnik123s Před 3 lety +1

    Nice. Do I need to dispose of wiremock server after use ?

  • @ofiry
    @ofiry Před 11 měsíci

    Great video Nick, can u explain why this is better then mocking the httpclient

  • @clearlyunwell
    @clearlyunwell Před 3 lety

    👍🏽

  • @amazotv8382
    @amazotv8382 Před rokem

    Hi Nick, can this be used with mstest framework and not xunit?

  • @vibes992000
    @vibes992000 Před 3 měsíci

    I would be much happier if you would have shown a more real life case scenario for wiremock i.e writing request /endpoints and response contracts pair in a separate external text file rather than building them from precompiled fluent syntax. Still a good video to get started and see internal workings of wiremock web service espeically its configuration via fixtures

  • @aaronkoller8811
    @aaronkoller8811 Před 3 lety +1

    Wire mock does look like a great tool. Maybe I am missing something here, why not just use the Microsoft TestServer where in the client you can use Moq to mock any external dependencies/responses?

    • @StefHeyenrath
      @StefHeyenrath Před 3 lety +2

      Correct, in the example code there is an interface (Refit) to connect to GitHub. So in this case, it was also possible to completely stub this using Mock.
      However in case the client, which connects to a 3rd party system, cannot be mocked, or if you want to run a more integration-test like test, then WireMock.Net can be used to mock the request with certain responses from that 3rd Party system.
      Also note that you can also use response templating, which enables you to create not just static responses but also dynamic response based on properties from the request.

  • @diegomelgar2696
    @diegomelgar2696 Před měsícem

    Hi @Nick, great video, something that is very useful for testing!!!
    Is it possible or how can I have access to this repo or is there a video about de Fixture that you use to create a User in the database? I was searching in your channel if you have a video with title that contains "Fixture" but I don't really know if you have one that explains how to create fixtures.
    Thanks!!!

    • @diegomelgar2696
      @diegomelgar2696 Před měsícem

      Or is it used for creating data with random data? I thoroughly inspect this video and see that you use AutoFixer library. Is it used for making objects with random data?
      I know the concept of factories in Laravel, that is a feature to create random objects to insert in database