WebUI-Test mit Python2.6 + Selenium 2.44.0 - Profileinstellung

Notieren Sie sich die Profileinstellungen, auf die Sie beim Schreiben von Tests mit Selen gestoßen sind. Ich bin neu in Python, bitte haben Sie Verständnis dafür, dass der Code seltsam sein kann.

Umwelt schaffen

Das Bauverfahren ist an vielen Stellen geschrieben, daher werde ich es weglassen.

Ich habe auf die folgende Seite verwiesen. http://treeapps.hatenablog.com/entry/2014/10/16/015439 https://pypi.python.org/pypi/selenium

Es ist eine Konfiguration von Xvfb + FireFox + Selen (2.44.0).

Profileinstellungen

Wenn der User-Agent identifiziert und die für den PC / das Smartphone optimierten Seiten separat verteilt werden, ist ein Test erforderlich, der die UA (Mobile Safari usw.) des Smartphones angibt. Wenn Sie den Test in der Entwicklungsumgebung ausführen, denke ich, dass es sich möglicherweise um ein Oleore-Zertifikat handelt. Um diese zu unterstützen, ist die anfängliche Einstellung des Profils erforderlich.

sp_webdriver.py


import os
from selenium import webdriver
from selenium.webdriver.firefox.firefox_profile import FirefoxProfile

profile = FirefoxProfile()
#Zertifikatwarnungen ignorieren
profile.set_preference("webdriver_assume_untrusted_issuer", False)
profile.set_preference("webdriver_accept_untrusted_certs", True)
profile.accept_untrusted_certs = True

# User-Umschreiben des Agenten(Beispiel: iOS 8.0)
profile.set_preference("general.useragent.override", "Mozilla/5.0 (iPhone; CPU iPhone OS 8_0 like Mac OS X) AppleWebKit/600.1.4 (KHTML, like Gecko) Version/8.0 Mobile/12A365 Safari/600.1.4")

profile.update_preferences()

driver = webdriver.Firefox(profile)

Schreiben Sie einen Testfall

Ich werde einen Testfall schreiben. Beim eigentlichen Schreiben halte ich es für eine gute Idee, eine Basisklasse zu erstellen und dann nur den Testteil zu implementieren.

TestCase.py


# -*- coding: utf-8 -*-

import sys, os
import datetime
from selenium import webdriver
from selenium.webdriver.firefox.firefox_profile import FirefoxProfile
import unittest

class TestCase(unittest.TestCase):

    def setUp(self):
        profile = FirefoxProfile()
        profile.set_preference("webdriver_assume_untrusted_issuer", False)
        profile.set_preference("webdriver_accept_untrusted_certs", True)
        profile.accept_untrusted_certs = True
        profile.set_preference("general.useragent.override", "Mozilla/5.0 (iPhone; CPU iPhone OS 8_0 like Mac OS X) AppleWebKit/600.1.4 (KHTML, like Gecko) Version/8.0 Mobile/12A365 Safari/600.1.4")
        profile.update_preferences()
        self.driver = webdriver.Firefox(profile)

        self.base_url = "http://m.finance.yahoo.co.jp/"
        self.driver.implicitly_wait(30)
        self.accept_next_alert = True

    def ssAssertEquals(self, left, right):
        try:
            #Machen Sie einen Screenshot von assertionError
            self.assertEqual(left, right)
        except AssertionError, e:
            now = datetime.datetime.now()
            self.driver.save_screenshot("/var/log" + self.__class__.__name__ + "_" + now.strftime("%Y%m%d%H%M%S") + ".png ")
            raise e

    def test_sitetop(self):
        self.driver.get(self.base_url)
        self.ssAssertEquals(u"Y!Finanzen", self.driver.title)

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

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

Recommended Posts

WebUI-Test mit Python2.6 + Selenium 2.44.0 - Profileinstellung
Primzahlbeurteilung mit Python
Primzahlbeurteilung mit Python
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
Scraping mit Selen in Python
Schaben mit Selen + Python Teil 2
[Mit Python automatisiert! ] Teil 1: Datei einstellen
Scraping mit Selen in Python (Basic)
Scraping mit Python, Selen und Chromedriver
Unit Test Log Ausgabe mit Python
Schreiben Sie Selentestcode in Python
Holen Sie sich HTML von Element mit Python-Selen
[Python] Super einfacher Test mit Assert-Anweisung
Stresstest mit Locust in Python geschrieben
Testen Sie nicht funktionalisierte Python-Programme mit GitLab CI
Generieren Sie japanische Testdaten mit Python faker
Wie man einen Taschentest mit Python macht
Integration mit setuptools / python setup.py test / pytest-runder
[Python] Betreiben Sie den Browser automatisch mit Selenium
Üben des Web-Scrapings mit Python und Selen
Verwenden Sie den Phantomjs-Webdriver von Selen mit Pythons Unittest
Schaben mit Selen
[Python / Selen] XPath
FizzBuzz in Python3
Schaben mit Selen ~ 2 ~
Scraping mit Python
Statistik mit Python
Automatischer Betrieb von Chrome mit Python + Selen + Pandas
Scraping mit Python
Python mit Go
Versuchen Sie, Google Chrome mit Python und Selenium auszuführen
Twilio mit Python
In Python integrieren
Spielen Sie mit 2016-Python
AES256 mit Python
Getestet mit Python
Schaben mit Selen
Beginnend mit Selen
Python beginnt mit ()
Melden Sie sich mit Selenium Python bei Yahoo Business an
Ziehen Sie eine lokale Datei mit Selenium (Python) per Drag & Drop.
Python VM-Profil
mit Syntax (Python)
Python-Integritätstest
Bingo mit Python
Zundokokiyoshi mit Python
[Kleine Geschichte] Testen Sie die Bilderzeugung mit Python / OpenCV
ARC037 Baum testet höflich mit rekursiver Python-Funktion
Excel mit Python
Mikrocomputer mit Python
Mit Python besetzen
Automatisieren Sie UI-Tests mit Selenium API | Crawlen von Websites mit Python
Verwenden Sie FireFox (über Homebrew-cask) mit Selenium WebDriver Python-Bindungen
Installieren Sie Selenium auf Ihrem Mac und probieren Sie es mit Python aus