Scobee
Scobee

Reputation: 448

Selenium webdriver crashing during setFrameWidth

I am doing some screenshots using behat and selenium, and for some reason while the setFrameWidth action selenium is crashing. As you'll see in the actions, before resizing, I have an action that clicks on some elements (accordions) which will expand. If I remove the click part, then the resize works .. but with the click, the resize stops working. Any good advice about this ?

12:51:48.986 INFO [105] org.openqa.selenium.remote.server.DriverServlet - Done: [execute script: document.querySelectorAll('.open-accordion').forEach((element) => { element.click(); });, []]
12:51:58.970 INFO [105] org.openqa.selenium.remote.server.DriverServlet - Executing: [execute script: :setFrameWidth, [1400, 15000]])
12:52:00.106 INFO [105] org.openqa.selenium.remote.server.DriverServlet - Done: [execute script: :setFrameWidth, [1400, 15000]]
12:52:00.127 INFO [105] org.openqa.selenium.remote.server.DriverServlet - Executing: [execute script: :captureScreenshotAndLayoutTree, []])
12:52:00.632 WARN [105] org.openqa.selenium.remote.server.DriverServlet - Exception thrown
org.openqa.selenium.WebDriverException: unknown error: session deleted because of page crash
from unknown error: cannot determine loading status
from tab crashed
  (Session info: headless chrome=64.0.3282.99)
  (Driver info: chromedriver=2.33 (539fe9435669ece1ba23ecb914bf9aea7588765d),platform=Linux 5.4.39-linuxkit x86_64) (WARNING: The server did not provide any stacktrace information)
Command duration or timeout: 490 milliseconds
Build info: version: '2.48.2', revision: '41bccdd', time: '2015-10-09 19:59:12'
System info: host: 'eda59aa717ad', ip: '172.19.0.2', os.name: 'Linux', os.arch: 'amd64', os.version: '5.4.39-linuxkit', java.version: '11.0.9'
Driver info: org.openqa.selenium.chrome.ChromeDriver
Capabilities [{applicationCacheEnabled=false, rotatable=false, mobileEmulationEnabled=false, networkConnectionEnabled=false, chrome={chromedriverVersion=2.33 (539fe9435669ece1ba23ecb914bf9aea7588765d), userDataDir=/tmp/.org.chromium.Chromium.Ivkx1e}, takesHeapSnapshot=true, pageLoadStrategy=normal, databaseEnabled=false, handlesAlerts=true, hasTouchScreen=false, version=64.0.3282.99, platform=LINUX, browserConnectionEnabled=false, nativeEvents=true, acceptSslCerts=true, locationContextEnabled=true, webStorageEnabled=true, browserName=chrome, takesScreenshot=true, javascriptEnabled=true, cssSelectorsEnabled=true, setWindowRect=true, unexpectedAlertBehaviour=}]
Session ID: 252a2f3745241f1f1bc958ad53a0b7ea
    at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
    at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490)
    at org.openqa.selenium.remote.ErrorHandler.createThrowable(ErrorHandler.java:206)
    at org.openqa.selenium.remote.ErrorHandler.throwIfResponseFailed(ErrorHandler.java:158)
    at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:647)
    at org.openqa.selenium.remote.RemoteWebDriver.executeScript(RemoteWebDriver.java:556)
    at jdk.internal.reflect.GeneratedMethodAccessor16.invoke(Unknown Source)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base/java.lang.reflect.Method.invoke(Method.java:566)
    at org.openqa.selenium.support.events.EventFiringWebDriver$2.invoke(EventFiringWebDriver.java:102)
    at com.sun.proxy.$Proxy3.executeScript(Unknown Source)
    at org.openqa.selenium.support.events.EventFiringWebDriver.executeScript(EventFiringWebDriver.java:216)
    at org.openqa.selenium.remote.server.handler.ExecuteScript.call(ExecuteScript.java:56)
    at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
    at org.openqa.selenium.remote.server.DefaultSession$1.run(DefaultSession.java:176)
    at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
    at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
    at java.base/java.lang.Thread.run(Thread.java:834)
