2010-05-04 21 views
9

me había escrito una scipt en Java con WebDriver y ha funcionado muy bien y por debajo es el código de la muestraselenio WebDriver ejemplo en 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"); 
    } 
    } 

} 

Pero mi obligación es poner en práctica la misma en python con WebDriver, puede por favor, hágamelo saber cómo se puede hacer esto con el ejemplo anterior y los binarios de webdriver y cómo hacer la configuración para el mismo

Respuesta

12

¿Ha leído las instrucciones en python bindings for WebDriver?

example2.py es clara, aunque no es una traducción directa de su código:

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 módulo de prueba, GoogleOneBox, modelos de una página que tiene una barra de búsqueda de Google (la url se movió un poco).

+0

Desde donde yo puede obtener el Webdriver para Python y cuáles son las pautas de instalación. Y cuál es el uso del paquete - GoogleOneBox? –

+0

Siga las instrucciones en http://code.google.com/p/selenium/wiki/PythonBindings: brindan opciones de descarga. Googleonebox modela una página que tiene una barra de búsqueda de Google. Es parte del conjunto de pruebas, http://code.google.com/p/selenium/source/browse/trunk/common/test/py/google_one_box.py – gimel

+2

3 años después, el módulo de prueba es en 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

esto es un enchufe, pero tal vez responda a su pregunta un poco:

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 
     ) 

detalles en la documentación holmium.core holmium.core documentation

ejecución como:

nosetests test_google.py --with-holmium --holmium-browser=firefox 
Cuestiones relacionadas