2013-05-18 208 views
0

我有一些測試,我需要創建功能齊全的測試用戶。我在測試中繼承了TestCase,並在setUp方法中初始化我的測試數據庫。然而,爲了創建功能齊全的用戶,我需要通過致電make_password我可以使用身份驗證器進行測試嗎?

給他們有用的密碼,這足以使我的開發服務器(Raspberry Pi)在每次測試中花費數秒。

我的問題是:我可以強迫Django在測試期間不散列密碼?這將顯着提高我的測試套件的性能,併爲我帶來所有的好處。

+1

出於好奇,你爲什麼要測試Raspberry Pi?你爲什麼不在本地測試或使用虛擬機? – Blender

+0

由於我的開發筆記本電腦是兩代舊筆記本電腦:P – Alex

+0

您確定散列消耗大部分時間嗎? –

回答

1

也許這是你在找什麼: https://docs.djangoproject.com/en/dev/topics/auth/passwords/

基本上,創造django.contrib.auth.hashers.PBKDF2PasswordHasher一個子類,並添加新的散列器如您在設置中PASSWORD_HASHERS中的第一項。

+0

這是一個安全問題。我只能在測試過程中啓用它嗎? – Alex

+0

看來這樣,根據這個答案:http://stackoverflow.com/a/913596/641955 – janos

+0

測試函數上的'override_settings'是否也適用於'setUp'方法? – Alex

相關問題