Just started an Android Dev internship, and tomorrow my job will be to start writing Tests for the ongoing project - this Series is the perfect preparation for that! You absolutely Rock!
What was your internship experience like? How much they expect from you and what kind of things you did? I'm having the biggest imposter syndrome so I'm a bit nervous about interships.
I was trying to learn writing test cases for such a long time brother. And today because of you I finally started it. Really like the way you teach. Huge fan. Subscribed. :)
One small comment I have is to click the check mark box in the test toolbar to show passed and failed tests if you'd like to see al the test results like yours shows in the video. Mine was set to only show failed by default. Thank you again, Philipp!!
Oh wow amazing.. Specially loved your teaching way that you gave homework in between and in end too. This way I could actually evaluate my knowledge. Thanks a lot for such work.
I am a Taiwanese. Although we are of different nationalities, I want you to know that your high-quality videos helped me. I am very grateful to you, thank you
I did the braces the homework but the fibonacci confused the hell outta me. I was sitting for like an hour but eventually gave up lol. Couldn't for my life figure out the definition you provided and what exactly I'm supposed to test: * fib(0) = 0 * fib(1) = 1 * fib(n) = fib(n-2) + fib(n-1) Great video anyway it was so well explained and packed with knowledge.
@16:18 i dont understand why is that we test the parameters of a function separately for example first we need to validate the username whether it can be used or not because if somebody already use that username he cannot use it.. ok fine but then the second parameter of that function is tested in another function.. what if in the second function i put different username or maybe the username that already being taken? so does this means when we test a function means we want to test the parameters of that function?
it work for me , all my tanks ; but now i want to implement in alredy existing project it do No tests found for given includes can you give an approche how to fix
i started the google lessons two weeks ago and now it tells me to go to these test folders but my diceapp doesnt have it! idk what to do ive looked everywhere
I follow you a lot and your content are very good. It would be more better if you could remove the keyboard noises so that we can focus more on the content
Really great series. Also good as a summary if you are familiar with programming and TDD but want to know how to do it well in the Android context. But one questions: Is it really a good practice to write *all* test cases before you write the function logic? My experience is, that it's better to write one test case, try to 'solve' the test case with an implementation as simple as possible. Maybe in your example I could hard code the user name of the first test case. In the next step I'm writing the test case that can fail the function also as simple as possible (using another user name, so you couldn't hard code the name in the function logic). This approach leads to multiple test cases per equivalent class but also to a better test coverage. What's your thoughts about that?
If you strictly follow TDD what I know is that you write unit tests first, so they fail and then you write the logic. That makes you think about all the different scenarios and which things can go wrong. But that is just one approach, it is not the approach. If you find out for yourself that your method works better, there is no law forbidding that 😁
This is a great video and I haven't seen the other videos yet so I am not sure if this topic is covered but can you show me how you test coroutines from the viewmodel. I have done it in the past but I dont think it was the good. I think there is a better way. Thanks.
thank you for showing truth library, sir. also i want to share with you library that i like to testing MockK - testing library for kotlin. is way more better than JUNit. but Truth looks very beautiful for asserting.
probably the function already contains regex inside, i guess its just a good practice not to reinvent the wheel and also less prone to errors because i still dont understand regex too much :D i know what it should do but the syntax is way too much so far
My only question to you sir is...for every test we need to create a "Util" class? for example if I have my functionality already created how can I approach testing?
TestRunner does not find my test. The test runner finds and runs the example test, but my - "test events were not received". What seems to be the problem? > Task :app:testDebugUnitTest FAILED FAILURE: Build failed with an exception. * What went wrong: Execution failed for task ':app:testDebugUnitTest'.
how to make these brackets: `` instead of '' I use US keyboard, but in android for writing more words names with spaces, only the first type of brackets works.
@@PhilippLackner Ach so alles klar !! aber danke! Ich kann auch Deutsch. Du bist wunder developer weiter so!! weil Ich Aus Kazakhstan und Ich sehe die video uber den android development bei Russisce Streamears "Mobile Developer -Russische Android Streamer" z.b und er beginnt nicht seit Anfangs und er erzahlt schon geschriebene code , deswegen z.b Ich Bin Junior und. das ist schwerig verstehen gescriebene code. deswegen ich folge dich und gucke deine video! danke dir!!!! ich hoffe du verstehst mein gebrochene deutsch ))))
Just started an Android Dev internship, and tomorrow my job will be to start writing Tests for the ongoing project - this Series is the perfect preparation for that!
You absolutely Rock!
Thanks a lot, always happy to help! :)
What was your internship experience like? How much they expect from you and what kind of things you did?
I'm having the biggest imposter syndrome so I'm a bit nervous about interships.
I was trying to learn writing test cases for such a long time brother. And today because of you I finally started it. Really like the way you teach. Huge fan. Subscribed. :)
:)) me tooo
One of the best video about testing in Android. Short, simple and All-in-One.
I am a fan from Brazil! You helped me a lot during all my evolution!! Congrats for the great role you make in spreading knowledge!
It's awesome that these videos are free, you're brilliant at teaching. Thank you!
Hi, how your journey in android world ? Did you get the job ?
Hi! I'm still studying but I plan to do internships this year. Android development is still one of my favourites
Hey Philipp, thank you so much for making testing videos!! We really needed this.
Awesome, I didn't understand how to implement testing until watching your videos!
One small comment I have is to click the check mark box in the test toolbar to show passed and failed tests if you'd like to see al the test results like yours shows in the video. Mine was set to only show failed by default. Thank you again, Philipp!!
Oh wow amazing.. Specially loved your teaching way that you gave homework in between and in end too. This way I could actually evaluate my knowledge. Thanks a lot for such work.
Glad it was helpful!
Very good idea with homework, go on, very interesting
I am a Taiwanese. Although we are of different nationalities, I want you to know that your high-quality videos helped me. I am very grateful to you, thank you
Your videos are always awesome!the way explain some technology is quite concisely and easy to understand. Thanks a lot Philipp!
So many "A-HA" moments here for me! You're a God of the community.
Waiting for more videos. Thanks for making our concept clear.
Brilliant!
I applied to my project, works well!
Testing yes. More, more more videos on all kinds of testing 🐣
More to come!
buddy you don't need to ask for click on the subscribe button. Your contents are unique and very very useful. ppl will do it themselves
Its so easy to understand. You are amazing dude!
I did the braces the homework but the fibonacci confused the hell outta me. I was sitting for like an hour but eventually gave up lol. Couldn't for my life figure out the definition you provided and what exactly I'm supposed to test:
* fib(0) = 0
* fib(1) = 1
* fib(n) = fib(n-2) + fib(n-1)
Great video anyway it was so well explained and packed with knowledge.
Great video mate💪💪 will surely do the homework 🙌
Good idea, thanks man! :)
good start for TDD (Test Driven Development)
I'm watching this thread before an interview. wish me luck!
I started my new job from 28th September. I got the confidence regarding MVVM only because of you :) Thank brother :)
Awesome, congrats!
Hello Philipp, Thank you for making such awesome videos. :) Please make one playlist for app security as well!
@13:15 empty username returns fails is actually function name , how it can be failed until it implies any condition
Very good Philipp
@16:18 i dont understand why is that we test the parameters of a function separately for example
first we need to validate the username whether it can be used or not because if somebody already use that username he cannot use it..
ok fine but then the second parameter of that function is tested in another function..
what if in the second function i put different username or maybe the username that already being taken?
so does this means when we test a function means we want to test the parameters of that function?
ok now inderstand it
we must write all possible scenarios in the unit test and handle it correctly without bugs
Man you are simply awesome :)
hello , assertthat is depreceated ... new on this , what alternative to use ??? Great tut !!
it work for me , all my tanks ; but now i want to implement in alredy existing project
it do
No tests found for given includes
can you give an approche how to fix
Awesome!!! Really helpful.
This is really helpful as I was searching for kind of this.. Thanks and expecting for more videos on #testing..
Thank you. The video was fantastic.
Thanks a lot for Testing course. Good luck Dear Philipp. 100000000 Like
Great work good explained 👍
Thank you,... want more videos on writing test cases
i started the google lessons two weeks ago and now it tells me to go to these test folders but my diceapp doesnt have it! idk what to do ive looked everywhere
Great explanation, thank you very much for the useful video...
Nice explanation bro..thanks for helping us.
wow!! I really loved this video
Thank you so much!!
Very good, Thank you!
can i go through this playlist if i know java istead of kotlin
It's very helpful, Thanks a lot
I follow you a lot and your content are very good. It would be more better if you could remove the keyboard noises so that we can focus more on the content
Thanks, that's the case in my latest videos
Great explanation. Thank You.
fun checkBraces(expression: String): Boolean {
var openBracesCount = 0
expression.forEach { char ->
if (openBracesCount < 0)
return false
if (char == '(')
openBracesCount++
if (char == ')')
openBracesCount--
}
return openBracesCount == 0
}
I use java for development, can you create a playlist in java also?
did i do right ? i used regex for matching password containing number of digits? since you used lamda functin to check if it is digit ..
verrrry good . that help me alot . thank u very much
I have some issues in JAVA8 for using google truth.
thank you so much phillip.... i just wanna ask you bout google android certification exam?? what are your views on that??
Great content!
Really great series. Also good as a summary if you are familiar with programming and TDD but want to know how to do it well in the Android context.
But one questions:
Is it really a good practice to write *all* test cases before you write the function logic?
My experience is, that it's better to write one test case, try to 'solve' the test case with an implementation as simple as possible.
Maybe in your example I could hard code the user name of the first test case. In the next step I'm writing the test case that can fail the function also as simple as possible (using another user name, so you couldn't hard code the name in the function logic).
This approach leads to multiple test cases per equivalent class but also to a better test coverage.
What's your thoughts about that?
If you strictly follow TDD what I know is that you write unit tests first, so they fail and then you write the logic. That makes you think about all the different scenarios and which things can go wrong. But that is just one approach, it is not the approach. If you find out for yourself that your method works better, there is no law forbidding that 😁
Which tool ur using to write and test ??
Hi Philipp, no android developer talk about backend server how to create API's, etc please make a tutorial about these
Check pl-coding.com/premium-courses, I got 2 courses on ktor :)
@@PhilippLackner Thank you so much
Amazing job 👍👍👍👍
This is a great video and I haven't seen the other videos yet so I am not sure if this topic is covered but can you show me how you test coroutines from the viewmodel. I have done it in the past but I dont think it was the good. I think there is a better way. Thanks.
Hi Philipp, I would like to ask you something, how should I do to test private functions?
You test them indirectly by testing the public functions that use them
Great video. Thank you
Good job bro thanks.
Which keyboard do you use? I like how it sounds!
Do you suggest to use `password confirmedPassword -> falsse` in test fun names?
Ever used hamcrest lib for matchers ? Specially for kotlin
Can you write some Mock API call , Repository call testcases in details .?
is assertThat deprecated? What to use now?
EDIT: sorry, was using the wrong import, is working and is perfect. Thanks!
thank you for showing truth library, sir.
also i want to share with you library that i like to testing
MockK - testing library for kotlin. is way more better than JUNit. but Truth looks very beautiful for asserting.
yes, I like that one as well. MockK is not a testing library though, it's for creating mocks. It's a replacement for Mockito. JUnit is something else
@@PhilippLackner oh. I did not know. Thank you
I actually came to know about the count extension function and what it can do, I was almost thinking you would write a regex for this case
probably the function already contains regex inside, i guess its just a good practice not to reinvent the wheel and also less prone to errors because i still dont understand regex too much :D i know what it should do but the syntax is way too much so far
Wow this was fun.
My only question to you sir is...for every test we need to create a "Util" class? for example if I have my functionality already created how can I approach testing?
Nono, this was just for demonstration. This Playlist will be big, you will learn what you want to know later here
@@PhilippLackner Thank you very much! great and simple explanations waiting for the next videos : )
Thank you 🔥🙏
thank you very much😍
how do you create and edit your videos please help me do that create a video or name a software
I use camtasia
loved the video, subsribed
Awesome, thank you!
use Option + Command + L to reformat code to follow codestyle
TestRunner does not find my test.
The test runner finds and runs the example test, but my - "test events were not received".
What seems to be the problem?
> Task :app:testDebugUnitTest FAILED
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':app:testDebugUnitTest'.
Why do you choose library truth instead AssertJ?? Is there any different benefits??
Haven't used AssertJ, Google uses Truth everywhere and it's just super readable
great explenation
I can't import the truth library until added the truth extensions
testImplementation "com.google.truth.extensions:truth-java8-extension:1.1.2"
Homework done sir!!
Good job!
Will it better to break that function to smaller functions?
You could do that, but imo not necessary here. You could write the entire function in one line
Perfect and simple
you are life savior
Great tutorial. Helped me learn so quick.Followed you on youtube and insta :D
how to make these brackets: `` instead of ''
I use US keyboard, but in android for writing more words names with spaces, only the first type of brackets works.
Button above Tab
I wonder is apps like Netflix and Amazon uses test cases.
For sure, every serious software company uses tests
Thanks, brother.
You're welcome
man i feel down..
it seems programming is not as straight forward as i thought..
like
you write some code and it will run
it is not like html
Thank you!
You're welcome!
The difference in video quality and your beard makes this video feels like it's 3-4 years old compared to your latest videos.
You’re British man or American?? , because I’m not good understand english , but I have understood everything what you’ve said .
I'm german
@@PhilippLackner Ach so alles klar !! aber danke! Ich kann auch Deutsch. Du bist wunder developer weiter so!! weil Ich Aus Kazakhstan und Ich sehe die video uber den android development bei Russisce Streamears "Mobile Developer -Russische Android Streamer" z.b und er beginnt nicht seit Anfangs und er erzahlt schon geschriebene code , deswegen z.b Ich Bin Junior und. das ist schwerig verstehen gescriebene code. deswegen ich folge dich und gucke deine video! danke dir!!!! ich hoffe du verstehst mein gebrochene deutsch ))))
thank you!
You're welcome!
THANK YOU
Thanks 😘
Thanks bro
thank you
Thank you.
You're welcome!
Thanks
excellent
Very Nice))
A question how does these ecommerce apps handles caching for handling huge amount of images data.
Image loading libraries has functionality of handling caches