2010-01-05 65 views
2

我有一些頁面元素拆分成單獨的視覺塊。Django - 測試不同的視覺塊

我目前正在集成設計人員的前端htmls,所以對我來說,測試它們在瀏覽器中的顯示方式(每個塊)是非常重要的。

我可以使用django-testing來實現這個最簡單的方法是什麼?

我知道我可以創建所有塊的視圖,並通過斜紋或硒調用此頁面。我想必須有一個更簡單的平臺特定的命令,我可以從測試中使用類似gnome-open render_to_string(abcd.html,{})

讓我想起了思想喬爾的學校僱傭了「測試」,即紀律,不介意測試這個無聊的東西它一次又一次;但我不一定接受它。

此外,指定django使用in-memory-sqlite-db進行測試的最簡單方法是什麼,以便可以加速進程?

+0

我對'gnome-open'的使用感到困惑。爲什麼你想要測試打開新的應用程序?他們不應該自動化和自我包含嗎? – notnoop 2010-01-05 14:23:21

+0

notnoop:我喜歡測試打開多個瀏覽器選項卡,每個選項卡都有一個區塊,所以我可以**從設計html模板中看到它們按需顯示。 – 2010-01-05 14:25:03

回答

0

關於使用sqlite進行測試問題,您可以指定一個單獨的設置模塊(讓我們稱之爲test_settings),它僅定義數據庫設置。然後運行它想:

manage.py test --settings=test_settings 

在此文件中寫:

from settings import * 
DATABASE_ENGINE = "sqlite3" 

測試運行應該內存數據庫默認情況下,如果指定的SQLite是使用。

關於檢查單個元素的輸出取決於您試圖實現的內容。如果你的意思是你想手動查看某個瀏覽器中的某些內容,那麼我會建議編寫一個管理命令來做到這一點。測試運行器更適合於可以確定通過代碼或失敗代碼的事情。如前所述,如果這是您的目標,然後輸出到文件,然後腳本瀏覽器打開與目錄中的所有文件的標籤,如果可能是一個好主意。您可能會發現Watir對此很有用,它是一個用於自動化Web瀏覽器的開源(BSD)庫。

如果你有可以編程檢查(一些CSS的東西,比較的圖像,發現在輸出字符串),那麼你可能會發現一些工作,我沒有使用硒和Python有用(http://github.com/garethr/css-test

各地檢驗CSS什麼
0

也許將render_to_string()寫入文件,然後啓動一個瀏覽器並將該文件作爲參數(使用subprocess.call或類似的東西)?