2011-04-01 74 views
1

蟒蛇硒LIB页面有此示例:用于硒的firefox IDE是否使用硒lib导出为常规python代码?

from selenium import webdriver 
from selenium.common.exceptions import NoSuchElementException 
from selenium.common.keys import Keys 
from time 

browser = webdriver.Firefox() # Get local session of firefox 
browser.get("http://www.yahoo.com") # Load page 
assert browser.title == "Yahoo!" 
elem = browser.find_element_by_name("p") # Find the query box 
elem.send_keys("selenium" + Keys.RETURN) 
time.sleep(0.2) # Let the page load, will be added to the API 
try: 
    browser.find_element_by_xpath("//a[contains(@href,'http://seleniumhq.org')]") 
except NoSuchElementException: 
    assert 0, "can't find seleniumhq" 
browser.close() 

但是,当我出口从Firefox硒IDE保存的会议上,Python代码看起来很大的不同:

from selenium import selenium 
import unittest, time, re 

class create_order(unittest.TestCase): 
    def setUp(self): 
     self.verificationErrors = [] 
     self.selenium = selenium("localhost", 4444, "*chrome", "http://localhost/") 
     self.selenium.start() 

    def test_create_order(self): 
     sel = self.selenium 
     sel.open("/User/LogOn") 
     sel.type("UserName", "testuser") 
     sel.type("Password", "123") 
     sel.click("//input[@value='login']") 
     sel.wait_for_page_to_load("30000") 
     sel.click("link=Settings") 
     sel.wait_for_page_to_load("30000") 
     sel.click("//input[@value='Some Link']") 
     sel.wait_for_page_to_load("30000")  
     sel.click("link=Save>") 
     sel.wait_for_page_to_load("30000") 

    def tearDown(self): 
     self.selenium.stop() 
     self.assertEqual([], self.verificationErrors) 

if __name__ == "__main__": 
    unittest.main() 

是使用不同的API,它?

+1

其他的python代码是什么? – 2011-04-01 19:17:42

+0

IDE吐出的代码,更新了上面的问题。 – Blankman 2011-04-01 19:44:39

回答