12:52:00.655 WARN [105] org.openqa.selenium.remote.server.DriverServlet - Exception: unknown error: session deleted because of page crash
from unknown error: cannot determine loading status
from tab crashed
  (Session info: headless chrome=64.0.3282.99)
  (Driver info: chromedriver=2.33 (539fe9435669ece1ba23ecb914bf9aea7588765d),platform=Linux 5.4.39-linuxkit x86_64) (WARNING: The server did not provide any stacktrace information)
Command duration or timeout: 490 milliseconds
Build info: version: '2.48.2', revision: '41bccdd', time: '2015-10-09 19:59:12'
System info: host: 'eda59aa717ad', ip: '172.19.0.2', os.name: 'Linux', os.arch: 'amd64', os.version: '5.4.39-linuxkit', java.version: '11.0.9'
Driver info: org.openqa.selenium.chrome.ChromeDriver
Capabilities [{applicationCacheEnabled=false, rotatable=false, mobileEmulationEnabled=false, networkConnectionEnabled=false, chrome={chromedriverVersion=2.33 (539fe9435669ece1ba23ecb914bf9aea7588765d), userDataDir=/tmp/.org.chromium.Chromium.Ivkx1e}, takesHeapSnapshot=true, pageLoadStrategy=normal, databaseEnabled=false, handlesAlerts=true, hasTouchScreen=false, version=64.0.3282.99, platform=LINUX, browserConnectionEnabled=false, nativeEvents=true, acceptSslCerts=true, locationContextEnabled=true, webStorageEnabled=true, browserName=chrome, takesScreenshot=true, javascriptEnabled=true, cssSelectorsEnabled=true, setWindowRect=true, unexpectedAlertBehaviour=}]
Session ID: 252a2f3745241f1f1bc958ad53a0b7ea

==> lumen.log <==
[2020-12-04 12:52:00] local.ERROR: Failed to screenshot with error (Exception WebDriver\Exception\UnknownError) message unknown error: session deleted because of page crash
from unknown error: cannot determine loading status
from tab crashed
  (Session info: headless chrome=64.0.3282.99)
  (Driver info: chromedriver=2.33 (539fe9435669ece1ba23ecb914bf9aea7588765d),platform=Linux 5.4.39-linuxkit x86_64) (WARNING: The server did not provide any stacktrace information)
