2013-04-05 131 views
3

如果我構建了一個應用程序,測試實際應用程序的協議是什麼?實際上測試我構建的應用程序(Flask,Python)

我剛認識的測試,並申請延期,你想制定一個shell應用程序,然後測試您的擴展測試對我來說很有意義,但如果我想測試實際應用中,我的部分構建。

我不知道是否有人有任何指針,導遊,或他們如何去包裝和測試他們的應用程序燒瓶想法。我迄今爲止所嘗試的(將應用程序導入測試並開始爲其構建測試)既不愉快也不成功。我知道我需要X,Y,Z的應用程序,通過構建一個確保X,Y,Z發生的測試,我可以節省大量的未來時間。然而,建立一個單獨的測試應用程序會花費大量時間並且看起來沒有生產力。

回答

3

有很多方法可以測試你的應用程序。

Flask's documentation提供了有關如何initlialize您的應用程序,並請求給它的信息:

import flaskr 

class FlaskrTestCase(unittest.TestCase): 

    def setUp(self): 
     self.db_fd, flaskr.app.config['DATABASE'] = tempfile.mkstemp() 
     self.app = flaskr.app.test_client() 
     flaskr.init_db() 

    def tearDown(self): 
     os.close(self.db_fd) 
     os.unlink(flaskr.DATABASE) 

    def test_empty_db(self): 
     rv = self.app.get('/') 
     assert 'No entries here so far' in rv.data 

這允許您使用他們的test_client要求任何路線。您可以在您的應用程序中請求每條路線並聲明它正在返回您期望的數據。

您可以編寫測試做測試特定的功能太,只需導入功能,並相應地對其進行測試。

你不應該在所有寫「一個單獨的測試應用程序」。然而,你可能需要做的事情,如加載測試數據,嘲笑對象/類,這些不是很直接,但有很多博客文章/ python工具,將幫助你做到這一點

我建議閱讀燒瓶測試開始的文檔,它們提供了一個很好的概述。

此外,這將是非常有益的,爲您提供細節。

什麼我試過到目前爲止(導入應用到測試,並開始構建 測試吧)一直都令人不愉快的和不成功的

這不是建設性的。你在執行測試時是否出錯?如果是的話,你可以發佈它們。它如何不成功?你不知道要測試哪個部分?您在執行測試時遇到問題嗎?加載數據中?測試迴應?錯誤?

+1

是的,我的問題含糊不清,而且我知道這對某些人可能有問題。但是,有時你可以通過明智地降低問題內容來獲得很好的迴應。我已經閱讀了燒瓶文檔,並且正在尋求更多信息,但是我的問題僅僅是作爲我試圖圍繞我需要做的事情圍繞我的大腦的一部分而存在 - 基本上是「拿走我的應用程序,並用測試戳它,而不用構建完全獨立的測試應用程序「 – blueblank 2013-04-05 20:33:14

+2

@blueblank - dm03514不建議完全構建另一個應用程序用於測試 - 他建議*將您現有的應用程序導入到您的測試中,並使用應用程序的內置'test_client'來測試它。這個例子中缺少的是'import flaskr'(在這個例子中是被測試的應用程序)。 – 2013-04-06 13:20:44

相關問題