Automated Testing in Python with pytest, tox, and GitHub Actions

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

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

  • @Jacob011
    @Jacob011 3 года назад +672

    Finally someone discussing project setup, directory structure, git workflows etc. There needs to be more videos like this.

    • @mCoding
      @mCoding  3 года назад +79

      Very welcome! Thanks for watching.

    • @syinx2301
      @syinx2301 3 года назад

      superb!

    • @mandyokpoji8787
      @mandyokpoji8787 2 года назад

      @@mCoding incredible work son.

    • @soyciro4623
      @soyciro4623 2 года назад

      totally agree!
      Please, more videos on this!

    • @jeevan1016
      @jeevan1016 Год назад +1

      True! need more videos on this topic

  • @Mutual_Information
    @Mutual_Information 3 года назад +161

    I've been blindly pattern matching for spinning up repos for awhile now and it's nice to see explanations for a lot of those choices. I also didn't realize all the pytest functionality I was missing. I like this longer/more detailed style too - it's necessary for training strong engineers. (Though, not sure if it's the best choice for RUclips growth). Thanks for making this. I'll be recommending it to coworkers.

    • @mCoding
      @mCoding  3 года назад +70

      We'll see how this one performs. I already have a pretty sophisticated audience so maybe they'll love it! If not I'm fine with a video tanking now and again, I know some people will still find it useful. Thanks for watching as always!

    • @alexandergazo6064
      @alexandergazo6064 3 года назад +10

      @@mCoding man you are the only one with real content, with the aim to teach beyond basics. your structure is awesome. the editing style is top notch. keep it up please. you are great

  • @nathanbrown2640
    @nathanbrown2640 3 года назад +104

    Utterly brilliant walkthrough!
    Our company is currently implementing automated testing for a new project and all config requirements have worried me that I have no clue what's going on and would have no clue if stuff went wrong!
    This is so clearly explained and motivated, I feel perfectly equipped to ensure we can implement it all and know all our tests are run!

    • @mCoding
      @mCoding  3 года назад +14

      Amazing! I'm so glad I was able to help. Thanks for sharing 👍

  • @shibak4
    @shibak4 3 года назад +34

    RUclips is my Netflix when it comes to content related to programming, databases and DevOps, so I go through a ton of content regularly. but this video was one of THE most informative pieces of content I've ever watched. As a lower-intermediate Python programmer, making python apps installable has always been a head-scratcher for me and it hasn't been easy to find content which address almost all aspects of the process with clear guidelines. You just made my life MUCH easier and I thank you for that.

    • @mCoding
      @mCoding  3 года назад +1

      Glad I could help! Thanks for sharing.

  • @PhilippGrafendorfer
    @PhilippGrafendorfer 3 года назад +2

    one of the most important python tutorials I have ever seen. It covers a wide range of daily problems as python programmer.

    • @mCoding
      @mCoding  3 года назад

      Wow thank you! Glad you enjoyed 😀

  • @pwned4323
    @pwned4323 3 года назад +4

    The quality of this content *Chef's kiss*

  • @tim-timman8868
    @tim-timman8868 3 года назад +26

    Thank you for this great resource into the current mess of python packaging. It's something I've spent many hours trying to figure out, and now I know I missed a bunch. And with you handing a test setup on a silver platter, I now have no excuse to bring with formal testing.
    Once again, thank you. I really liked the longer format (when required) and am happy you didn't chop it up into parts.
    I would be really interested in similar in-depth videos on the things you mention in the video overview for example. If you could make a video on how to create a Python wrapper for a C library, I would be ecstatic.

    • @mCoding
      @mCoding  3 года назад +4

      You're welcome! Noted on those suggestions. I have a huge list of stuff to get to ... eventually 😀

  • @LucasSilva-jd2bf
    @LucasSilva-jd2bf 3 года назад +14

    Please make more videos like this. I've been having a lot of trouble when it comes to creating a github project. It's hard to find resources on project structure, git workflow, package structure, versioning, etc. If possible, it would be nice if you could create a series showing how to create and maintain a github repo. I want to understand how to increase versions, how to review pull requests and issues, how to write a good commit message, how to create tags/releases, how to create a documentation, and much more.

  • @grelyelo
    @grelyelo 3 года назад +4

    This essentially was my experience doing this for work, except I didn't have this video explaining everything and had to rely on the python documentation. Thanks a bunch!

    • @mCoding
      @mCoding  3 года назад +2

      I will probably use it as a reference for myself in the future 😉

  • @johnburke8337
    @johnburke8337 3 года назад +1

    I saw your poll about this being long. Long was the right choice

    • @mCoding
      @mCoding  3 года назад +1

      Thanks, I imagined a few ways of cutting it up but they just didn't make as much sense to me. I'm glad I went with this version (even though it's probably not going to get as many views, I think it's worth it).

  • @therealplnts8533
    @therealplnts8533 3 года назад +25

    Was literally trying to figure out testing for the past week, its like you know exactly what I'm struggling on!
    Great video as always

    • @mCoding
      @mCoding  3 года назад +3

      Great to hear I was able to help (again?)! 😀

  • @JB1RD367
    @JB1RD367 3 года назад +36

    The perfect amount of info to get started with automated testing. Thank you!

    • @mCoding
      @mCoding  3 года назад +2

      Glad you enjoyed it! Thanks so much for the kind words!

  • @tushargupta764
    @tushargupta764 3 года назад +17

    This will be a great reference video, somewhat like a good stack overflow answer you keep referring :)

    • @mCoding
      @mCoding  3 года назад +3

      Thanks for the kind words!

  • @shreydixit2690
    @shreydixit2690 3 года назад +17

    This is by far your most advanced tutorial. Too much info in a single video but still super helpful. Thanks !

    • @mCoding
      @mCoding  3 года назад +14

      Don't feel like you have to watch it all at once. I see this very much as reference material that you can go back to over and over to get the bits you need. Thanks for watching!

    • @raffe01fu
      @raffe01fu 2 года назад

      @@mCoding I think this is great, that is just how i have / is currently using it. I have a small library mostly for internal use and can only fit in some time here and there for doing work on it. So this tutorial has taken a few weeks to test out and implement. But now i will feel much better doing changes to the library as i can much easier catch if (when) i break something. Cheers!

  • @laxlyfters8695
    @laxlyfters8695 Год назад

    This video needs to be at millions of views this is the subtle additions to projects that add more depth to any code base and more to talk about during interviews and help you in sdnet QA and even site infrastructure developer

    • @mCoding
      @mCoding  Год назад

      We're on our way! Tell your friends and coworkers 😀

  • @adrianperez8695
    @adrianperez8695 2 года назад +1

    I recently moved to a new company that uses Python for it's automated tests suites. I've had to spin up very quickly and your videos have been very helpful. Thank you for making these!

    • @mCoding
      @mCoding  2 года назад

      Great to hear! Best of luck at your new company!

  • @dylanalexander5163
    @dylanalexander5163 Год назад +1

    The discussion on the project structure was fantastic, really insightful. It such an important aspect of a Python project, yet you don't see much information on it.

  • @andreitudorache3049
    @andreitudorache3049 Год назад

    Lost count of how many times I referenced, searched and shared this video with other people.

  • @SudiptaKarmakar87
    @SudiptaKarmakar87 2 года назад +2

    This is one of the best and most complete python test setup guide I have ever seen in text or video form. While I knew about all the things mentioned here, your clear and incremental explanation has definitely helped me refresh everything and their interconnections. I am going to point every newbie (to testing) to this video hereafter. Thank you.

    • @mCoding
      @mCoding  2 года назад

      Thank you very much i appreciate the recommendation!

  • @random1-c4y
    @random1-c4y 10 месяцев назад +1

    This is great, I agree, finally someone talking about how to package a python project

  • @ManuelBTC21
    @ManuelBTC21 3 года назад +8

    Example code should be exemplary. I think you've done a good job.

  • @HubertRozmarynowski
    @HubertRozmarynowski 2 года назад +1

    This is one of the most important python-related videos on the internet. Please do more long tutorials covering complex topics

    • @mCoding
      @mCoding  2 года назад

      Thank you for noticing! This is probably my most useful video (so far) in my opinion, but preparing and recording takes forever! Feel free to suggest other topics you are interested in.

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

    Outstanding video. The only people that say package management is the worst part of python are those that haven’t tried to decipher the topics you cover in this video. Might be time to revisit as the landscape is changing quickly. Also, more of this is welcome!

  • @oxey_
    @oxey_ 3 года назад +2

    This is pretty incredibly actually. I've done some very basic tests in the past, but never as complete or solid as this, not even close, thanks for this!

    • @mCoding
      @mCoding  3 года назад

      You're welcome, and thanks for the kind words.

  • @NotoriousPyro
    @NotoriousPyro 2 года назад +2

    Project name: "Slap that like button" *with a characteristic look at the viewer LOL.
    You have really good oration. And good video, having recently implemented a lot of CI/CD stuff including this within the company I work for, it is great to see great tutorials on how to do this for others.
    Also, the great thing about fixtures is you can also return functions and classes and pass the parameters into that function inside the fixture by calling the fixture like fixture_name(args for the inner function of the fixture) or with a class you can also do fixture_name(args).method

    • @mCoding
      @mCoding  2 года назад

      Thanks for your kind words. Glad you found my video useful!

  • @winnumber101
    @winnumber101 2 года назад +1

    the setup cfg work that allows you to traverse across different directories to get & apply code had been so difficult for me to find concise information on (I didn't want to do any os.dir nonsense, just wanted to make my project into a recognizable package)
    you explained it so well & so quickly, that's more than I could've asked for

    • @mCoding
      @mCoding  2 года назад

      Very glad I could provide some help!

  • @mbkhan1000
    @mbkhan1000 3 года назад

    best video on distilling all the different configuration files and why they are all needed - thanks for this!

  • @joem8251
    @joem8251 3 года назад +1

    I love this subject and I love this video.
    I'm glad this guy happened to make it a week ago, because it happens to be just what I need, when I need it. I'm stubbornly committing to TDD best-practices in my projects as I currently polish a template for my pytests.

  • @marksawyer3369
    @marksawyer3369 2 года назад

    I was originally only looking for RUclips videos on pytest. With this video I found much more and it answered many questions that I have had regarding tox and GitHub integrations.
    Great video ... 👍👍👍

  • @raccoonteachesyou
    @raccoonteachesyou 3 года назад +2

    Thank you very much, the video is clear, it goes through multiples subject deep enough to be useful, but not deep enough to get a too long video.
    Also, the rythm is very cool, you don't get bored, you go point by point, and it's a good pace.
    Again, thanks !

    • @mCoding
      @mCoding  3 года назад

      You're welcome! Glad you enjoyed it.

  • @OnceARider
    @OnceARider 2 года назад

    This is what I was looking for. Many thanks for covering these topics. I was specifically looking for how to install local package in current env, finally someone explained.

  • @alaapsarkar
    @alaapsarkar 3 года назад +5

    Thanks a lot, this helped me in many ways. I'm currently working as a software developer but new to this field. And I did slap that like button.

    • @mCoding
      @mCoding  3 года назад +1

      Thanks very much!

  • @aleale550
    @aleale550 3 года назад +3

    Really solid and easy to follow walkthrough, I really enjoy your clear and concise style.

    • @mCoding
      @mCoding  3 года назад +1

      Thanks so much for the kind words!

  • @yoannprigent5503
    @yoannprigent5503 3 года назад +1

    Thank you for this video, goes exactly at the right pace and gives the right amount of info. I've been struggling to setup this "testing" while coding setup (coding is not my specialty, but in mechanical engineering it's becoming unavoidable nowadays to automate more and more parts of our job). You've given me a much clearer picture of what to do and how to do it. Will definitely share this to my colleagues, great job!

    • @mCoding
      @mCoding  3 года назад

      Happy to help! Thanks for watching!

  • @sevdalink6676
    @sevdalink6676 2 года назад

    I was looking on Udemy for some python testing courses. Then I found your video on youtube - I do not need Udemy anymore :D Thanks for the great video.

  • @teresodra
    @teresodra 3 года назад

    I have been a month looking for this video. Thanks for explaining how to properly create and install a package.

    • @mCoding
      @mCoding  3 года назад

      You are very welcome! I'm glad it was useful to you.

  • @yash1152
    @yash1152 9 месяцев назад

    thanks a lot for this video.
    4:14 & 7:37 > _"For automated testing, tests should run"_ [regardless the location of our source. Which's achieved by installing the project itself as a package.]
    i didn't understand the "import" part of the test_*.py files before, and got stuck there when i tried on my own several months ago.
    but this above part clears soo many things and i finally got my python pytests to work. thanks a lottttt again.
    i came here from binge watching ur latest video on python debugging. it just so happened that i was just restarting my python devt journey this time & was actually searching for some resource on pytest myself as the official doc didn't help at all. so, thanks for tooting this video there too.

    • @yash1152
      @yash1152 7 месяцев назад

      not to self:
      * for applications using CLI arguments, do NOT use sys.argv directly.
      * use it via the formal parameter to the function (and set that to None by default).
      * this is similar to how c/java have `String[] args` as their formal parameter. oh lol, yet another approach combined from c.
      * this would allow that function to be called programmatically.
      * ... which makes writing tests for it easier and running 'em _much much_ faster.

  • @jakemuff9407
    @jakemuff9407 3 года назад +1

    This is very cool and interesting. As a physics student I mainly just plug and play but good to know about all of this, especially that it seems just as 'fiddly' as using a makefile or cmake with C/C++ and external libraries.

  • @Stoney-g1o
    @Stoney-g1o 3 года назад +1

    An excellent companion video would be a docker file that includes the repo in this package and talks to a docker postgresql instance. I currently use a Makefile to document commands and make development easier. Such as mounting a local directory for daily development.

  • @jamesteddyjr5939
    @jamesteddyjr5939 10 месяцев назад

    I am only suscribing because of the comment "Its kind of a touchy subject for the python community but that's the state of affairs right now"

  • @mahdihosseinali7492
    @mahdihosseinali7492 2 года назад

    This video has a lot of useful content which is very rare these days

    • @mCoding
      @mCoding  2 года назад +1

      Many thanks!

  • @Austin-hm6qq
    @Austin-hm6qq 3 года назад +1

    Absolutely bookmarking this for the future. You just saved future me probably weeks of work

    • @mCoding
      @mCoding  3 года назад

      I still go back and watch it myself from time to time! Always good to write things down!

  • @konstagold
    @konstagold 3 года назад +1

    This is a great guide. I've done parts and pieces of this before, but this really helped put it all together.

    • @mCoding
      @mCoding  3 года назад +1

      Awesome so happy to help!

  • @dexterovski
    @dexterovski 3 года назад

    Great video! This is one of those topics many people have wondered about but haven't explored themselves.

    • @mCoding
      @mCoding  3 года назад +1

      Glad you enjoyed it!

  • @sebastiandix2280
    @sebastiandix2280 2 года назад

    I am very grateful for this video because this is when all the setuptools pyproject.toml setup.py setup.cfg etc. finally made sense to me, aside from the actual automated testing :-)

  • @whamer100
    @whamer100 3 года назад

    thanks to this, im finally feeling confident enough to release this one project I've been working on for reading binary data for fun. I've also just now realized how tedious getting testing to work can be, 14 commits later it works on all devices (3.8+ though because i guess Literal types are pretty new)

    • @mCoding
      @mCoding  3 года назад +1

      Awesome thanks for sharing!

  • @sinat236
    @sinat236 2 года назад

    Thank you a lot @mCoding, it was a well-structured tutorial. It would be very fantastic if you make an additional tutorial that covers automated testing on Gitlab.

  • @jesse9999999
    @jesse9999999 2 года назад

    Great video and I have made a lot of use of it setting up tests for my company, so thank you deeply - I would have spent many weeks trying to learn these concepts without this resource. If I could recommend one follow up video, it would be on storing secrets in your github environment and accessing them in your code as this is the only missing link that would make this presentation whole. Thank you again!

  • @THEMithrandir09
    @THEMithrandir09 3 года назад +1

    Probably should mention at the start that usually, you'd want to set up testing first, before writing any code, to properly do test driven development.
    Awesome walkthrough though!

    • @mCoding
      @mCoding  3 года назад +2

      I will convert them in time :)

  • @Maric18
    @Maric18 3 года назад

    i had to cobble this knowledge together from documentation of all the features piece by piece over the course of a day
    and you just did it in half an hour (less, since i actually already had unittests) :D

  • @rahulgandharva7325
    @rahulgandharva7325 3 года назад +3

    OMG, this is going to make my life is much easier, thank you.

    • @mCoding
      @mCoding  3 года назад

      You're very welcome!

  • @ramiboutas
    @ramiboutas Год назад

    wow, you simplified a lot this complicated topic. Many thanks!

  • @soyciro4623
    @soyciro4623 2 года назад

    Truly great and quality content.
    There should be more videos about this kind of topics.
    Please, more on this! Thanks

  • @mcbrincie212
    @mcbrincie212 8 месяцев назад +1

    Excellent video, really well done for discussing how to do automated testing. But for tox, apparently it can be sped up. Instead of using tox without arguments you do
    tox -p
    -p is for parallelisation. In the case of my project it completed in about ~50 seconds compared to ~130 seconds(or 2 minutes and ~18 seconds). Ofc people's projects vary, but kinda wanna noted it

    • @mCoding
      @mCoding  8 месяцев назад +1

      Thanks and great tip!

  • @guiorgy
    @guiorgy 3 года назад +2

    This is a great guideline for getting started! Thanks a lot!

    • @mCoding
      @mCoding  3 года назад +1

      You're welcome thanks for watching!

  • @VojtechMach
    @VojtechMach 2 года назад +1

    Your content is incredibly valuable and packed with useful information. Thank you.
    My humble wish: a video on asynchronous python with your excellent explanation would be great :)

    • @mCoding
      @mCoding  2 года назад

      Thank you very much! Async has been on the horizon for a long time, I'm thinking about it!

    • @sorvex9
      @sorvex9 2 года назад

      Until that happens, i can recommend Sebastiaan Mathôt video on async python. It's short, to the point and he is very good at explaining things in simple manners.

  • @rahulmistri1997
    @rahulmistri1997 3 года назад +1

    Exactly what I needed. Detailed & concise

    • @mCoding
      @mCoding  3 года назад +1

      Thanks so much!

  • @ifeanyinneji7704
    @ifeanyinneji7704 2 года назад

    Very informative tutorial and glad to know I've been implementing these processes in my current projects with effectiveness 😅

  • @abzrg
    @abzrg 11 месяцев назад

    Thanks for this very nice tutorial!
    I wanna also learn all the things that you mentioned that you're not gonna discuss them in this video.

  • @TimoRJensen
    @TimoRJensen 2 года назад

    Holy shoot! Sooo many Nuggets in here! Thanks a lot! Very much appreciated!

    • @mCoding
      @mCoding  2 года назад

      You're very welcome!

  • @kicknotes
    @kicknotes Год назад

    Great video. A good amount of substance in under 30m... Deep enough without going too deep.

  • @JersenMan
    @JersenMan 3 года назад +2

    Pytest already has a fixture for capturing stdout and stderr, it's called 'capsys'.
    For capturing logs it has one called 'caplog'.
    Just putting it out there so ppl know

    • @mCoding
      @mCoding  3 года назад

      Thanks for this!

  • @nathanbrown2640
    @nathanbrown2640 3 года назад +18

    To clarify, does pip install use the "requirements.txt" to choose the version of packages to install, or does it use the setup.cfg file to get the more general rule?

    • @mCoding
      @mCoding  3 года назад +12

      Pip installs things based on the setup.py or setup.cfg install_requires. The requirements.txt will not be installed unless you manually pip install -rrequirements.txt. You can read more here: packaging.python.org/discussions/install-requires-vs-requirements/

    • @laurinneff4304
      @laurinneff4304 3 года назад +6

      @@mCoding why do you make the requirements.txt if it isn't used then?

    • @mCoding
      @mCoding  3 года назад +5

      Not everyone develops in editable mode, so it is common for developers to work on a project without installing it into their venv, in which case they install the requirements from the requirements.txt. Definitely an optional thing, but most repos I've seen include it.

    • @gabrielg48
      @gabrielg48 3 года назад +1

      @@laurinneff4304 well setup.py is just a Python script so you COULD make your "install_requires" reference your requirements.txt but that's not what most projects do.

    • @luziferius3687
      @luziferius3687 3 года назад

      @@gabrielg48 The formats are incompatible, so you’d have to write your own parser. Definitely does not work with a "file:" directive in setup.cfg to load them from file. Somewhat doable in setup.py.

  • @ErdiTk
    @ErdiTk 2 года назад

    Really awesome video! Great great job. The only thing I think would be nice to add is that is a good practice to check your test fails first, then make it work. Moreover few words about the test-driven development would've been good, but I understand would've opened a way bigger topic.

  • @shrirangmahajan9502
    @shrirangmahajan9502 2 года назад +1

    Excellent video man, so clear and thorough.

    • @mCoding
      @mCoding  2 года назад +1

      Thank you very much, glad you enjoyed!

  • @jacobwalters9660
    @jacobwalters9660 3 года назад

    Wow thank you so much for pulling these topics all together

    • @mCoding
      @mCoding  3 года назад

      You are very welcome!

  • @victornoagbodji
    @victornoagbodji 3 года назад

    Excellent walkthrough! 😊 Thanks for describing the current state of affairs and where things are headed. I hope we don't end up in a situation where this gets so complex that it drives new comers away from Python. I am already on the fence when it comes to the type hint craziness.

  • @vitaliimorskyi
    @vitaliimorskyi 3 года назад

    That was a lot of pure content. Just perfect! Subscribed: D
    Good luck, I believe in you ;)

  • @suryaya441
    @suryaya441 Год назад

    Thanks. I used `unittest` but this guide worked well enough.

  • @CarelessMiss
    @CarelessMiss 3 года назад +12

    Thank you, very useful!

    • @mCoding
      @mCoding  3 года назад +1

      You're welcome!

  • @davidmcdermott8259
    @davidmcdermott8259 2 года назад +1

    This is very useful information. Thank you. It would be great to also see automated documentation via sphinx or another alternative.

  • @nhattran536
    @nhattran536 3 года назад

    Amazing tutorial - comprehensive coverage and clear explanations. Thank you sir.

    • @mCoding
      @mCoding  3 года назад

      Very welcome!

  • @matteobarnaba6518
    @matteobarnaba6518 2 года назад +1

    Your videos are simply great!!! Congratulations!!

  • @PratheeshPrakash
    @PratheeshPrakash 3 года назад

    Thank you so much. This is precisely the video I was looking for.

  • @ketanpurohit9086
    @ketanpurohit9086 2 года назад

    Good job mCoding.. more like this on pytest, hypothesis, asyncio, flask etc.. punchy, high signal to noise ratio. Well done. Have subscribed.

  • @malayagr
    @malayagr 3 года назад +7

    Last time I was this early, my tests were still failing.

  • @hassaanalansary
    @hassaanalansary 3 года назад

    Great video, this will be my resource for setting up any project automation
    Perfect amount of information.
    Amazing work, keep it up.

    • @mCoding
      @mCoding  3 года назад

      Awesome, thank you!

  • @sany2k8
    @sany2k8 2 года назад

    You're a star as always, eagerly waiting for you new videos

  • @malteplath
    @malteplath 3 года назад

    An excellent walk-through. I have shied away from even trying to set up something like this. Now I a) know I was right, and b) have a path to follow.
    Even just the part about "installable package": I have occasionally had to struggle with the situation that IDE, latest and other tools had different opinions on what the root directory was. So, for example, latest would run fine on the command line but fail to find the modules when run via the IDE. I hope that much of that will go away when I add the setuptools boilerplate.

  • @pritam-kunduu
    @pritam-kunduu 3 года назад

    Very good video .. but I knew nothing about how these packages work .. definitely got something to learn

    • @mCoding
      @mCoding  3 года назад

      Glad it was helpful!

  • @arisweedler4703
    @arisweedler4703 3 года назад +1

    Awesome! So understandable and straightforward

    • @mCoding
      @mCoding  3 года назад +1

      Glad to hear you liked it! Thanks for watching!

  • @1997CWR
    @1997CWR 3 года назад +9

    Your hair looks like a softmax activation function

    • @mCoding
      @mCoding  3 года назад +3

      Hahahaah first time I've heard that one!

    • @gibran.zidane
      @gibran.zidane 3 года назад +2

      hahahahaha nice one

  • @arthurcpiazzi
    @arthurcpiazzi 2 года назад

    This video is a gem 💎 congratulations

  • @vinvic1578
    @vinvic1578 3 года назад +1

    This is exactly what I needed. Thanks so much !

    • @mCoding
      @mCoding  3 года назад +1

      Great to hear you found it useful! 😀

  • @Stoney-g1o
    @Stoney-g1o 3 года назад

    Great explanation of configuration, pytest decorators, and GitHub actions. Sphinx doc generation with Napoleon is difficult to figure out, but lately I have enjoyed ease of document generation with Fastapi via openapi. I am hoping that more companies start to use Fastapi instead of flask and django

    • @mCoding
      @mCoding  3 года назад +1

      Glad it was helpful! Thanks for mentioning Fastapi I hadn't heard of it before!

    • @Stoney-g1o
      @Stoney-g1o 3 года назад

      @@mCoding async, flask like, uses sanic framework, documents available at /docs using openapi, tortoise ORM is async ready. May use to serve pages as well as REST API.

  • @Andrewlstewart
    @Andrewlstewart 3 года назад

    Excellent video. I would love to see more content explaining things like setting up your longest_increasing_subsequence repository as well. Keep up the great content!

  • @rushen8148
    @rushen8148 2 года назад

    Thanks for a video! All of your videos are awesome! Keep making it.

    • @mCoding
      @mCoding  2 года назад

      You're very welcome and thank you for your kind words!

  • @Supakills101
    @Supakills101 2 года назад

    Extremely helpful video thank you, your channel is a goldmine for me.

  • @LordTeleman
    @LordTeleman 3 года назад +1

    I'm probably gonna watch this a few times.

    • @mCoding
      @mCoding  3 года назад

      Thanks! Glad it is helpful!

  • @Khushpich
    @Khushpich 3 года назад

    Awesome video, we need more videos about good software development practices

  • @ApiolJoe
    @ApiolJoe 3 года назад +1

    The video was super useful so I SLAPPED LIKE NOW!

  • @bernardyegon4659
    @bernardyegon4659 Год назад

    Great content, I liked it! I have been looking for RUclips videos with pytest for unit tests in ML as part of the project setup. Thanks!

  • @scottmiller2591
    @scottmiller2591 3 года назад

    I just thought I was bad at projects, seeing all those config files and figuring there must be a better way that a better programmer would know.

    • @mCoding
      @mCoding  3 года назад

      Python will get there some day! For now, I hope this helps :)

  • @stevenicholes5649
    @stevenicholes5649 2 года назад

    This guide helped a lot and was very well done. Thanks!

  • @jerzyzbiaowiezy6249
    @jerzyzbiaowiezy6249 Год назад +1

    Great video, but a little bit tough for beginner.
    I'll watch again:)

    • @mCoding
      @mCoding  Год назад +1

      This is definitely a more intermediate level video and props for giving it an honest try even if you are a beginner! Good habits can go a long way!

  • @Aceptron
    @Aceptron 8 месяцев назад

    Bro casually dropped gold and thought we wouldn't notice

  • @PouriyaJamshidi
    @PouriyaJamshidi 3 года назад +1

    Very informative. Thanks for sharing!

    • @mCoding
      @mCoding  3 года назад +1

      Your're very welcome!

  • @pahvalrehljkov
    @pahvalrehljkov 2 года назад

    this was so clear and comprehensive...

  • @prnva_
    @prnva_ 8 месяцев назад

    Amazing walkthrough!

    • @mCoding
      @mCoding  8 месяцев назад +1

      Thanks! It might be about time to update it... !

  • @kamaeff
    @kamaeff 3 года назад +1

    Very impressive! SLAPP LIKE NOW