[PYTHON] Beginnend mit Selen

Ich habe vorerst Selen berührt, also habe ich eine kleine Notiz geschrieben. Ich habe jedoch nicht alle ausprobiert, daher gibt es viele Mängel.

Was ist Selen überhaupt?

Ein Tool zum Testen von Websites. Durch vorheriges Schreiben eines Skripts ist es möglich, denselben Vorgang im Browser auszuführen und zu überprüfen, ob das Element in der Mitte vorhanden ist und ob die URL mit dem erwarteten Wert übereinstimmt.

Vorläufig hörte ich eine Geschichte wie "Selenium beim Testen von Websites". Als ich sie googelte, war ich sehr besorgt, weil der Artikel nur alt war, aber um 2012 die 2.x-Serie Es scheint, dass das Produkt veröffentlicht wurde und weiterhin verwendet werden kann.

Also, um Selen zu verwenden

Vorerst können Sie es von der Selenium-Site ** English version ** herunterladen. Die Selenium-Site selbst hat eine japanische Version, aber Sie können 1.x von der japanischen Site herunterladen. Zuallererst war ich hier wirklich begeistert. Egal wie viel "die neueste Version finden Sie auf der offiziellen Website" ...

Platzieren Sie jede Datei vorerst am folgenden Speicherort.

Außerdem scheint Python hier nutzlos zu sein, es sei denn, es handelt sich um ein System der Version 2 (3.x funktioniert nicht ordnungsgemäß, da an verschiedenen Stellen inkompatible Teile vorhanden sind). Ich habe es von der offiziellen Python-Seite heruntergeladen, aber es enthält Setup-Tools und Pips (erforderlich für die Installation von Selenium Client). Da es so etwas nicht gibt, installieren Sie es unter Bezugnahme auf die folgende Site.

Versuchen Sie es vorerst leicht

Am einfachsten ist es, Selenium IDE zu starten und den Vorgang aufzuzeichnen → abzuspielen.

  1. Starten Sie Firefox und starten Sie Selenium IDE
  2. Stellen Sie sicher, dass "Aktion> Test aufzeichnen" in der Selenium-IDE aktiviert ist.
  3. Kehren Sie zum Firefox-Fenster zurück und öffnen Sie die Site, die Sie testen möchten
  4. Folgen Sie dem Link zu der Seite, die Sie testen möchten
  5. Deaktivieren Sie "Aktion> Aufnahmetest", um die Aufnahme zu beenden

Etwa so haben Sie einen einfachen Operationscode. Selenium IDEウィンドウ

Wählen Sie anschließend die Zeile aus, die Sie testen möchten, und fügen Sie einen Test hinzu, indem Sie im Kontextmenü einen Befehl wie "Befehl einfügen" und im Befehl "assertTitle" eingeben. Beachten Sie zu diesem Zeitpunkt, dass der erwartete Wert in das Feld "Ziel" und nicht in das Feld "Wert" eingegeben werden muss (ich war wieder süchtig danach). assertコマンドの指定

Ein weiterer zu beachtender Punkt ist, dass Sie, wenn Sie warten möchten, bis der Seitenübergang nach dem Klicken abgeschlossen ist, den Befehl clickAndWait anstelle des Befehls click verwenden und auf den Bildschirmumschaltvorgang wie Ajax ohne Bildschirmübergang warten. In diesem Fall können Sie die Existenz des Elements einfach mit dem Befehl waitForVisible oder ähnlichem überprüfen.

Testfall ausgeben

Wenn Sie den Testfall in eine Datei ausgeben möchten, wählen Sie im Menü "Datei" die Option "Testfall speichern" oder "Testfall exportieren". Wenn Sie Testfälle speichern, wird eine HTML-Datei mit Tabellen-Tags angezeigt, ein Testcode pro Zeile.

Wenn Sie exportieren möchten, können Sie die Sprache angeben und den Testcode in einer Datei speichern. Standardmäßig können Sie aus vier Sprachen auswählen: Python, Ruby, C # und Java. Wenn Ihnen das Codeformat jedoch nicht gefällt oder Sie es in einer anderen Sprache ausgeben möchten, können Sie es über "Optionen> Einstellungen" hinzufügen.

Führen Sie den exportierten Testfall aus

Die exportierten Testfälle können wie gewohnt mit ihren jeweiligen Interpreten ausgeführt werden (vorausgesetzt, das Selenium-Client-Modul für jede Sprache ist vorinstalliert). Wie oben erwähnt, ist für die Verwendung von Python jedoch die Version 2 erforderlich. Bitte beachten Sie, dass das Skript mit 3 Serien nicht gut funktioniert.

Außerdem konnte ich in meiner Umgebung die von Ruby ausgegebene Datei aufgrund eines Syntaxfehlers nicht verwenden. Ich habe C # usw. nicht ausprobiert, da das Kompilieren schwierig ist.

Testfälle, die mit "Remote Control" exportiert wurden, das nach dem Sprachnamen geschrieben wurde, werden verarbeitet, indem ein beliebiger Browser mit Selenium Server gestartet wird. Daher muss Selenium Server im Voraus gestartet werden. Auf der folgenden Website erfahren Sie, wie Sie Selenium Server starten.

Vorerst sieht es so aus. Wenn ich etwas wieder finde, kann ich es hinzufügen.

Recommended Posts

Beginnend mit Selen
Schaben mit Selen ~ 2 ~
Schaben mit Selen
Beginnend mit PyTorch
Erfolgreiches Schaben mit Selen
Screenshot mit Selen (Python Edition)
Schaben mit Selen [Python]
Schaben mit Selen in Python
Schaben mit Selen + Python Teil 1
Python: Arbeiten mit Firefox mit Selen
Selen
Scraping mit Selen in Python
Erinnerungen an den Kampf mit Selen
Schaben mit Selen + Python Teil 2
Probieren Sie Selenium Grid mit Docker aus
Beginnend mit maschinellem Python-Lernen
I-Town-Seite mit Selen abkratzen
Scraping mit Selen in Python (Basic)
Scraping mit Python, Selen und Chromedriver
Vertrauteres Testen mit Selen
Holen Sie sich HTML von Element mit Python-Selen
WebUI-Test mit Python2.6 + Selenium 2.44.0 - Profileinstellung
Selen: Warten Sie mit UND / ODER auf das Element
Ich habe versucht, Selen mit Headless-Chrom zu verwenden
Automatisieren Sie den WEB-Prozess mit Heroku + Selen + Chrome
[Python] Betreiben Sie den Browser automatisch mit Selenium
Üben des Web-Scrapings mit Python und Selen
Erstellen Sie mit Selenium eine Capture-Erfassungsmaschine
Verwenden Sie den Phantomjs-Webdriver von Selen mit Pythons Unittest
Ich wollte unbedingt mit Selen kopieren
PDF mit Selenchromatriver (Chrome 57) + herunterladen (Sonstige Hinweise)
Automatischer Betrieb von Chrome mit Python + Selen + Pandas
Versuchen Sie, Google Chrome mit Python und Selenium auszuführen
Melden Sie sich mit Selenium Python bei Yahoo Business an
Ziehen Sie eine lokale Datei mit Selenium (Python) per Drag & Drop.
[EC2] Verhindern Sie verstümmelte Charaktere, wenn Sie mit Selen gefangen werden
Automatische Anmeldung bei ServiceNow mit Selenium Web Driver