Command duration or timeout: 490 milliseconds
Build info: version: '2.48.2', revision: '41bccdd', time: '2015-10-09 19:59:12'
System info: host: 'eda59aa717ad', ip: '172.19.0.2', os.name: 'Linux', os.arch: 'amd64', os.version: '5.4.39-linuxkit', java.version: '11.0.9'
Driver info: org.openqa.selenium.chrome.ChromeDriver
Capabilities [{applicationCacheEnabled=false, rotatable=false, mobileEmulationEnabled=false, networkConnectionEnabled=false, chrome={chromedriverVersion=2.33 (539fe9435669ece1ba23ecb914bf9aea7588765d), userDataDir=/tmp/.org.chromium.Chromium.Ivkx1e}, takesHeapSnapshot=true, pageLoadStrategy=normal, databaseEnabled=false, handlesAlerts=true, hasTouchScreen=false, version=64.0.3282.99, platform=LINUX, browserConnectionEnabled=false, nativeEvents=true, acceptSslCerts=true, locationContextEnabled=true, webStorageEnabled=true, browserName=chrome, takesScreenshot=true, javascriptEnabled=true, cssSelectorsEnabled=true, setWindowRect=true, unexpectedAlertBehaviour=}]
Session ID: 252a2f3745241f1f1bc958ad53a0b7ea in file /var/www/behat_screenshot_manager/vendor/instaclick/php-webdriver/lib/WebDriver/Exception.php on line 155 with trace #0 /var/www/behat_screenshot_manager/vendor/instaclick/php-webdriver/lib/WebDriver/AbstractWebDriver.php(157): WebDriver\Exception::factory(13, 'unknown error: ...')
#1 /var/www/behat_screenshot_manager/vendor/instaclick/php-webdriver/lib/WebDriver/AbstractWebDriver.php(218): WebDriver\AbstractWebDriver->curl('POST', '/execute', Array)
#2 /var/www/behat_screenshot_manager/vendor/instaclick/php-webdriver/lib/WebDriver/Container.php(234): WebDriver\AbstractWebDriver->__call('execute', Array)
#3 /var/www/behat_screenshot_manager/app/Traits/FeatureContext/WebDriverTrait.php(40): WebDriver\Container->__call('execute', Array)
#4 /var/www/behat_screenshot_manager/app/Traits/FeatureContext/ScreenshotTrait.php(144): Features\FeatureContext->captureScreenshotAndLayout()
#5 /var/www/behat_screenshot_manager/app/Traits/FeatureContext/ScreenshotTrait.php(129): Features\FeatureContext->takeScreenshotAndRenderTree(1400)
#6 /var/www/behat_screenshot_manager/app/Traits/FeatureContext/ScreenshotTrait.php(55): Features\FeatureContext->takeAScreenShotAtAllBreakpoints()
#7 /var/www/behat_screenshot_manager/tests/acceptance/features/bootstrap/FeatureContext.php(133): Features\FeatureContext->takeScreenshot('1ccd39d6-f2df-4...')
#8 [internal function]: Features\FeatureContext->iTakeScreenshotsFor('1ccd39d6-f2df-4...')
#9 /var/www/behat_screenshot_manager/vendor/behat/behat/src/Behat/Testwork/Call/Handler/RuntimeCallHandler.php(109): call_user_func_array(Array, Array)
#10 /var/www/behat_screenshot_manager/vendor/behat/behat/src/Behat/Testwork/Call/Handler/RuntimeCallHandler.php(64): Behat\Testwork\Call\Handler\RuntimeCallHandler->executeCall(Object(Behat\Behat\Definition\Call\DefinitionCall))
#11 /var/www/behat_screenshot_manager/vendor/behat/behat/src/Behat/Testwork/Call/CallCenter.php(140): Behat\Testwork\Call\Handler\RuntimeCallHandler->handleCall(Object(Behat\Behat\Definition\Call\DefinitionCall))
#12 /var/www/behat_screenshot_manager/vendor/behat/behat/src/Behat/Testwork/Call/CallCenter.php(96): Behat\Testwork\Call\CallCenter->handleCall(Object(Behat\Behat\Definition\Call\DefinitionCall))
#13 /var/www/behat_screenshot_manager/vendor/behat/behat/src/Behat/Behat/Tester/Runtime/RuntimeStepTester.php(125): Behat\Testwork\Call\CallCenter->makeCall(Object(Behat\Behat\Definition\Call\DefinitionCall))
#14 /var/www/behat_screenshot_manager/vendor/behat/behat/src/Behat/Behat/Tester/Runtime/RuntimeStepTester.php(73): Behat\Behat\Tester\Runtime\RuntimeStepTester->testDefinition(Object(Behat\Behat\Context\Environment\InitializedContextEnvironment), Object(Behat\Gherkin\Node\FeatureNode), Object(Behat\Gherkin\Node\StepNode), Object(Behat\Behat\Definition\SearchResult), false)
#15 /var/www/behat_screenshot_manager/vendor/behat/behat/src/Behat/Behat/Hook/Tester/HookableStepTester.php(74): Behat\Behat\Tester\Runtime\RuntimeStepTester->test(Object(Behat\Behat\Context\Environment\InitializedContextEnvironment), Object(Behat\Gherkin\Node\FeatureNode), Object(Behat\Gherkin\Node\StepNode), false)
#16 /var/www/behat_screenshot_manager/vendor/behat/behat/src/Behat/Behat/EventDispatcher/Tester/TickingStepTester.php(59): Behat\Behat\Hook\Tester\HookableStepTester->test(Object(Behat\Behat\Context\Environment\InitializedContextEnvironment), Object(Behat\Gherkin\Node\FeatureNode), Object(Behat\Gherkin\Node\StepNode), false)
#17 /var/www/behat_screenshot_manager/vendor/behat/behat/src/Behat/Behat/EventDispatcher/Tester/EventDispatchingStepTester.php(73): Behat\Behat\EventDispatcher\Tester\TickingStepTester->test(Object(Behat\Behat\Context\Environment\InitializedContextEnvironment), Object(Behat\Gherkin\Node\FeatureNode), Object(Behat\Gherkin\Node\StepNode), false)
#18 /var/www/behat_screenshot_manager/vendor/behat/behat/src/Behat/Behat/Tester/StepContainerTester.php(59): Behat\Behat\EventDispatcher\Tester\EventDispatchingStepTester->test(Object(Behat\Behat\Context\Environment\InitializedContextEnvironment), Object(Behat\Gherkin\Node\FeatureNode), Object(Behat\Gherkin\Node\StepNode), false)
#19 /var/www/behat_screenshot_manager/vendor/behat/behat/src/Behat/Behat/Tester/Runtime/RuntimeScenarioTester.php(76): Behat\Behat\Tester\StepContainerTester->test(Object(Behat\Behat\Context\Environment\InitializedContextEnvironment), Object(Behat\Gherkin\Node\FeatureNode), Object(Behat\Gherkin\Node\ScenarioNode), false)
#20 /var/www/behat_screenshot_manager/vendor/behat/behat/src/Behat/Behat/Hook/Tester/HookableScenarioTester.php(74): Behat\Behat\Tester\Runtime\RuntimeScenarioTester->test(Object(Behat\Behat\Context\Environment\InitializedContextEnvironment), Object(Behat\Gherkin\Node\FeatureNode), Object(Behat\Gherkin\Node\ScenarioNode), false)
#21 /var/www/behat_screenshot_manager/vendor/behat/behat/src/Behat/Behat/EventDispatcher/Tester/EventDispatchingScenarioTester.php(103): Behat\Behat\Hook\Tester\HookableScenarioTester->test(Object(Behat\Behat\Context\Environment\InitializedContextEnvironment), Object(Behat\Gherkin\Node\FeatureNode), Object(Behat\Gherkin\Node\ScenarioNode), false)
#22 /var/www/behat_screenshot_manager/vendor/behat/behat/src/Behat/Behat/Tester/Runtime/IsolatingScenarioTester.php(69): Behat\Behat\EventDispatcher\Tester\EventDispatchingScenarioTester->test(Object(Behat\Behat\Context\Environment\InitializedContextEnvironment), Object(Behat\Gherkin\Node\FeatureNode), Object(Behat\Gherkin\Node\ScenarioNode), false)
#23 /var/www/behat_screenshot_manager/vendor/behat/behat/src/Behat/Behat/Tester/Runtime/RuntimeFeatureTester.php(84): Behat\Behat\Tester\Runtime\IsolatingScenarioTester->test(Object(Behat\Behat\Context\Environment\UninitializedContextEnvironment), Object(Behat\Gherkin\Node\FeatureNode), Object(Behat\Gherkin\Node\ScenarioNode), false)
#24 /var/www/behat_screenshot_manager/vendor/behat/behat/src/Behat/Behat/Hook/Tester/HookableFeatureTester.php(72): Behat\Behat\Tester\Runtime\RuntimeFeatureTester->test(Object(Behat\Behat\Context\Environment\UninitializedContextEnvironment), Object(Behat\Gherkin\Node\FeatureNode), false)
#25 /var/www/behat_screenshot_manager/vendor/behat/behat/src/Behat/Behat/EventDispatcher/Tester/EventDispatchingFeatureTester.php(71): Behat\Behat\Hook\Tester\HookableFeatureTester->test(Object(Behat\Behat\Context\Environment\UninitializedContextEnvironment), Object(Behat\Gherkin\Node\FeatureNode), false)
#26 /var/www/behat_screenshot_manager/vendor/behat/behat/src/Behat/Testwork/Tester/Runtime/RuntimeSuiteTester.php(63): Behat\Behat\EventDispatcher\Tester\EventDispatchingFeatureTester->test(Object(Behat\Behat\Context\Environment\UninitializedContextEnvironment), Object(Behat\Gherkin\Node\FeatureNode), false)
#27 /var/www/behat_screenshot_manager/vendor/behat/behat/src/Behat/Testwork/Hook/Tester/HookableSuiteTester.php(73): Behat\Testwork\Tester\Runtime\RuntimeSuiteTester->test(Object(Behat\Behat\Context\Environment\UninitializedContextEnvironment), Object(Behat\Testwork\Specification\GroupedSpecificationIterator), false)
#28 /var/www/behat_screenshot_manager/vendor/behat/behat/src/Behat/Testwork/EventDispatcher/Tester/EventDispatchingSuiteTester.php(72): Behat\Testwork\Hook\Tester\HookableSuiteTester->test(Object(Behat\Behat\Context\Environment\UninitializedContextEnvironment), Object(Behat\Testwork\Specification\GroupedSpecificationIterator), false)
#29 /var/www/behat_screenshot_manager/vendor/behat/behat/src/Behat/Testwork/Tester/Runtime/RuntimeExercise.php(71): Behat\Testwork\EventDispatcher\Tester\EventDispatchingSuiteTester->test(Object(Behat\Behat\Context\Environment\UninitializedContextEnvironment), Object(Behat\Testwork\Specification\GroupedSpecificationIterator), false)
#30 /var/www/behat_screenshot_manager/vendor/behat/behat/src/Behat/Testwork/EventDispatcher/Tester/EventDispatchingExercise.php(70): Behat\Testwork\Tester\Runtime\RuntimeExercise->test(Array, false)
#31 /var/www/behat_screenshot_manager/vendor/behat/behat/src/Behat/Testwork/Ordering/OrderedExercise.php(80): Behat\Testwork\EventDispatcher\Tester\EventDispatchingExercise->test(Array, false)
#32 /var/www/behat_screenshot_manager/vendor/behat/behat/src/Behat/Testwork/Tester/Cli/ExerciseController.php(149): Behat\Testwork\Ordering\OrderedExercise->test(Array, false)
#33 /var/www/behat_screenshot_manager/vendor/behat/behat/src/Behat/Testwork/Tester/Cli/ExerciseController.php(108): Behat\Testwork\Tester\Cli\ExerciseController->testSpecifications(Object(Symfony\Component\Console\Input\ArgvInput), Array)
#34 /var/www/behat_screenshot_manager/vendor/behat/behat/src/Behat/Testwork/Cli/Command.php(63): Behat\Testwork\Tester\Cli\ExerciseController->execute(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#35 /var/www/behat_screenshot_manager/vendor/symfony/console/Command/Command.php(255): Behat\Testwork\Cli\Command->execute(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#36 /var/www/behat_screenshot_manager/vendor/symfony/console/Application.php(1000): Symfony\Component\Console\Command\Command->run(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#37 /var/www/behat_screenshot_manager/vendor/symfony/console/Application.php(271): Symfony\Component\Console\Application->doRunCommand(Object(Behat\Testwork\Cli\Command), Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#38 /var/www/behat_screenshot_manager/vendor/behat/behat/src/Behat/Testwork/Cli/Application.php(124): Symfony\Component\Console\Application->doRun(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#39 /var/www/behat_screenshot_manager/vendor/symfony/console/Application.php(147): Behat\Testwork\Cli\Application->doRun(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#40 /var/www/behat_screenshot_manager/vendor/behat/behat/bin/behat(34): Symfony\Component\Console\Application->run()
#41 {main} {"job_id":"fe4d4512-6e0a-440f-a2a1-7fa085973c3c"} 

The code I saw that creates this crash is here:

        $this->getWebDriverSession()->execute([
            'script' => ':setFrameWidth',
            'args'   => [
                $width,
                $max_height
            ]
        ]);

When my page exceeds a specific height limit .. it crashes. For smaller heights (up to 4-5000px) it works, but when it exceeds that it dies

Upvotes: 0

Views: 209

Answers (0)

Related Questions