Building Data-Driven Web Apps with Flask and SQLAlchemy Transcripts
Chapter: Testing web apps
Lecture: The rest of the tests
Login or
purchase this course
to watch this video and the rest of the course contents.
0:00
Now there's more tests to write for this application of course there are. I added a few more, I wrote them earlier and just dropped them in for you.
0:10
You've already seen all the three cases that we're going to use and it would just be more of the same
0:14
but I want to give you a little bit more to work with. So here's our account test that we've been working with
0:18
we've got out vm test, our ViewModels test we've got our view test, and now we've got our two innovation tests down here at the end
0:26
working with our pytest ficture. So nothing changes there, but I just added some more. Remember that test for the package details
0:34
in the earlier section? Just in concept. So, here it is in code. So here is one that, we'll find a successful one.
0:42
We'll simulate it actually existing in the database called sqlalchemy and we're going to run through it here and mock out the database interaction
0:50
but then we're going to get that data and process it here. Right, get a response and verify that SQLAlchemy is in the data.
0:57
We're also going to do a missing one. This is important to test. We want to make sure that if for some reason
1:02
we try to get package by id, but it's not there we get a status code 404 as opposed to crashing or just trying to show something that's not right.
1:11
Over to the ohm test, super simple we're just doing integration type tests here. On the first one, just making sure that the title's in there
1:19
and then here we're directly calling a function so this should help power the Int and this should be much more V with our naming commission here.
1:26
And this is verifying that the model that we get back is what we expected. We also have a sitemap test one.
1:33
I'm going to save that for later, but let's look at this as well. So far what I've been doing is saying running the test here and it would be nice
1:41
if I could just say run all the tests. One way that we can do that as well as configure a couple of things to work better, as we'll see
1:47
is create this all test. This is very, very analogous to our all models up here. In fact, it's basically doing the same thing.
1:56
So it's going to import all the tests into one file and then we just point pytest at that and that's a simple and easy thing to do.
2:02
So let's go down here and we'll see we're just importing star from all the tests. And then I pointed our run configuration to run that file.
2:13
Okay, so now if we run it you'll see we have a bunch more tests that run. How cool is that? So a bunch of stuff is happening there.
2:20
It's going to be fun to dig into it with you but just run it like this. This imports of 'em, remember if you add
2:25
a whole new category of tests, so in a file be sure to throw it in here as well.