6👍
You cannot compare these notions.
The opposite to integration testing is unit testing. Unit testing – is testing different isolated parts (usually small code blocks) of your system separately – it’s very focused, integration testing is testing how these different parts of your system work together – for example, url routing, logic in views, logging, querying your models etc.
Functional testing is a type of black box testing that usually checks that some (usually documented) piece of functionality works as expected.
You may have all sorts of tests in your django project:
- unit tests of different library, helper functions
- view tests (this could be already called integration tests, because it may include dealing with models, logging etc)
- ui tests (high-level tests, that could be called functional/integration/system)
- ..
If you don’t have tests at all, I’d start with high-level tests. For example, I’d take selenium and django_selenium and write some in-browser tests that will go through pre-defined scenarios, like login->do smth->logoff
, login with incorrect credentials->see error
etc – and these tests would be called functional and system and integration and ui and etc – you got it I think.
See also:
- Testing Django Applications
- A Guide to Testing in Django
- Carl Mayer’s “Testing and Django” slides
- Integration Testing in Python
Hope that helps.