2017-09-06 2 views
0

Ich versuche, WebDriver Instance universell zu machen. Ich habe eine kleine Python-Datei erstelltBrowser wird nicht mit Selenium in Python gestartet

import Driver 

class LoginPage: 

    @staticmethod 
    def GoToURL(url): 
     print "In GoTo URL" 
     Driver.Instance.get(url) 

die WebDriver

Hier ist mein Code

#Driver.py 
from selenium import webdriver 

Instance = None 

def Initialize(): 

    global Instance 
    Instance = webdriver.Chrome("C:\\mystuff\\Browser\\chromedriver.exe") 
    Instance.implicitly_wait(5) 
    return Instance 

def CloseDriver(): 

    global Instance 
    Instance.quit() 

Dies wird in Commonfunctions.py verwendet zu instanziiert Und schließlich meine Testdatei

import unittest 
import Driver 
from CommonFunctions import LoginPage 


class LoginTest(unittest.TestCase): 

    def setUp(self): 
     Driver.Initialize() 

    def testUserCanLogin(self): 
     LoginPage.GoToURL("http://www.gmail.com") 

Wenn ich versuche, dies auszuführen, gibt es keinen Fehler, ich bekomme die Meldung "Prozess beendet mit Beenden (0) in der PyCharm-Konsole. Der Browser wird jedoch nie gestartet. Wenn ich versuche, es in einem einzigen Block zu tun, wird der Browser reibungslos gestartet.

Ich versuche, ein einfaches Framework zu erstellen, und das ist mein erster Schritt. Wenn Sie andere Vorschläge haben, bitte leiten Sie mich.

Danke !!

+0

haben u Gecko-Treiber installiert? versuche es zu installieren. dann könnte es funktionieren! – rhea

+0

Wie läuft der Test? Welchen Befehl hast du benutzt? –

Antwort

0

Put folgenden Haupt in Ihnen Klasse zu testen,

class LoginTest(unittest.TestCase): 

    def setUp(self): 
     Driver.Initialize() 

    def testUserCanLogin(self): 
     LoginPage.GoToURL("http://www.gmail.com") 

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