Comments (5)
I do not recommend triggering the request handling like this. The nicer solution is the test_client like the example tests do: http://github.com/mitsuhiko/flask/blob/master/examples/minitwit/minitwit_tests.py
The big advantage is that it does not depend on a certain way to dispatch requests and tests will continue to work if one refactors the request dispatching.
from flask.
I assume that using test_client there is no way to access the session since test_client treats the app as a black box. That was what thadeusb was trying to do.
from flask.
That is indeed the case but you can hook in a temporary view so that you can access the session from there (for example). There are other ways as well but I'm not sure if its not a better idea to test the application as blackbox in general.
from flask.
I figured the purpose of unittesting was to make sure your application was working properly.
What if I store a fairly large object in session (say I am making a ampache clone) and I store the playlist. I need to verify that that playlist is correct in the session object, I can't even look at it correctly from an html stand point.
There is another issue with black-box testing, what if I change the way my flash messsage is worded? Well now all my tests are broken, even though my application works just fine and dandy.
from flask.
Added example for context bound objects to the testing docs. This closed by 8d49440
from flask.
Related Issues (20)
- use ThreadPoolExecutor and copy_current_request_context in flask will appear some bug
- `FileStorage` closed unexpectedly when using `copy_current_request_context` HOT 1
- Blueprint Dynamic URL For `string` vs. `path`
- Extend Config type HOT 1
- send_file doesn't work with objects HOT 1
- Add domain support to Blueprint HOT 5
- CHIPS support HOT 1
- The dependency specifiers are too relaxed HOT 3
- Route Aliases HOT 2
- Flask logging - Other libraries - FileHandler creates duplicate log entries HOT 11
- transfer-encoding: debug server behavior differs from test client HOT 1
- Keep code running after response has been sent. (To respond with HTTP requests to other servers) HOT 6
- Secret Key Rotation HOT 1
- @app.errorhandler() cannot be used in blueprint when debug=False
- Flask is not running when Debug is True on Windows HOT 1
- Starter example results in 404 error HOT 4
- How to avoid duplicate threads in debug mode
- Unable to silence logging messages HOT 1
- Broken HTML Markup in Template Inheritance HOT 1
- When using Flask to receive multiple files, an extra ā0Dā appears at the end of some images HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
š Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. ššš
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ā¤ļø Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from flask.