{"id":21495230,"url":"https://github.com/shimabox/screru","last_synced_at":"2026-04-14T00:31:30.616Z","repository":{"id":57049393,"uuid":"102535374","full_name":"shimabox/screru","owner":"shimabox","description":"Screru is a library that supplements php-webdriver. There is also a sample using it and php-webdriver.","archived":false,"fork":false,"pushed_at":"2020-06-06T09:40:31.000Z","size":158,"stargazers_count":1,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-17T12:11:42.818Z","etag":null,"topics":["php-webdriver","phpunit","screenshot","selenium"],"latest_commit_sha":null,"homepage":"","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/shimabox.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2017-09-05T22:24:32.000Z","updated_at":"2020-06-06T03:10:08.000Z","dependencies_parsed_at":"2022-08-23T17:50:08.808Z","dependency_job_id":null,"html_url":"https://github.com/shimabox/screru","commit_stats":null,"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"purl":"pkg:github/shimabox/screru","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shimabox%2Fscreru","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shimabox%2Fscreru/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shimabox%2Fscreru/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shimabox%2Fscreru/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/shimabox","download_url":"https://codeload.github.com/shimabox/screru/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shimabox%2Fscreru/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31776860,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-14T00:11:49.126Z","status":"ssl_error","status_checked_at":"2026-04-14T00:10:29.837Z","response_time":93,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["php-webdriver","phpunit","screenshot","selenium"],"created_at":"2024-11-23T16:07:02.830Z","updated_at":"2026-04-14T00:31:30.594Z","avatar_url":"https://github.com/shimabox.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Screru\nScreru is a library that supplements php-webdriver\n\n[![License](https://poser.pugx.org/shimabox/screru/license)](https://packagist.org/packages/shimabox/screru)\n[![Build Status](https://travis-ci.org/shimabox/screru.svg?branch=master)](https://travis-ci.org/shimabox/screru)\n[![Maintainability](https://api.codeclimate.com/v1/badges/127a74e984d2a8014fe8/maintainability)](https://codeclimate.com/github/shimabox/screru/maintainability)\n[![Coverage Status](https://coveralls.io/repos/github/shimabox/screru/badge.svg?branch=master)](https://coveralls.io/github/shimabox/screru?branch=master)\n[![Latest Stable Version](https://poser.pugx.org/shimabox/screru/v/stable)](https://packagist.org/packages/shimabox/screru)\n[![Latest Unstable Version](https://poser.pugx.org/shimabox/screru/v/unstable)](https://packagist.org/packages/shimabox/screru)\n\n## Description\n\nScreru is a library that supplements php-webdriver.\nIt provides the following functions.\n\n- Trait for PHPUnit is available\n- Full screenshot\n  - Capture can be done when the assertion fails\n- Screenshot of element\n- Can control the style of the element when scrolling the screen in screen capture.\n\nSupports Firefox (WebDriverBrowserType::FIREFOX), Chrome (WebDriverBrowserType::CHROME) and IE (WebDriverBrowserType::IE).\n\n## Demo\n\n![demo](https://github.com/shimabox/assets/raw/master/screru/demo.gif)\n\n## Requirements\n\n- PHP 5.6+ or newer\n- [Composer](https://getcomposer.org)\n- Java(JDK) \u003e=1.8\n  - http://www.oracle.com/technetwork/java/javase/downloads/index.html\n\n## Installation\n\n### Via composer.\n\n```\n$ composer require shimabox/screru\n$ cd vendor/shimabox/screru\n$ cp .env.default .env\n```\n\n### Develop.\n\n```\n$ git clone https://github.com/shimabox/screru.git\n$ cd screru\n$ composer install\n```\n\n- Copy the `.env.default` file and create an `.env` file.\n\n## Setting (.env | .env.default)\n\nIf you need to change the default settings, copy the `.env.default` file, create an `.env` file, and modify the `.env` file.  \nThe default setting looks at `.env.default` file.\n\n```\n$ vim .env\n\n// selenium server url\nSELENIUM_SERVER_URL='http://localhost:4444/wd/hub'\n// you can override the default User-agent\nOVERRIDE_DEFAULT_USER_AGENT=''\n// local port\nLOCAL_PORT=8000\n// true to enable\nENABLED_CHROME_DRIVER=true\nENABLED_FIREFOX_DRIVER=true\nENABLED_IE_DRIVER=\n// true to start headless chrome\nENABLED_CHROME_HEADLESS=true\n// true to start headless firefox\nENABLED_FIREFOX_HEADLESS=true\n// true to platform is windows\nIS_PLATFORM_WINDOWS=\n// describe the webdriver path if necessary\nCHROME_DRIVER_PATH=''\nFIREFOX_DRIVER_PATH=''\nIE_DRIVER_PATH=''\n```\n\n|Key|Description|Default|Example|\n|:---|:---|:---|:---|\n|SELENIUM_SERVER_URL|selenium server url.|http://localhost:4444/wd/hub||\n|OVERRIDE_DEFAULT_USER_AGENT|you can override the default User-agent.|Mozilla/5.0 (iPhone; CPU iPhone OS 12_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/12.0 Mobile/15E148 Safari/604.1||\n|LOCAL_PORT|local port\u003cbr\u003eIt is for unittest.|8000||\n|ENABLED_CHROME_DRIVER|If true it will enable ChromeDriver.|true||\n|ENABLED_FIREFOX_DRIVER|If true it will enable geckodriver.|true||\n|ENABLED_IE_DRIVER|If true it will enable IEDriverServer.|blank(false)||\n|ENABLED_CHROME_HEADLESS|true to start headless chrome.|true||\n|ENABLED_FIREFOX_HEADLESS|true to start headless firefox.|true||\n|IS_PLATFORM_WINDOWS|true to platform is windows.\u003cbr\u003eFor windows, be sure to set to true.|blank(false)||\n|CHROME_DRIVER_PATH|Describe the webdriver path if necessary.|blank|/home/user/screru/chromedriver|\n|FIREFOX_DRIVER_PATH|Describe the webdriver path if necessary.|blank|/Applications/MAMP/htdocs/screru/geckodriver|\n|IE_DRIVER_PATH|Describe the webdriver path if necessary.|blank|/c/xampp/htdocs/screru/IEDriverServer.exe|\n\n## Preparation\n\nDownload selenium-server-standalone, ChromeDriver, geckodriver, IEDriverServer etc.\n\n|Platform|selenium-server-standalone|ChromeDriver|geckodriver|IEDriverServer|\n|:---|:---|:---|:---|:---|\n|Mac|[3.8.1](https://selenium-release.storage.googleapis.com/3.8/selenium-server-standalone-3.8.1.jar)|[81.0.4044.69](https://chromedriver.storage.googleapis.com/81.0.4044.69/chromedriver_mac64.zip)|[0.26.0](https://github.com/mozilla/geckodriver/releases/download/v0.26.0/geckodriver-v0.26.0-macos.tar.gz)|-|\n|Windows(64bit)|[3.8.1](https://selenium-release.storage.googleapis.com/3.8/selenium-server-standalone-3.8.1.jar)|[75.0.3770.90](https://chromedriver.storage.googleapis.com/75.0.3770.90/chromedriver_win32.zip)|[0.24.0](https://github.com/mozilla/geckodriver/releases/download/v0.24.0/geckodriver-v0.24.0-win64.zip)|[3.141.59](https://selenium-release.storage.googleapis.com/3.141/IEDriverServer_Win32_3.141.59.zip)|\n|Linux(CentOS 6.9)|[3.8.1](https://selenium-release.storage.googleapis.com/3.8/selenium-server-standalone-3.8.1.jar)|-|[0.24.0](https://github.com/mozilla/geckodriver/releases/download/v0.24.0/geckodriver-v0.24.0-linux64.tar.gz)|-|\n|Linux(Ubuntu trusty)|[3.8.1](https://selenium-release.storage.googleapis.com/3.8/selenium-server-standalone-3.8.1.jar)|[75.0.3770.90](https://chromedriver.storage.googleapis.com/75.0.3770.90/chromedriver_linux64.zip)|[0.24.0](https://github.com/mozilla/geckodriver/releases/download/v0.24.0/geckodriver-v0.24.0-linux64.tar.gz)|-|\n\n### Use downloader.\n\n- e.g) For Mac.\n```\n$ php selenium_downloader.php -p m -d . -s 3.8.1 -c 81.0.4044.69 -g 0.26.0\n```\n- e.g) For Windows.\n```\n$ php selenium_downloader.php -p w -d . -s 3.8.1 -c 75.0.3770.90 -g 0.24.0 -i 3.141.59\n```\n- e.g) For Linux.\n```\n$ php selenium_downloader.php -p l -d . -s 3.8.1 -g 0.24.0\n```\n\n@see [selenium-downloader/README.md at master · shimabox/selenium-downloader · GitHub](https://github.com/shimabox/selenium-downloader/blob/master/README.md \"selenium-downloader/README.md at master · shimabox/selenium-downloader · GitHub\")\n\n## ## macOS\n\n- Add the path to ChromeDriver and geckodriver to your Path environment variable.\n  - e.g) ChromeDriver\n  ```\n  $ mv chromedriver /usr/local/bin/\n  $ chmod +x /usr/local/bin/chromedriver\n  ```\n  - e.g) geckodriver\n  ```\n  $ mv geckodriver /usr/local/bin/\n  $ chmod +x /usr/local/bin/geckodriver\n  ```\n- Or, write the driver's path in the `.env` file  \nPlease give execute permission (`chmod +x`)\n\ne.g)\n\n```\nCHROME_DRIVER_PATH=/Applications/MAMP/htdocs/screru/chromedriver\nFIREFOX_DRIVER_PATH=/Applications/MAMP/htdocs/screru/geckodriver\n```\n\n### Run selenium-server-standalone.\n\n```\n$ java -jar selenium-server-standalone-3.8.1.jar -enablePassThrough false\n```\n\n## ## windows(64bit)\n\n### .env\n\n- Edit ```.env```\n```\nENABLED_FIREFOX_DRIVER=true\nENABLED_CHROME_DRIVER=true\nENABLED_IE_DRIVER=true\n// true to platform is windows\nIS_PLATFORM_WINDOWS=true\n// describe the webdriver path if necessary\nFIREFOX_DRIVER_PATH='your geckodriver.exe path'\nCHROME_DRIVER_PATH='your chromedriver.exe path'\nIE_DRIVER_PATH='your IEDriverServer.exe path'\n```\n\nThe value of `IS_PLATFORM_WINDOWS` must be set to `true`.\n\n### Run selenium-server-standalone.\n\n```\n$ java -jar selenium-server-standalone-3.8.1.jar -enablePassThrough false\n```\n\n#### Note.\n\n```\nFacebook\\WebDriver\\Exception\\SessionNotCreatedException: Unexpected error launching Internet Explorer.\nProtected Mode settings are not the same for all zones.\nEnable Protected Mode must be set to the same value (enabled or disabled) for all zones.\n```\n\nWhen this error is displayed, please refer to the following link.\n\n- [Rantings of a Selenium Contributor: You're Doing It Wrong: IE Protected Mode and WebDriver](http://jimevansmusic.blogspot.com/2012/08/youre-doing-it-wrong-protected-mode-and.html \"Rantings of a Selenium Contributor: You're Doing It Wrong: IE Protected Mode and WebDriver\")\n- [internet settings.png (2718×1068)](https://storage.googleapis.com/google-code-attachments/selenium/issue-1795/comment-66/internet%20settings.png \"internet settings.png (2718×1068)\")\n\nIt is solved by setting the security mode of IE Internet option to ON in all zones.\n\n## ## Linux (CentOS 6.9)\n\n### java\n\n- install\n```\n$ sudo yum -y install java\n```\n- version 1.8\u003e=\n```\n$ java -version\nopenjdk version \"1.8.0_131\"\nOpenJDK Runtime Environment (build 1.8.0_131-b11)\nOpenJDK 64-Bit Server VM (build 25.131-b11, mixed mode)\n```\n\n### Firefox\n\n- install\n```\n$ sudo yum -y install firefox\n```\nor\n```\n$ sudo yum -y update firefox\n```\n- version 60.3.0\n```\n$ firefox -v\nMozilla Firefox 60.3.0\n```\n\n### Xvfb\n\n- install\n```\n$ sudo yum -y install xorg-x11-server-Xvfb\n$ sudo yum -y groupinstall \"Japanese Support\"\n```\n\n### Path\n\n- Add the path to geckodriver to your Path environment variable.\n```\n$ mv geckodriver /usr/local/bin/\n$ chmod +x /usr/local/bin/geckodriver\n```\n- Or, write the driver's path in the `.env` file  \nPlease give execute permission (`chmod +x`)\n\ne.g)\n\n```\nFIREFOX_DRIVER_PATH=/home/user/screru/geckodriver\n```\n\n### .env\n\n- Edit ```.env```\n```\nENABLED_FIREFOX_DRIVER=true\nENABLED_CHROME_DRIVER=\nENABLED_IE_DRIVER=\n```\n\n### Run selenium-server-standalone.\n\n1. Run Xvfb \u0026 selenium-server-standalone\n```\n$ sudo sh start_selenium.sh\n```\n2. Stop Xvfb \u0026 selenium-server-standalone \u0026 geckodriver\n```\n$ sudo sh kill_selenium.sh\n```\n\n## ## Linux (Ubuntu trusty)\n\nPlease refer to this setting.  \n- [shimabox/screru - Travis CI](https://travis-ci.org/shimabox/screru \"shimabox/screru - Travis CI\")\n\n## Usage\n\n- Basic Usage.\n\n```php\n\u003c?php\nrequire_once '/vendor/autoload.php';\n\nuse SMB\\Screru\\Elements\\Spec;\nuse SMB\\Screru\\Elements\\SpecPool;\nuse SMB\\Screru\\Factory\\DesiredCapabilities;\nuse SMB\\Screru\\Screenshot\\Screenshot;\nuse SMB\\Screru\\View\\Observer;\nuse SMB\\UrlStatus;\n\nuse Facebook\\WebDriver\\WebDriverBy;\nuse Facebook\\WebDriver\\WebDriverDimension;\nuse Facebook\\WebDriver\\WebDriverExpectedCondition;\nuse Facebook\\WebDriver\\Remote\\RemoteWebDriver;\nuse Facebook\\WebDriver\\Remote\\WebDriverBrowserType;\n\nif (getenv('ENABLED_CHROME_DRIVER') !== 'true') {\n    die('Please enable ChromeDriver.');\n}\n\n$host = getenv('SELENIUM_SERVER_URL');\n// Use chromedriver.\n$cap = new DesiredCapabilities(WebDriverBrowserType::CHROME);\n$driver = RemoteWebDriver::create($host, $cap-\u003eget());\n\n// Window size.\n$w = 600;\n$h = 800;\n$dimension = new WebDriverDimension($w, $h);\n$driver-\u003emanage()-\u003ewindow()-\u003esetSize($dimension);\n\n$url = 'https://www.google.com/webhp?gl=us\u0026hl=en\u0026gws_rd=cr';\n\n// Transit to designated URL (Google).\n$driver-\u003eget($url);\n\n// Search for elements.\n$findElement = $driver-\u003efindElement(WebDriverBy::name('q'));\n// Enter keywords in search box.\n$findElement-\u003esendKeys('Hello');\n// Search execution.\n$findElement-\u003esubmit();\n\n// Wait 10 seconds for the contents to be visualized(Targeting '#botstuff').\n// If the specified element does not appear and it takes more than 10 seconds,\n// 'Facebook\\WebDriver\\Exception\\TimeOutException' is thrown.\n$driver-\u003ewait(10)-\u003euntil(\n    WebDriverExpectedCondition::visibilityOfElementLocated(WebDriverBy::id('botstuff'))\n);\n\n// Confirm that the title \"Hello - Google search\" can be obtained\nif ($driver-\u003egetTitle() !== 'Hello - Google Search') {\n    throw new Exception('fail $driver-\u003egetTitle()');\n}\n\n// HttpStatus of url\n$status = UrlStatus::get($driver-\u003egetCurrentURL());\nif ($status-\u003eis200() === false) {\n    throw new Exception('fail HttpStatus');\n}\n\n/*\n |------------------------------------------------------------------------------\n | Capture test.\n |------------------------------------------------------------------------------\n */\n\n$fileName = 'capture_demo';\n$ds = DIRECTORY_SEPARATOR;\n$captureDirectoryPath = realpath(__DIR__ . $ds . 'capture') . $ds;\n\n// Create a Screenshot.\n$screenshot = new Screenshot();\n\n/*\n |------------------------------------------------------------------------------\n | Create an Observer if you want to control the style of the element when scrolling the screen.\n |------------------------------------------------------------------------------\n */\n// Create a Observer.\n$observer = new Observer();\n\n// Erase the following header (sticky header) when vertical scrolling is performed for the first time.\n$observer-\u003eprocessForFirstVerticalScroll(function($driver) {\n    $driver-\u003eexecuteScript(\"document.querySelector('#searchform') ? document.querySelector('#searchform').style.display = 'none' : null;\");\n});\n// Undo when rendering is complete.\n$observer-\u003eprocessForRenderComplete(function($driver) {\n    $driver-\u003eexecuteScript(\"document.querySelector('#searchform') ? document.querySelector('#searchform').style.display = 'inherit' : null;\");\n});\n\n// Set Observer to Screenshot.\n$screenshot-\u003esetObserver($observer);\n\n// Full screen capture (extension will be .png).\n$screenshot-\u003etakeFull($driver, $captureDirectoryPath, $fileName . '_full.png');\n\n// Define element selector.\n$spec = new Spec('.RNNXgb', Spec::EQUAL, 1);\n$spec2 = new Spec('.brs_col', Spec::GREATER_THAN, 1);\n\n// Push into SpecPool.\n$specPool = (new SpecPool())\n            -\u003eaddSpec($spec)\n            -\u003eaddSpec($spec2);\n\n// Element capture (extension is .png).\n$screenshot-\u003etakeElement($driver, $captureDirectoryPath, $fileName, $specPool);\n\n// Close window.\n$driver-\u003eclose();\n```\n\n- Control the style of the element when scrolling the screen.\n  - @see [screru/Observable.php at master · shimabox/screru](https://github.com/shimabox/screru/blob/master/src/View/Observable.php \"screru/Observable.php at master · shimabox/screru\")\n  - @see [screru/Observer.php at master · shimabox/screru](https://github.com/shimabox/screru/blob/master/src/View/Observer.php \"screru/Observer.php at master · shimabox/screru\")\n  - @see [example/controll_display_state_of_elements.php](https://github.com/shimabox/screru/blob/master/example/controll_display_state_of_elements.php)\n\n\n- When you want to change the default selenium server url.\n\n```\n$ vim .env\n\n// selenium server url\nSELENIUM_SERVER_URL='your selenium server url'\n```\n\n- When you want to change the default UserAgent.\n\n```\n$ vim .env\n\n// you can override the default User-agent (Android 7.1.1)\nOVERRIDE_DEFAULT_USER_AGENT='Mozilla/5.0 (Linux; Android 7.1.1; Nexus 5X Build/N4F26I) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.91 Mobile Safari/537.36'\n```\n\n- When using with PHPUnit.\n  - ```use \\SMB\\Screru\\Traits\\Testable```\n  ```php\n  class Sample extends \\PHPUnit_Framework_TestCase\n  {\n      // use Trait\n      use \\SMB\\Screru\\Traits\\Testable {\n          setUp as protected traitSetUp;\n          tearDown as protected traitTearDown;\n      }\n\n      /**\n       * setUp\n       */\n      protected function setUp()\n      {\n          $this-\u003etraitSetUp();\n      }\n\n      /**\n       * tearDown\n       */\n      protected function tearDown()\n      {\n          $this-\u003etraitTearDown();\n      }\n\n      // do someting ...\n  }\n  ```\n\n  - If you want to capture when an assertion fails.\n    - ```takeCaptureWhenAssertionFails = true;```\n    ```php\n    class Sample extends \\PHPUnit_Framework_TestCase\n    {\n        // use Trait\n        use \\SMB\\Screru\\Traits\\Testable {\n            setUp as protected traitSetUp;\n            tearDown as protected traitTearDown;\n        }\n\n        // Set this property to true\n        protected $takeCaptureWhenAssertionFails = true;\n\n        /**\n         * setUp\n         */\n        protected function setUp()\n        {\n            $this-\u003etraitSetUp();\n        }\n\n        /**\n         * tearDown\n         */\n        protected function tearDown()\n        {\n            $this-\u003etraitTearDown();\n        }\n\n        // do someting ...\n    }\n    ```\n    - or call the function below.\n    ```php\n    $this-\u003eenableCaptureWhenAssertionFails();\n\n    // To disable, call the following function\n    $this-\u003edisableCaptureWhenAssertionFails();\n    ```\n\n## Headless Chrome\n\nFor the latest chrome, you can use headless mode.\n\n- Edit ```.env```\n```\n// true to start headless chrome\nENABLED_CHROME_HEADLESS=true\n```\n\n## Headless Firefox\n\nFor the latest firefox, you can use headless mode.\n\n- Edit ```.env```\n```\n// true to start headless firefox\nENABLED_FIREFOX_HEADLESS=true\n```\n\n## Example\n\n- `$ php example/assertion_of_title.php`\n  - [example/assertion_of_title.php](https://github.com/shimabox/screru/blob/master/example/assertion_of_title.php)\n    - Execute a title assertion.\n- `$ php example/example.php`\n  - [example/example.php](https://github.com/shimabox/screru/blob/master/example/example.php)\n    1. Transit to designated URL (Google).\n    2. Perform fullscreen capture.\n    3. Perform screen element capture.\n- `$ php example/headless_chrome.php`\n  - [example/headless_chrome.php](https://github.com/shimabox/screru/blob/master/example/headless_chrome.php)\n    1. Transit to designated URL (Google).\n    2. Perform fullscreen capture.\n- `$ php example/headless_firefox.php`\n  - [example/headless_firefox.php](https://github.com/shimabox/screru/blob/master/example/headless_firefox.php)\n    1. Transit to designated URL (Google).\n    2. Perform fullscreen capture.\n- `$ php example/screenshot.php`\n  - [example/screenshot.php](https://github.com/shimabox/screru/blob/master/example/screenshot.php)\n    1. Transit to designated URL (Google).\n    2. Perform fullscreen capture.\n    3. Perform screen capture.\n- `$ php example/element_screenshot.php`\n  - [example/element_screenshot.php](https://github.com/shimabox/screru/blob/master/example/element_screenshot.php)\n    1. Transit to designated URL (Google).\n    2. Perform screen element capture.\n- `$ php example/controll_display_state_of_elements.php`\n  - [example/controll_display_state_of_elements.php](https://github.com/shimabox/screru/blob/master/example/controll_display_state_of_elements.php)\n    1. Transit to designated URL (Google).\n    2. Perform fullscreen capture.\n      - Control the style of the element when scrolling the screen.\n    3. Perform screen element capture.\n\n## Testing\n\n### Start PHP's built-in Web Server.\n\n```\n$ php -S 127.0.0.1:8000 -t tests/web\n```\n\nMatch port with `.env` - `LOCAL_PORT`.\n\n### Run test.\n\n```\n$ vendor/bin/phpunit\n```\n\n## License\n\nThe MIT License (MIT). Please see [License File](LICENSE) for more information.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fshimabox%2Fscreru","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fshimabox%2Fscreru","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fshimabox%2Fscreru/lists"}