Testing in Laravel | How to Write Tests With Laravel | Laravel 8 Testing Tutorial

Поділитися
Вставка
  • Опубліковано 22 сер 2024

КОМЕНТАРІ • 111

  • @codewithdary
    @codewithdary  Рік тому +1

    If you're looking to level up your Laravel skills? My new course "Mastering Laravel 10 Query Builder, Eloquent & Relationships" is the perfect opportunity: www.udemy.com/course/mastering-laravel-10-query-builder-eloquent-relationships/?referralCode=C784C3DB5B8925207FCB

  • @mokolokoa3288
    @mokolokoa3288 2 роки тому +10

    One thing is missing. How to set up test database. (if you already have some data) So the tests will use different db and then they will wipe out the test db.

  • @haythemdridi8564
    @haythemdridi8564 Рік тому +7

    13:05 its not a bug , you're writing test in the Unit folder , to test http requests you must write tests inside the feature folder

  • @amirhosein4728
    @amirhosein4728 2 роки тому +6

    I am absolutely in love with your channel and I am learning laravel right now because you teach so damn great 😄

    • @codewithdary
      @codewithdary  2 роки тому

      Thank you so much Amir, appreciate it! :D

  • @yohanvelho
    @yohanvelho Місяць тому

    Awsome video, very well explained!

  • @AkhmadRizkii
    @AkhmadRizkii 2 роки тому +1

    This video help me to learn UnitTest easily. Thanks Dary

  • @atiqurrahman4611
    @atiqurrahman4611 Рік тому +1

    Nice tutorial. Learned a lot, understanding of tests for beginner. Thanks for sharing.

  • @user-bx8cw6jz4t
    @user-bx8cw6jz4t 20 годин тому

    your a king , thank u very much

  • @TristanBailey
    @TristanBailey 2 роки тому +1

    Good clear starter video for testing

  • @GiaNebieridze
    @GiaNebieridze Рік тому +1

    Movie is beautiful. This scene is phenomenal. I was feeling every grams of my body during this scene. My heart was broken and my stomach was hurting.

  • @muzika5001
    @muzika5001 2 роки тому +1

    Great! Thank you for introduction in the testing.

  • @phpisdead
    @phpisdead 2 роки тому +1

    best video about testing , you have only one video about it?

  • @olawaleesan8262
    @olawaleesan8262 3 роки тому +1

    Wowwww, I really love your videos..Thank u very much.Looking for more Laravel video

  • @nhatkhanhtran111
    @nhatkhanhtran111 Рік тому +1

    This video help me a lot, thank you so much😄

  • @mouradeljayi584
    @mouradeljayi584 3 роки тому +1

    Thank You so much for this great video ..please keep making videos on Laravel Testing !!!!

  • @saraelotmani5570
    @saraelotmani5570 3 місяці тому

    maaan thank you 💛

  • @kasidissjumrus3397
    @kasidissjumrus3397 2 роки тому

    Thank you for greate video
    PS. 13:00 This UserTest class was created with --unit option then Laravel extend from PHPUnit\Framework\TestCase. Without --unit, it will extend from Tests\TestCase.

    • @codewithdary
      @codewithdary  2 роки тому

      Didn't I mention that? Might have forgotten! Thank you anyways! :)

    • @albarranaufalaerdanto8502
      @albarranaufalaerdanto8502 2 роки тому +2

      Yeah i think it supposed to use UserTest inside Feature folder, right?

  • @FFarenco
    @FFarenco Рік тому +1

    Your content is awesome! Make please a tutorial video with testing on Symfony if it's possible)

    • @codewithdary
      @codewithdary  Рік тому

      Thank you! Definitely something I would love to do.

  • @GergelyCsermely
    @GergelyCsermely 3 роки тому +1

    Thanks, It is excellen to get code examples too. Thanks.

  • @devops6414
    @devops6414 Рік тому +1

    love it. waiting for new one

  • @TheJimboCOD
    @TheJimboCOD 3 роки тому +5

    Great video, helpful as always. Would you think about doing a series on building a REST API in laravel? I would absolutely love that

    • @codewithdary
      @codewithdary  3 роки тому

      I have a crash course available: ua-cam.com/video/xvqPEEpRBJ4/v-deo.html

  • @muhammadmuneeb4122
    @muhammadmuneeb4122 2 роки тому +1

    Really appreciate your hard work, learnt so much, thanks alot 👍

    • @codewithdary
      @codewithdary  2 роки тому

      Happy to hear that Muhammad, thank you.

  • @two-zero
    @two-zero 2 роки тому +1

    Thank you for this tutorial!

  • @amirtardasti39
    @amirtardasti39 2 роки тому

    This is an easy video to learn laravel test

  • @jonmason4127
    @jonmason4127 2 роки тому +1

    I thought regression testing was making sure existing functionality doesn't break when new functionality is released. Hence the term "regression".

    • @codewithdary
      @codewithdary  2 роки тому

      Regression testing basically perform after completing of retesting. The main purpose of regression testing is to check the impact of modification. Whether still our application is acting stable.

  • @hayder775
    @hayder775 4 місяці тому

    Thanks for the helpful video

  • @codewithdary
    @codewithdary  2 роки тому +3

    LETS CONNECT THROUGH INSTAGRAM.
    instagram.com/codewithdary

  • @tomjerry-nx9dl
    @tomjerry-nx9dl 3 місяці тому

    suppose i have a simple post crud. now my question is how to determine what to test? if i test each validation of a suppose store post, there may be more than 10 validations, then we have to create > 10 test methods? plus there are all these test in this videoes. making the all these test will be like creating the whole project again?

  • @shinyakoizumi601
    @shinyakoizumi601 Рік тому +1

    Thanks for the video what do you use to show current path in the terminal?

  • @nicolasromero6144
    @nicolasromero6144 Рік тому +1

    Very nice content, if you have tine to upload a video with pest and laravel, anyway thanks

    • @codewithdary
      @codewithdary  Рік тому +1

      Definitely something I will be doing in the future!

  • @LazyJoeyDesigns
    @LazyJoeyDesigns 2 роки тому +1

    hi dude, I believe that there is an error in the code you wrote for the user delete testing.. you are creating the user with the factory, then checking if the user exists with an if statement.. but in case that statement won't be true, the test will assert true regardless.. I'm not sure if you get what I mean.. as far as I know test shouldn't contain any if statements ?!

  • @asim-gandu-phenchod
    @asim-gandu-phenchod 2 роки тому +1

    Great stuff as always

  • @houssemflutter2722
    @houssemflutter2722 3 роки тому +1

    Great tutorial , realy you are the best .👌👍

  • @carlosf.2927
    @carlosf.2927 2 роки тому +1

    Great video. Thanks

  • @chocinspired
    @chocinspired 2 роки тому +1

    Please any idea why my php artisan test gives this? I am using Lumen.
    >Command "test" is not defined.
    >Do you want to run "make:test" instead? (yes/no) [no]:

    • @codewithdary
      @codewithdary  2 роки тому

      Try running composer dump-autoload in case you upgraded recently.

    • @chocinspired
      @chocinspired 2 роки тому

      @@codewithdary just did that but same thing

  • @user-jr4ru7fe4j
    @user-jr4ru7fe4j 2 дні тому

    TRying to follow. But yours is assuming same versions and having PHPUnit installed correctly... I'm using Windows MS Code... PHP 8.3.7, PHPUnit 11.3.1, Composer 2.7.6 .... I can't run the commands because of version issues. VENDOR is below the root and copying that into the directory gets other errors.

  • @joshbarros1995
    @joshbarros1995 3 роки тому +2

    Wonderful! I love your videos! Please make some about GraphQL (Lighthouse)

    • @codewithdary
      @codewithdary  3 роки тому +1

      Thank you Josue! I'll keep that in the back of my mind! :)

  • @anuradhawithanage9861
    @anuradhawithanage9861 2 роки тому +1

    Thanks a lot, really helpful

  • @jokovBG
    @jokovBG 9 місяців тому

    Didnt get the delete user method :( Why we check if a user exists when we always create one before that ? And why at the end we hardcode assertTrue(true), isn't that way the test never possible to fail?

  • @techsuniversity7386
    @techsuniversity7386 3 роки тому +1

    Great work 💙👍

  • @sumayazaman8862
    @sumayazaman8862 3 роки тому +1

    Thanks a lot. It helped me .....

  • @2010sparsh
    @2010sparsh Рік тому +1

    Can it do functional testing ?

    • @codewithdary
      @codewithdary  Рік тому

      Yes, PHPUnit can be used for functional testing in PHP. It allows for the creation of automated tests that simulate user interactions with the application and can test the application's functionality as a whole.

  • @sagar8234
    @sagar8234 2 роки тому +1

    "Command test is not defined" while using php artisan test.

    • @codewithdary
      @codewithdary  2 роки тому

      Try running composer dump-autoload in case you upgraded recently. Otherwise try to delete your vendor directory and try running composer install to see if that helps

  • @victorhugosens4443
    @victorhugosens4443 2 роки тому +1

    you are legend

  • @shanmugapriyam3163
    @shanmugapriyam3163 2 роки тому +1

    Part2 - Laravel unit testing video link please ?

    • @codewithdary
      @codewithdary  2 роки тому

      There is no part two. Probably in the future :)

  • @danialhajirajabi4286
    @danialhajirajabi4286 2 роки тому +1

    not complete for a tutorial. but good for beginners. 🙏

    • @codewithdary
      @codewithdary  2 роки тому

      In depth testing will be coming soon! :)

  • @prezire
    @prezire 2 роки тому +1

    I noticed feature tests use the same DB during tests. is this correct? or should there be another separate DB to run tests?

    • @codewithdary
      @codewithdary  2 роки тому

      It is yes, you need to test functionalities that interacts with the database to make sure that your app works on production

    • @prezire
      @prezire 2 роки тому

      @@codewithdary that's odd. i think a better approach is to clone the existing DB schema and append _test to the DB name. then delete that DB after the tests are done

    • @codewithdary
      @codewithdary  2 роки тому

      But why? You won't actually change data because your just writing tests.

    • @prezire
      @prezire 2 роки тому

      @@codewithdary but there's an option for data persistence during tests, right? for example i want to test the relations. i would send API json with a mix of bad and good test data, and i want to count that only good data are the ones that are actually saved, right? i could be wrong but other frameworks use a cloned DB for tests and then drops that DB once the tests are done, so your current DB is untouched. in laravel, it's like setting the flag --env=.env.testing, using a test DB. although other frameworks does it implicitely.

    • @pauldrage9931
      @pauldrage9931 2 роки тому

      @@codewithdary I'd ordinarily agree with you - and I think you've done a great job putting this video together - but you are saving data to the db at 20:04 ( ua-cam.com/video/UjA-16diixc/v-deo.html ) . Laravel has a doc on testing an it does state that it will auto create a testing db and tear it down after tests..

  • @AMoktar
    @AMoktar 2 роки тому +1

    Thanks bro

  • @nbahighlights2876
    @nbahighlights2876 2 роки тому +1

    Hi, Dary, I came across your channel, when I tried to find a Sanctum puzzle. The puzzle is when using Sanctum, it will generate a token, then send a request with the correct token to backend, it will work, it is great. But if I modify the token to make the wrong one, then send a request with the postman, it won't show any error, it will redirect to login page directly. So do you know how show an error message when send a wrong token to the backend?

    • @leinyuyetiane
      @leinyuyetiane Рік тому

      This is late but in case any one still needs it, in your middleware, you should specify the 'auth:sanctum' middleware for your api

  • @pawemieleszkiewicz1602
    @pawemieleszkiewicz1602 2 роки тому +1

    What is your ZSH theme?

    • @codewithdary
      @codewithdary  2 роки тому

      I have a complete video where I setup my terminal! It's under the Laravel video series.

  • @Ramziddin_Rustamovv
    @Ramziddin_Rustamovv 2 роки тому

    Hi , i have questions about testing ! Why it is important testing.

    • @codewithdary
      @codewithdary  2 роки тому +1

      Hi Ramziddin, I found a pretty interesting comment on the internet about testing:
      what do you do when you write code without tests? after almost every change you run the whole application, you wait until it starts, you go to the page you've just changed, you input some data, you press the button and you check... if the answer is correct, if the popup appeared, if the mail was sent and so on. you DO test. but you just do it manually. and you repeat all those tests after every change. and if you don't repeat them then you will find bugs on production and you will have to correct them quickly under stress and you will have to again check if you've fixed them correctly. and you will have to do it manually...
      Hope this makes sense.

  • @Saleh2
    @Saleh2 2 роки тому

    if I want to test function or Controller I already created did i need to make php artisan make:test UnitTest and copy my function in it ? and same question with test database

    • @codewithdary
      @codewithdary  2 роки тому +1

      You should be verifying responses in tests, and not the entire controller you created.
      If you are using the database, you should check if the right access methods are triggered.

    • @Saleh2
      @Saleh2 2 роки тому +1

      @@codewithdary
      thank you 👍🏼

    • @Saleh2
      @Saleh2 2 роки тому +1

      @@codewithdary
      I have problem with http test when I try it it give this error Failed asserting that two strings are equal. and aim an arrow to response->assertRedirect('/signin');

  • @geraldterencio8635
    @geraldterencio8635 2 роки тому

    Is it possible to execute the command in CMD because Im using sublime as my texteditor

    • @codewithdary
      @codewithdary  2 роки тому

      Yes definitely. You can also install an extension named “terminus” which gives you a CMD in sublime text

  • @dfordemo981
    @dfordemo981 3 роки тому

    i came here from your github

    • @codewithdary
      @codewithdary  2 роки тому +1

      That’s awesome! Love to hear that :)

  • @aruppaul1468
    @aruppaul1468 2 роки тому

    please make laravel react based project

  • @m7mmadomar
    @m7mmadomar 2 роки тому

    What is your theme 👍👍👍👍

    • @codewithdary
      @codewithdary  2 роки тому

      I installed a extension called Material Theme, it was one of the options!

  • @lijinv674
    @lijinv674 3 роки тому +1

    👍

  • @webspot17530
    @webspot17530 2 роки тому

    Not very beneficial