I just loved the way the entire tutorial was planned and executed. The build up was so apt. Loved every bit of it. Thanks for your time and effort. First time here - subscribed
@pixegami2 жыл бұрын
Thanks! I did put a lot of thought into planning it, so that it covers all the topics with little wasted effort. I really want to respect my viewer's time - so I really appreciate your comment :)
@tpag202 жыл бұрын
I agree!! this video is best pytest tutorial
@picassoofai4061 Жыл бұрын
Agree 💯
@abhishekanand27828 ай бұрын
This will rank in top 3 videos of all time in Python Unit Testing on KZbin. Had it been a category called 'Python Unit Test' in Academy Awards. It sure will win the Oscar.
@pixegami7 ай бұрын
Thank you! Glad you enjoyed it :)
@hadisrour53392 жыл бұрын
Most underrated channel on KZbin 🙏🏽
@pixegami2 жыл бұрын
Thanks! I appreciate that.
@thatgardnerone2 ай бұрын
Coming from a TDD Laravel world, this video is unbelievably helpful in translating lots of that PHP knowledge to Python. Thank you!
@abelashenafi6291 Жыл бұрын
Thanks my friend. I can't thank you enough for the knowledge you just shared in just 35 minutes. I had absolutely 0 experience with Unit tests in general but now I really do. I really loved the way you started small and got a bit deeper. This is what most people just don't do. You probably know about Gall's law "All complex systems work, are built on top of simpler systems that worked" Hence, if you want to build a complex system, first build a simple system that works and build on top of that. Thank you. I really mean it. You just got a new subscriber. Abel
@pixegami Жыл бұрын
Thank you for the thoughtful comment :) Glad you found the content useful. Stay tuned, I hope to provide more useful content right here on this channel.
@sanctipaprichio Жыл бұрын
One of the best videos about testing I've ever watched, that's excellent, straight to the point
@pixegami Жыл бұрын
Thanks! That's my goal with these videos :)
@terryphelps4204 Жыл бұрын
Nicely done. No bullshit background music, and silly-ass fancy graphics and sound effects. Just good technical knowledge, explained well.
@Holasticlogger Жыл бұрын
In Such a short time you have covered so many features of Pytest...That's Amazing !!!! Loved the video and explanation! Pytest is indeed a powerful test framework !!
@pixegami Жыл бұрын
Glad you liked it :)
@hichemlaribi2522 ай бұрын
Didn't even see the time passing, very good and directly purposed video with no time waisting, thanks a lot
@nawazhussain12818 ай бұрын
I got this video from google and assumed it was a popular channel. How is it only at 22k. Very well explained vs coming to the video with a bunch of testcases written
@stankatsion62865 ай бұрын
This is by far one of the best tutorial lessons! It's like every time I'm thinking 'but why that' you continue with explaining exactly what I wanted to know!
@pixegami5 ай бұрын
Really glad to hear that! Thank you :)
@bryannahrwold54622 жыл бұрын
Loved your straight-forward approach and building of functionality as you go. Excellent work. Thanks!
@pixegami2 жыл бұрын
Thanks! I hope it helped!
@bryannahrwold54622 жыл бұрын
@@pixegami There is only one thing missing from this video and pretty much everywhere I've looked on the Internet: How to import a function in a directory from a file in another directory at the same depth. This is import for testing packages with the directory structure /src/file with /test/test_file or when one package is accessing another one. A video on that would be terrific!
@horoshuhin Жыл бұрын
really piqued my interest towards the end. great explanation. would love to see part 2 with more advanced test case scenarios. thanks
@MikeBrown-pt5qw2 ай бұрын
Glad this came up on my feed, good tutorial, wish I can like twice. "-s" flag to show print statements even if the test pass was one of the many golden nuggets for me
@Shawncres20492 жыл бұрын
Solid tutorial, great explanation. I like the way it was the closest to hands on learning without having to actually be hands on.
@pixegami2 жыл бұрын
Awesome, thank you!
@r7-wq8ly Жыл бұрын
Thank you so much!! I used to think testing was hard and I was afraid to learn, but now I've changed that! Great video🤩
@pixegami Жыл бұрын
Testing seems hard because I think there's not enough education about it! But I'm glad this video helped!
@vijaybabaria32532 жыл бұрын
Would love to see more videos on testing, and integration test to verify end to end testing, thanks 🙏🏼
@pixegami2 жыл бұрын
That's a great idea - thanks for the feedback :) I can definitely cover more testing topics.
@betagroobox2 жыл бұрын
Yes, please!🙏
@machinimaaquinix317810 ай бұрын
Hey this was an EXCELLENT and concise intro to pytest! The explanations and examples were so clear, and went beyond the usual test video toy "x + y" drivel . I will strive to use the testing workflow model you demonstrated. The almighty YT algo popped this video in after a recent freecodeacademy Pytest intro video - and honestly, this beats that one by far! And it is three times as long! In fact, I'm linking this video in that video's comments! You rock! And you got a new sub!
@pixegami10 ай бұрын
Thank you for your kind comments :) I try hard to structure the content to be as direct and useful as possible, so I appreciate hearing whenever it helps someone out.
@furolio2 жыл бұрын
This channel deserves more subscribers
@pixegami2 жыл бұрын
Thanks! I'm glad you think so :)
@barnabykent66982 жыл бұрын
Very practical and accessible tutorial. I enjoy your concise and clear style. This is content with high sound to noise ratio. Subscribed!
@pixegami2 жыл бұрын
Thanks! I know everyone is busy and want to learn as quickly as possible, so I aim to keep the content lean. Good to know that the effort is not wasted :)
@BruceElgort2 жыл бұрын
This is one of the best videos on pytest I have seen. Thank you for it.
@pixegami2 жыл бұрын
Thank you, I appreciate your comment!
@ddawgncc2 Жыл бұрын
EXCELLENT Tutorial. Love your approach and style to teaching. Very clear, concise and to the point! Thank you for posting!👍
@pixegami Жыл бұрын
Glad you enjoyed it!
@JaganMandalapu-g6z Жыл бұрын
I hope you take this as a compliment. You are filling in the gap left by Corey Schafer!
@pixegami Жыл бұрын
Thank you! Corey Schafer is a legend and I'm humbled to be compared to them.
@sleekunique60602 жыл бұрын
Great video. Please make more. You explain things without overcomplicating the process.
@pixegami2 жыл бұрын
Thanks! More to come. Feel free to suggest topics you'd like to see.
@Hinkakan Жыл бұрын
Great explanation and flow in the video: I find myself sitting with two questions at the end though: 1. Your implementation of the fixture returned one instanciated class. What about if I want to return several values, e.g. environment values, connenction details to databases. How would I return that? Would I return a list of values? Or can I somehow bake it into the function arguments, what information I want to retrieve? 2. I find myself confused on the last part with the Mock module. The way I see it: 1. You instanciate an empty class 2. You call an empty method of this class (none of these fail because both are in fact defined, just have no content) 3. You call Mock to get a value, and you pass in the function to handle the logic. However, the mock_get_item requires an item argument passed to it, yet I do not see you pass anything. Should mock_get_item not receive a list os something that contains the items added to the cart? And in the assertion, you pass in item_database, but the way I read the code, the item_database should still be an empty class since the .get method does nothing yet..
@pixegami Жыл бұрын
Great questions! 1. How do I return a list of values or (anything else) from a fixture? Well, a fixture can return any type of value. So you could have a fixture that returns a tuple. Or you might choose to have a Class or a module that groups together a bunch of different values you want to use together. You are also not limited to using one fixture per test. If you made another fixture called "cart2", then you should be able to use both fixtures in the test by writing: `def test_can_get_total_price(cart, cart2)`. Take a look here for more examples: docs.pytest.org/en/6.2.x/fixture.html 2. You don't see anything being passed in to `mock_get_item` because we never use it directly in the test. We *assign* it to our item_database's "get()" function: "item_database.get = Mock(side_effect=mock_get_item)". Then we call `cart.get_total_price(...)`, which then goes on to call the item_database.get() with our arguments: "total_price += price_map.get(item)": github.com/pixegami/simple-pytest-tutorial/blob/aa65d4b457039dddaeb0a75a359f223a25ec3d09/shopping_cart.py#L23 So when you say " item_database should still be an empty class since the .get method does nothing" - it's actually not true because we *mocked* the get() method to do something for us with this line. We basically 'replaced' the functionality of `item_database.get()`: github.com/pixegami/simple-pytest-tutorial/blob/aa65d4b457039dddaeb0a75a359f223a25ec3d09/test_shopping_cart.py#L42 Hope this helps!
@pietheijn-vo1gt Жыл бұрын
Great video. Could you make a part 2 of this? For example: how to work with context across multiple tests, how to work with scopes, how to work with test data for AI, different types of exceptions etc.
@pixegami Жыл бұрын
Interesting - I hadn't considered a part 2, but I'm keen to hear your use cases for the things you mentioned (particularly about AI testing - do you have a use case in mind for that)?
@pietheijn-vo1gt Жыл бұрын
@@pixegami I worked on a personal project where a pokerbot would receive real images of pokercards and then used a simple CNN to decide which card it was. In order to test the flow I had to import the model, retrieve some test images etc. But I also just wondering in general how to combine unit testing and data science. I really enjoy developing well tested code and these jupyter notebooks are a nightmare to work with when I do anything AI related
@dr.schlopp40892 жыл бұрын
Excellent video! You have a clear talent for teaching and being able to express your ideas thoughtfully and in a manner that is easy to understand. I'm excited to be able to subscribe to a new channel that will soon blow up in popularity once more people see the quality of your content! I'll be able to say, _"I was there..."_ 😂 Subbed!
@pixegami2 жыл бұрын
Thanks! I appreciate the support :)
@gregwoolley Жыл бұрын
Excellent tutorial, very helpful! Just one request, is there a way you could position your mic so your keyboard is not so loud (particularly the Return-Key)? Maybe use a 'unidirectional' mic and some type of dampener under your keyboard?
@pixegami Жыл бұрын
Thanks for the feedback! Glad you enjoyed the video. And yes, I agree the keyboard is too loud. Sorry! I've actually upgraded my Mic to a vocal mic, and I'm using a different (softer) keyboard now in my newer videos so I hope it'll feel/sound better for you.
@davidmendelsohn39322 күн бұрын
Very good tutorial, explained well, clear and at a good pace!
@janaeshkrish2 жыл бұрын
It was a great video it helped me a lot to get started with PYTEST, assert ,fixtures and mock. I just loved it
@mikiyasgetachew77 Жыл бұрын
very cool Tutorial for pytest. Especially for beginners. Everything is crystal and clear.
@pixegami Жыл бұрын
Thank you! Glad it was helpful!
@wfacts3602 жыл бұрын
Finally, a great video to learn pytest. Really, your video helped a lot man!!
@pixegami Жыл бұрын
Thanks! I appreciate the comment.
@guipe77122 жыл бұрын
Great Video. I finally understood most about the pytest framework. Thamks friend
@timo_b3 Жыл бұрын
Wow, you covered everything that confused me as a beginner! Thank you
@pixegami Жыл бұрын
Glad it was helpful!
@sunnybambooflute Жыл бұрын
super helpful. Thank you! youtube should rank your video to the 1st position
@pixegami Жыл бұрын
Thanks!
@sahngcobo Жыл бұрын
Very clear and well spoken instructions
@juliocardenas4485 Жыл бұрын
Thank you for sharing your talents. It’s well organized, clear, and useful.🙏🏾👨🏽💻
@pixegami Жыл бұрын
Thank you! Glad you found it clear!
@renitur2292 Жыл бұрын
Excelent video. You are a natural speaker. Thx!
@pixegami Жыл бұрын
Thank you!
@WistfulOcean Жыл бұрын
Very accessible and clear, thank you for that!
@pixegami Жыл бұрын
Glad it was helpful!
@fatihnri2484 Жыл бұрын
I rarely comments but this is a great video on PyTest!
@mohammedshoab27789 ай бұрын
Perfectly explained an important topic!
@pixegami9 ай бұрын
Glad you liked it!
@TheSaadcheema2 жыл бұрын
Best tutorial so far on pytest!
@pixegami2 жыл бұрын
Thanks! Hope it was useful.
@ChaosArtist2 жыл бұрын
Thanks for this tutorial, I'm new to Pytest and this was very helpful.
@theoryofeverywhere629311 ай бұрын
Extremely well done and clear. Thanks so much for this!
@pixegami11 ай бұрын
You're very welcome!
@amitsharma5551 Жыл бұрын
Awesome Video...never seen such a nice explaination of things..love it!!
@pixegami Жыл бұрын
Glad you liked it!
@marcinbiedron3241 Жыл бұрын
You are a good teacher, thank you
@pixegami Жыл бұрын
Thank you! 😃
@MinhBui-h4x Жыл бұрын
Excellent video! it's quite clear and concise. By the way, I am curious what VSCode colorscheme you are using in the video?
@pixegami Жыл бұрын
Thank you! I use monokai.pro/ - I've tried a lot of different themes, but I always come back to this one.
@stannylou1636 Жыл бұрын
May I ask what operating system you're using? Great tutorial by the way.
@pixegami Жыл бұрын
Thank you! In this video I'm using Ubuntu Linux. It's probably my favourite programming environment, although these days I'm using a Mac because I find I also need a lot of creative software (to make the actual videos).
@mihaineag38313 ай бұрын
Thanks for the clear and concise info!
@mryderoc Жыл бұрын
Nice job! Great starter for pytest. Thanks
@pixegami Жыл бұрын
Glad you like it!
@CrashLaker2 жыл бұрын
awesome! had everything for me to get started. side_effects ftw!
@pixegami2 жыл бұрын
You're welcome!
@VineoClock2 ай бұрын
Great Tutorial Mate! Also, was wondering which OS did you use for recording? Seems v cool.
@pixegamiАй бұрын
Thanks mate! Glad you enjoyed it. :) In this video I'm using Ubuntu with a customized terminal. If you're interested in setting it up, I've got a video on that: kzbin.info/www/bejne/i6e8ZpR8fbOie9k But these days I'm actually doing everything on an M1 Mac (just because Ubuntu doesn't support Adobe which I use for editing).
@rosscoguitar2 жыл бұрын
Thank you for this video. You've done a really great job of explaining these concepts.
@pixegami2 жыл бұрын
Thanks! I appreciate the comment :)
@gasparottogui Жыл бұрын
Great tutorial! Simple and effective. Thanks!
@pixegami Жыл бұрын
Glad it was helpful!
@shelleycurrie764 Жыл бұрын
Great, thanks you covered enough for me to get going.
@pixegami Жыл бұрын
You're welcome! Good luck.
@MrAndyG6710 ай бұрын
Very useful intro, thanks.
@pixegami10 ай бұрын
Glad it was helpful!
@ChongSun Жыл бұрын
Thanks! Nice TDD tutorial.
@pixegami Жыл бұрын
Glad you liked it!
@chriskeo3922 жыл бұрын
You're a great teacher. Wonder if you have a tutorial on app structure too?
@pixegami2 жыл бұрын
Not yet, but I'll note it down as an idea that my audience wants! Thank you.
@olaniyanayodele59862 жыл бұрын
Great video. Just learnt pytest. Mind sharing your vs code theme setup?
@pixegami2 жыл бұрын
Thanks! For VSCode I use the paid "Monokai Pro" theme, but they do have a free trail. Other themes I've enjoyed in the past are "Nord" and "Ayu".
@harryz3314 Жыл бұрын
What is your keyboard? It sounds great!
@pixegami Жыл бұрын
In this video I just used a DURAGOD keyboard with blue-key switches. I've since changed now to a Moonlander keyboard with brown switches. They keyboards don't really make too much difference to me as long as they are the thicker mechanical types.
@Themuralisp2 жыл бұрын
very nicely explained. Thank you
@DaCosmoz2 жыл бұрын
This was a very helpful and clear tutorial, thank you very much!
@pixegami2 жыл бұрын
Glad to hear it!
@sebastiancontreras33002 жыл бұрын
Thank you! U totally domain the subject entirely
@pixegami2 жыл бұрын
Glad it was helpful!
@jtech89592 жыл бұрын
Hi, great video thanks! Could you explain why you didnt or when to use mock.patch instead of what you did here creating an instance of the db and return a mock.
@pixegami2 жыл бұрын
Great suggestion! `mock.patch` works too, and is probably a good way to do it. I didn't choose to use it here mainly because I wanted to make the relationship between the mock and the dependency clearer. Introducing mock.patch would introduce some new mental concepts (with it being a decorator), and I didn't want that at this stage in the tutorial. Now, in actual real projects I've used mock.patch before, but it started to become annoying when there's maybe 5-6 things I needed to patch for one test. A lot of nesting, ordinal arguments, and a lot of repetition across various test cases. I am now learning towards fixtures instead, to set up more complex mock behavior.
@adhavarrv2 жыл бұрын
Thanks for a great and simple tutorial on PyTest!
@pixegami2 жыл бұрын
Glad it was helpful!
@filmedbyjulia124 Жыл бұрын
helpful video on unit testing! Thank you!
@ukplaymaker152 жыл бұрын
Thank you for this amazing tutorial.
@pixegami2 жыл бұрын
I hope it was helpful!
@rasheedibraheem6839 Жыл бұрын
What a great tutorial! Thank you!
@pixegami Жыл бұрын
Glad it was helpful!
@mohammederifaimaamir7087 Жыл бұрын
Thank you so much, u've made my life easier
@pixegami Жыл бұрын
Awesome! Glad to hear that!
@junhuama684 ай бұрын
at 8:20 here you are teasing one function of the instance(add) but also depends on another function of that instance(size). I thought that we are suppose to isolate each test.
@947ihi Жыл бұрын
I can't thank you enough for this video🙌 This helped me so much!
@pixegami Жыл бұрын
Glad it helped!
@winnumber1012 жыл бұрын
very high quality video
@pixegami2 жыл бұрын
Thanks. I appreciate it!
@davidbalague9311 Жыл бұрын
Excellent and comprehensive tutorial, very well explained and accessible. Best ever! Good Job!!
@fabiohenriqueteixeira55668 ай бұрын
Excellent content!!!
@hardcorewithin8 ай бұрын
great video! what are you using as a terminal ? I love the way it displays the cwd as shadow instead of showing the full path , can you please share the theme name ? thanks !
@ziad9533 Жыл бұрын
A very useful video, thank you!
@pixegami Жыл бұрын
Glad it was helpful!
@krishanunayek785 Жыл бұрын
Hello, This is really very good content. It helped me a lot to implement unit test cases. I am trying to implement some retry mechanism (using HTTPadapter , retry package) when the given http errors (500,502,503,504) occur. Now I am not able to implement the retry mechanism as well as the unit testcases for the same. It would be really helpful if you create some video on the same topic.
@magorzatastolarska4274 Жыл бұрын
Great tutorial! Thanks a lot.
@pixegami Жыл бұрын
You're welcome!
@xiliu1842 Жыл бұрын
Very Nice video, Thanks man!
@pixegami Жыл бұрын
Glad you liked it!
@dhartdata59982 жыл бұрын
very informative. Thanks
@nakawesijuliet2363 Жыл бұрын
Very helpful to a beginner like me,thanks. can you help me on how to integrate zoom in a django project?
@pixegami Жыл бұрын
Sorry I haven't done any Django projects yet but it's on my list!
@nakawesijuliet2363 Жыл бұрын
Cool@@pixegami
@امینجمالی-خ9ص10 ай бұрын
Thanks for your time and effort awesome video!!!!
@pixegami9 ай бұрын
Thank you, I appreciate your comment!
@shmuelk3018 Жыл бұрын
Amazing, I really enjoyed it
@pixegami Жыл бұрын
Awesome, thank you!
@aravinddt169 ай бұрын
Well structured!
@pixegami9 ай бұрын
Thank you!
@krishj80114 ай бұрын
Awesome Tutorial... very useful...
@pixegamiАй бұрын
Thanks! Glad you found it useful 😊
@jinettew.3192 Жыл бұрын
Really nice intro.
@pixegami Жыл бұрын
Thanks!
@Confusedcapybara8772 Жыл бұрын
That keyboard sounds good 👌 specs?
@pixegami Жыл бұрын
Haha I've used a lot of keyboards so I'm not sure which one specifically I used in this video. I think it was probably this one, with the blue Cherry switches: amzn.asia/d/3uXqhmU
@danielrossano33222 жыл бұрын
keep up the good work!
@pixegami2 жыл бұрын
Thanks for the encouragement!
@shreshtapagidimarry9603 Жыл бұрын
Which ZSH theme is that ? I would like to install the same. Looks amazing,
@pixegami Жыл бұрын
I have a video and a GitHub repo covering the Ubuntu ZSH theme I use: github.com/pixegami/terminal-profile
@hj-wl4vk Жыл бұрын
What's your vscode theme? It 's great!
@python3602 жыл бұрын
20:07 You can also use "pytest -k test_can_get_total_price"
@pixegami2 жыл бұрын
Ah, thanks for calling out!
@AndresRodriguez-vv3fs2 жыл бұрын
Hey! Loved the video, but could you keep speaking when you code? Helps a lot when coding along! Much love
@pixegami2 жыл бұрын
Thanks for the feedback! I'll definitely try to keep talking more - I need a lot of practice talking and coding at the same time 😅
@cOnT3ST Жыл бұрын
Huge thanks for the vid.
@pixegami Жыл бұрын
Glad it helped
@raphaelhunold6812 Жыл бұрын
good video. You earn a new follower
@pixegami Жыл бұрын
Thanks and welcome!
@ChanceMinus Жыл бұрын
Excellent! Thank you.
@galnadjar11 күн бұрын
amazing video thank you!
@python3602 жыл бұрын
Really useful, thank you!
@pixegami2 жыл бұрын
Glad it was helpful!
@vietnamdang1917 Жыл бұрын
Hi Pixegami, Python is totally new to me. I am very interested in learning it. Would you mind sending me a link to or show me how to download/install Python to my laptop? Thanks in advance.
@pixegami Жыл бұрын
Python is a great programming language to learn! I have a complete playlist on a learning roadmap and how to install it and learn all the basics here: kzbin.info/aero/PLZJBfja3V3Rsbiz84Z63IXnTQZH_Rnfuo&si=-hMurnRNSf2s7J_m
@dbzkidkev2 Жыл бұрын
Great video but question, why didnt you use monkeypatch?
@pixegami Жыл бұрын
Good call. I wanted to start off with more primitive tools, and more generalisable knowledge. Mocking and stubbing is pretty widely used, but I think patching is more prominent in Python testing. I'm also not a fan of positional arguments for the mocked items, I think fixtures afford more precision and flexibility.