2010-08-26 31 views
1

我在計算如何取出硒條中沒有必要的東西時遇到了一些麻煩,並且可以用另一個腳本將它打包。我無法理解這是怎麼回事,因爲我沒有得到單元testint部分來自哪裏...理想情況下,如果我可以將它分解成一個函數,我可以稱這將是想法,感謝任何建議。硒與Python,如何簡化腳本,以便我可以從其他Python腳本運行它們?

(AND,是的,我確實需要硒,我懇請所以我需要這個了,你請不建議,因爲我將使用硒的東西很多替代品)

這只是一個基本的演示腳本:

from selenium import selenium 

import unittest 



class TestGoogle(unittest.TestCase): 

    def setUp(self): 

     self.selenium = selenium("localhost", \ 

      4444, "*firefox", "http://www.bing.com") 

     self.selenium.start() 



    def test_google(self): 

     sel = self.selenium 

     sel.open("http://www.google.com/webhp") 

     sel.type("q", "hello world") 

     sel.click("btnG") 

     sel.wait_for_page_to_load(5000) 

     self.assertEqual("hello world - Google Search", sel.get_title()) 



    def tearDown(self): 

     self.selenium.stop() 



if __name__ == "__main__": 

    unittest.main() 
+1

哦,我只是發現這個:http://coreygoldberg.blogspot.com/2009/09/selenium-rc-with-python-in-30-seconds.html這似乎是我在找什麼,我會離開這個,因爲沒有很多關於這個話題,我可以找到 – Rick 2010-08-26 18:12:06

回答

1

我會建議的是在你的其他腳本中作爲參數引用測試用例的函數。這樣,如果某些事情不正確,你的函數可能會使測試用例失敗。像這樣(對谷歌搜索的字符串,並檢查標題):

def search_s(utest, in_str): 
    s = utest.selenium 
    s.type('q', in_str) 
    s.click('btnG') 
    s.wait_for_page_to_load('30000') 
    utest.assertEqual("%s - Google Search" % (in_str,), s.get_title()) 

然後,在你的測試用例,這樣稱呼它:

def test_google(self): 
    s.open('/') 
    search_s(self, "hello world") 

然後,可以使這些類型的庫方法,允許你混合搭配你的測試。

+0

謝謝..是的,這基本上是我發現其他信息後,我開始做...謝謝發佈此 – Rick 2010-08-26 20:56:21