Flask 登錄和登出

2021-08-10 17:35 更新

我們應(yīng)用的大部分功能只允許具有管理員資格的用戶訪問。所以我們需要 一種方法來幫助我們的測試客戶端登陸和登出。為此,我們向登陸和登出 頁面發(fā)送一些請求,這些請求都攜帶了表單數(shù)據(jù)(用戶名和密碼),因為 登陸和登出頁面都會重定向,我們將客戶端設(shè)置為 follow_redirects

將如下兩個方法加入到您的 FlaskrTestCase 類:

def login(self, username, password):
    return self.app.post('/login', data=dict(
        username=username,
        password=password
    ), follow_redirects=True)

def logout(self):
    return self.app.get('/logout', follow_redirects=True)

現(xiàn)在我們可以輕松的測試登陸和登出是正常工作還是因認證失敗而出錯, 添加新的測試函數(shù)到類中:

def test_login_logout(self):
    rv = self.login('admin', 'default')
    assert 'You were logged in' in rv.data
    rv = self.logout()
    assert 'You were logged out' in rv.data
    rv = self.login('adminx', 'default')
    assert 'Invalid username' in rv.data
    rv = self.login('admin', 'defaultx')
    assert 'Invalid password' in rv.data
以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號