2010-05-04 14 views
9

avevo scritto uno scipt in Java con WebDriver ed ha funzionato benissimo e al di sotto è il codice per il campioneSelenio WebDriver esempio in Python

import org.junit.After; 
import org.junit.AfterClass; 
import org.junit.Before; 
import org.junit.BeforeClass; 
import org.openqa.selenium.WebDriver; 
import org.openqa.selenium.WebDriverBackedSelenium; 
import org.openqa.selenium.firefox.FirefoxDriver; 
import com.thoughtworks.selenium.Selenium; 
import java.util.*; 
import java.lang.Thread.*; 

public class Login { 

@BeforeClass 
public static void setUpBeforeClass() throws Exception { 
} 

@AfterClass 
public static void tearDownAfterClass() throws Exception { 
} 

@Before 
public void setUp() throws Exception { 
} 

@After 
public void tearDown() throws Exception { 
} 

    public static void main(String[] args) { 
     WebDriver driver = new FirefoxDriver(); 
     Selenium selenium = new WebDriverBackedSelenium(driver,  "http://192.168.10.10:8080/"); 
     selenium.open("/"); 
    selenium.keyPress("name=user_id", "admin"); 
    } 
    } 

} 

Ma il mio requisito è quello di attuare la stessa in pitone con WebDriver, può per favore fammi sapere come farlo con l'esempio precedente e i binari del webdriver e come eseguire l'installazione per lo stesso

risposta

12

Hai letto le istruzioni allo python bindings for WebDriver?

example2.py è chiaro, anche se non è una traduzione diretta del codice:

import unittest 
from google_one_box import GoogleOneBox 
from selenium.firefox.webdriver import WebDriver 

class ExampleTest2(unittest.TestCase): 
    """This example shows how to use the page object pattern. 

    For more information about this pattern, see: 
    http://code.google.com/p/webdriver/wiki/PageObjects 
    """ 

    def setUp(self): 
     self._driver = WebDriver() 

    def tearDown(self): 
     self._driver.quit() 

    def testSearch(self): 
     google = GoogleOneBox(self._driver, "http://www.google.com") 
     res = google.search_for("cheese") 
     self.assertTrue(res.link_contains_match_for("Wikipedia")) 

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

Un modulo di test, GoogleOneBox, modelli di una pagina che ha un google barra di ricerca (l'url spostato un po ').

+0

Da dove mi può ottenere il Webdriver per Python e quali sono le linee guida per l'installazione. E a che cosa serve il pacchetto - GoogleOneBox? –

+0

Segui le istruzioni su http://code.google.com/p/selenium/wiki/PythonBindings: forniscono opzioni di download. Googleonebox modella una pagina con una barra di ricerca di Google. È parte della suite di test, http://code.google.com/p/selenium/source/browse/trunk/common/test/py/google_one_box.py – gimel

+2

3 anni lungo la strada, il modulo di test è all'indirizzo http://code.google.com/p/selenium/source/browse/py/test/selenium/webdriver/common/google_one_box.py – gimel

2
import unittest 
from selenium import webdriver 

class Login(unittest.TestCase): 
    def setUp(self): 
     self.driver = webdriver.Firefox() 

    def tearDown(self): 
     self.driver.quit() 

    def test_login(self): 
     driver = self.driver 
     driver.get('http://testurl') 
     username = driver.find_element_by_name('user_id') 
     username.send_keys('admin') 
1

questo è un tappo, ma forse risponde alla tua domanda un po ':

import unittest 
from holmium.core import PageObject, PageElement, PageElements, Locators 

class GoogleMain(PageObject): 
    search_box = PageElement(Locators.NAME, "q", timeout = 1) 
    search_results = PageElements(Locators.CSS_SELECTOR, "li.g", timeout = 1) 

    def search (self, query): 
     self.search_box.clear() 
     self.search_box.send_keys(query) 
     self.search_box.submit() 

class Test(unittest.TestCase): 
    def test_search_simple(self): 
     self.assertTrue(
       len(GoogleMain(self.driver, "http://google.com").search("selenium").search_results) > 0 
     ) 

dettagli a documentazione holmium.core holmium.core documentation

Esegui come:

nosetests test_google.py --with-holmium --holmium-browser=firefox 
Problemi correlati