Ejemplo n.º 1
0
 static function start($browser)
 {
     $seleniumHost = "http://" . Config::get("SELENIUM_HOST") . ":" . Config::get("SELENIUM_PORT") . "/wd/hub";
     switch ($browser) {
         case "chrome":
             putenv("webdriver.chrome.driver=" . Config::get("CHROME_WEBDRIVER_PATH"));
             $capabilities = \DesiredCapabilities::chrome();
             $options = new \ChromeOptions();
             $options->addArguments(array("--start-maximized"));
             $options->addArguments(array("applicationCacheEnabled=1"));
             $capabilities->setCapability(\ChromeOptions::CAPABILITY, $options);
             break;
         case "ie":
             $capabilities = array(\WebDriverCapabilityType::BROWSER_NAME => "Internet Explorer");
             break;
         case "firefox_with_firebug":
             $profile = new \FirefoxProfile();
             $profile->setPreference('extensions.firebug.currentVersion', Config::get("FIREBUG_VERSION"));
             $profile->setPreference("extensions.firebug.allPagesActivation", "on");
             $profile->setPreference("extensions.firebug.defaultPanelName", "net");
             $profile->setPreference("extensions.firebug.net.enableSites", true);
             // Set default NetExport preferences
             $profile->setPreference("extensions.firebug.netexport.alwaysEnableAutoExport", true);
             $profile->setPreference("extensions.firebug.netexport.defaultLogDir", Config::get("LOG_PATH"));
             $profile->setPreference("extensions.firebug.netexport.showPreview", false);
             $profile->setPreference("extensions.firebug.netexport.autoExportToFile", true);
             $profile->setPreference("extensions.firebug.netexport.autoExportToServer", false);
             $profile->setPreference("extensions.firebug.netexport.includeResponseBodies", true);
             //$profile->setPreference("extensions.firebug.netexport.pageLoadedTimeout", 5000);
             $profile->addExtension(Config::get("FIREBUG_XPI_PATH"))->addExtension(Config::get("NET_EXPORT_XPI_PATH"));
             $capabilities = \DesiredCapabilities::firefox();
             $capabilities->setCapability(\FirefoxDriver::PROFILE, $profile);
             break;
         case "chrome_default_profile":
             putenv("webdriver.chrome.driver=" . Config::get("CHROME_WEBDRIVER_PATH"));
             $capabilities = \DesiredCapabilities::chrome();
             $options = new \ChromeOptions();
             $options->addArguments(array("start-maximized"));
             $options->addArguments(array("applicationCacheEnabled=1"));
             $options->addArguments(array("user-data-dir=" . Config::get("BROWSER_DATA_DIR")));
             $capabilities->setCapability(\ChromeOptions::CAPABILITY, $options);
             break;
         case "firefox_default_profile":
             // TODO: not working correctly. Need fix
             putenv("webdriver.firefox.profile=default");
             $profile = new \FirefoxProfile();
             $profile->setPreference("webdriver.firefox.profile", "default");
             //$profile->setPreference("webdriver.load.strategy", "unstable");
             $capabilities = \DesiredCapabilities::firefox();
             $capabilities->setCapability(\FirefoxDriver::PROFILE, $profile);
             break;
         default:
             // firefox by default
             $capabilities = array(\WebDriverCapabilityType::BROWSER_NAME => "firefox");
     }
     self::$driver = \RemoteWebDriver::create($seleniumHost, $capabilities, 90000, 90000);
 }
Ejemplo n.º 2
0
 public function setUp($browser = null)
 {
     // put logger off
     // assign default browser if it is not specified
     if ($browser === null) {
         $browser = Config::get("SELENIUM_WEBDRIVER");
     }
     // start webdriver
     WebDriver::start($browser);
     // assign 'this' to Assert class
     Assert::assignCallerObject($this);
     if (Config::get("MAKE_BROWSER_MAXIMIZE")) {
         //WebDriver::instance()->manage()->window()->maximize() ;		// not working with headless browser on Linux build server
         WebDriver::instance()->manage()->window()->setSize(new \WebDriverDimension(1920, 1080));
     }
 }