144 lines
		
	
	
		
			3.6 KiB
		
	
	
	
		
			PHP
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			144 lines
		
	
	
		
			3.6 KiB
		
	
	
	
		
			PHP
		
	
	
		
			Executable File
		
	
	
	
	
| <?php
 | |
| 
 | |
| namespace Facebook\WebDriver;
 | |
| 
 | |
| use Facebook\WebDriver\Interactions\Touch\WebDriverTouchScreen;
 | |
| 
 | |
| /**
 | |
|  * The interface for WebDriver.
 | |
|  */
 | |
| interface WebDriver extends WebDriverSearchContext
 | |
| {
 | |
|     /**
 | |
|      * Close the current window.
 | |
|      *
 | |
|      * @return WebDriver The current instance.
 | |
|      */
 | |
|     public function close();
 | |
| 
 | |
|     /**
 | |
|      * Load a new web page in the current browser window.
 | |
|      *
 | |
|      * @param string $url
 | |
|      * @return WebDriver The current instance.
 | |
|      */
 | |
|     public function get($url);
 | |
| 
 | |
|     /**
 | |
|      * Get a string representing the current URL that the browser is looking at.
 | |
|      *
 | |
|      * @return string The current URL.
 | |
|      */
 | |
|     public function getCurrentURL();
 | |
| 
 | |
|     /**
 | |
|      * Get the source of the last loaded page.
 | |
|      *
 | |
|      * @return string The current page source.
 | |
|      */
 | |
|     public function getPageSource();
 | |
| 
 | |
|     /**
 | |
|      * Get the title of the current page.
 | |
|      *
 | |
|      * @return string The title of the current page.
 | |
|      */
 | |
|     public function getTitle();
 | |
| 
 | |
|     /**
 | |
|      * Return an opaque handle to this window that uniquely identifies it within
 | |
|      * this driver instance.
 | |
|      *
 | |
|      * @return string The current window handle.
 | |
|      */
 | |
|     public function getWindowHandle();
 | |
| 
 | |
|     /**
 | |
|      * Get all window handles available to the current session.
 | |
|      *
 | |
|      * @return array An array of string containing all available window handles.
 | |
|      */
 | |
|     public function getWindowHandles();
 | |
| 
 | |
|     /**
 | |
|      * Quits this driver, closing every associated window.
 | |
|      */
 | |
|     public function quit();
 | |
| 
 | |
|     /**
 | |
|      * Take a screenshot of the current page.
 | |
|      *
 | |
|      * @param string $save_as The path of the screenshot to be saved.
 | |
|      * @return string The screenshot in PNG format.
 | |
|      */
 | |
|     public function takeScreenshot($save_as = null);
 | |
| 
 | |
|     /**
 | |
|      * Construct a new WebDriverWait by the current WebDriver instance.
 | |
|      * Sample usage:
 | |
|      *
 | |
|      *   $driver->wait(20, 1000)->until(
 | |
|      *     WebDriverExpectedCondition::titleIs('WebDriver Page')
 | |
|      *   );
 | |
|      *
 | |
|      * @param int $timeout_in_second
 | |
|      * @param int $interval_in_millisecond
 | |
|      * @return WebDriverWait
 | |
|      */
 | |
|     public function wait(
 | |
|         $timeout_in_second = 30,
 | |
|         $interval_in_millisecond = 250
 | |
|     );
 | |
| 
 | |
|     /**
 | |
|      * An abstraction for managing stuff you would do in a browser menu. For
 | |
|      * example, adding and deleting cookies.
 | |
|      *
 | |
|      * @return WebDriverOptions
 | |
|      */
 | |
|     public function manage();
 | |
| 
 | |
|     /**
 | |
|      * An abstraction allowing the driver to access the browser's history and to
 | |
|      * navigate to a given URL.
 | |
|      *
 | |
|      * @return WebDriverNavigationInterface
 | |
|      * @see WebDriverNavigation
 | |
|      */
 | |
|     public function navigate();
 | |
| 
 | |
|     /**
 | |
|      * Switch to a different window or frame.
 | |
|      *
 | |
|      * @return WebDriverTargetLocator
 | |
|      * @see WebDriverTargetLocator
 | |
|      */
 | |
|     public function switchTo();
 | |
| 
 | |
|     // TODO: Add in next major release (BC)
 | |
|     ///**
 | |
|     // * @return WebDriverTouchScreen
 | |
|     // */
 | |
|     //public function getTouch();
 | |
| 
 | |
|     /**
 | |
|      * @param string $name
 | |
|      * @param array $params
 | |
|      * @return mixed
 | |
|      */
 | |
|     public function execute($name, $params);
 | |
| 
 | |
|     // TODO: Add in next major release (BC)
 | |
|     ///**
 | |
|     // * Execute custom commands on remote end.
 | |
|     // * For example vendor-specific commands or other commands not implemented by php-webdriver.
 | |
|     // *
 | |
|     // * @see https://github.com/php-webdriver/php-webdriver/wiki/Custom-commands
 | |
|     // * @param string $endpointUrl
 | |
|     // * @param string $method
 | |
|     // * @param array $params
 | |
|     // * @return mixed|null
 | |
|     // */
 | |
|     //public function executeCustomCommand($endpointUrl, $method = 'GET', $params = []);
 | |
| }
 | 
