当我正常运行app并在浏览器中登录时,它可以工作.但是使用Unittest它不会登录....,它会再次返回登录页面.
两个"print rv.data"只打印登录页面的内容,但它应该打印索引页面的内容,
如果有帮助就是login_required
 ,我使用SQLAlchemy作为ORM.谁知道什么可能有问题?如果需要更多代码,我会提供.我试图在这里搜索类似的问题,但没有找到.
#!flask/bin/python
import os
import unittest
from config import basedir
from app import app, db
from app.models import User,Exam,Attempt,Subject
class TestCase(unittest.TestCase):
    def setUp(self):
        app.config['TESTING'] = True
        app.config['CSRF_ENABLED'] = False
        app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///' + os.path.join(basedir, 'test.db')
        self.app = app.test_client()
        db.create_all()
    def tearDown(self):
        db.session.remove()
        db.drop_all()
    def login(self, username, password):
        return self.app.post('/login', data=dict(
            username=username,
            password=password
        ), follow_redirects=True)
    def test_users(self):
        u = User(username = 'gaucan', password = 'gau')
        db.session.add(u)
        db.session.commit()
        rv = self.login('gaucan','gau')
        print rv.data
        rv = self.app.get('/',follow_redirects=True)
        print rv.data …