Open Hrommi opened 6 years ago
привет. а ты пробовал ходить по http вместо https? (я про rootUrl)
Да, результат такой же. Мне надо для локального сервера browser-sync
делать тесты. Сайт яндекса указан просто для примера.
а сама ошибка какая? возможно, у тебя не та версия драйвера для ff
Вот это появляется в консоли после закрытия браузера:
✘ content-help_card-restrictions plain [firefox]
Cannot launch browser firefox:
[init({"browserName":"firefox"})] The environment you requested was unavailable..
Reason: {"value":{"stacktrace":"org.openqa.selenium.WebDriverException: Process unexpectedly closed with status: 0\nBuild info: version: \u00273.8.1\u0027, revision: \u00276e95a6684b\u0027, time: \u00272017-12-01T19:05:32.194Z\u0027\nSystem info: host: \u0027DESKTOP-6GSSDB5\u0027, ip: \u0027192.168.1.134\u0027, os.name: \u0027Windows 10\u0027, os.arch: \u0027x86\u0027, os.version: \u002710.0\u0027, java.version: \u00271.8.0_161\u0027\nDriver info: driver.version: unknown\nremote stacktrace: stack backtrace:\n 0: 0x47e934 - \u003cno info\u003e\n 1: 0x47f0a3 - \u003cno info\u003e\n 2: 0x442649 - \u003cno info\u003e\n 3: 0x449cc3 - \u003cno info\u003e\n 4: 0x42a890 - \u003cno info\u003e\n 5: 0x406f5e - \u003cno info\u003e\n 6: 0x40cfc9 - \u003cno info\u003e\n 7: 0x6bef19 - \u003cno info\u003e\n 8: 0x420756 - \u003cno info\u003e\n 9: 0x6b96e0 - \u003cno info\u003e\n 10: 0x7ffbc5461fe4 - BaseThreadInitThunk\r\n\tat sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)\r\n\tat sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)\r\n\tat sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)\r\n\tat java.lang.reflect.Constructor.newInstance(Unknown Source)\r\n\tat org.openqa.selenium.remote.W3CHandshakeResponse.lambda$new$0(W3CHandshakeResponse.java:57)\r\n\tat org.openqa.selenium.remote.W3CHandshakeResponse.lambda$getResponseFunction$2(W3CHandshakeResponse.java:104)\r\n\tat org.openqa.selenium.remote.ProtocolHandshake.lambda$createSession$0(ProtocolHandshake.java:123)\r\n\tat java.util.stream.ReferencePipeline$3$1.accept(Unknown Source)\r\n\tat java.util.Spliterators$ArraySpliterator.tryAdvance(Unknown Source)\r\n\tat java.util.stream.ReferencePipeline.forEachWithCancel(Unknown Source)\r\n\tat java.util.stream.AbstractPipeline.copyIntoWithCancel(Unknown Source)\r\n\tat java.util.stream.AbstractPipeline.copyInto(Unknown Source)\r\n\tat java.util.stream.AbstractPipeline.wrapAndCopyInto(Unknown Source)\r\n\tat java.util.stream.FindOps$FindOp.evaluateSequential(Unknown Source)\r\n\tat java.util.stream.AbstractPipeline.evaluate(Unknown Source)\r\n\tat java.util.stream.ReferencePipeline.findFirst(Unknown Source)\r\n\tat org.openqa.selenium.remote.ProtocolHandshake.createSession(ProtocolHandshake.java:126)\r\n\tat org.openqa.selenium.remote.ProtocolHandshake.createSession(ProtocolHandshake.java:73)\r\n\tat org.openqa.selenium.remote.server.ServicedSession$Factory.apply(ServicedSession.java:232)\r\n\tat org.openqa.selenium.remote.server.ActiveSessionFactory.lambda$apply$11(ActiveSessionFactory.java:167)\r\n\tat java.util.stream.ReferencePipeline$3$1.accept(Unknown Source)\r\n\tat java.util.stream.ReferencePipeline$3$1.accept(Unknown Source)\r\n\tat java.util.stream.ReferencePipeline$11$1.accept(Unknown Source)\r\n\tat java.util.stream.ReferencePipeline$2$1.accept(Unknown Source)\r\n\tat java.util.Spliterators$ArraySpliterator.tryAdvance(Unknown Source)\r\n\tat java.util.stream.ReferencePipeline.forEachWithCancel(Unknown Source)\r\n\tat java.util.stream.AbstractPipeline.copyIntoWithCancel(Unknown Source)\r\n\tat java.util.stream.AbstractPipeline.copyInto(Unknown Source)\r\n\tat java.util.stream.AbstractPipeline.wrapAndCopyInto(Unknown Source)\r\n\tat java.util.stream.FindOps$FindOp.evaluateSequential(Unknown Source)\r\n\tat java.util.stream.AbstractPipeline.evaluate(Unknown Source)\r\n\tat java.util.stream.ReferencePipeline.findFirst(Unknown Source)\r\n\tat org.openqa.selenium.remote.server.ActiveSessionFactory.apply(ActiveSessionFactory.java:170)\r\n\tat org.openqa.selenium.remote.server.NewSessionPipeline.lambda$null$1(NewSessionPipeline.java:44)\r\n\tat java.util.stream.ReferencePipeline$3$1.accept(Unknown Source)\r\n\tat java.util.Collections$2.tryAdvance(Unknown Source)\r\n\tat java.util.stream.ReferencePipeline.forEachWithCancel(Unknown Source)\r\n\tat java.util.stream.AbstractPipeline.copyIntoWithCancel(Unknown Source)\r\n\tat java.util.stream.AbstractPipeline.copyInto(Unknown Source)\r\n\tat java.util.stream.AbstractPipeline.wrapAndCopyInto(Unknown Source)\r\n\tat java.util.stream.FindOps$FindOp.evaluateSequential(Unknown Source)\r\n\tat java.util.stream.AbstractPipeline.evaluate(Unknown Source)\r\n\tat java.util.stream.ReferencePipeline.findFirst(Unknown Source)\r\n\tat org.openqa.selenium.remote.server.NewSessionPipeline.lambda$createNewSession$2(NewSessionPipeline.java:47)\r\n\tat java.util.stream.ReferencePipeline$3$1.accept(Unknown Source)\r\n\tat java.util.stream.ReferencePipeline$3$1.accept(Unknown Source)\r\n\tat java.util.stream.ReferencePipeline$3$1.accept(Unknown Source)\r\n\tat java.util.stream.DistinctOps$1$2.accept(Unknown Source)\r\n\tat java.util.stream.ReferencePipeline$2$1.accept(Unknown Source)\r\n\tat java.util.stream.ReferencePipeline$3$1.accept(Unknown Source)\r\n\tat java.util.stream.ReferencePipeline$2$1.accept(Unknown Source)\r\n\tat java.util.stream.Streams$StreamBuilderImpl.tryAdvance(Unknown Source)\r\n\tat java.util.stream.Streams$ConcatSpliterator.tryAdvance(Unknown Source)\r\n\tat java.util.stream.ReferencePipeline.forEachWithCancel(Unknown Source)\r\n\tat java.util.stream.AbstractPipeline.copyIntoWithCancel(Unknown Source)\r\n\tat java.util.stream.AbstractPipeline.copyInto(Unknown Source)\r\n\tat java.util.stream.AbstractPipeline.wrapAndCopyInto(Unknown Source)\r\n\tat java.util.stream.FindOps$FindOp.evaluateSequential(Unknown Source)\r\n\tat java.util.stream.AbstractPipeline.evaluate(Unknown Source)\r\n\tat java.util.stream.ReferencePipeline.findFirst(Unknown Source)\r\n\tat org.openqa.selenium.remote.server.NewSessionPipeline.createNewSession(NewSessionPipeline.java:50)\r\n\tat org.openqa.selenium.remote.server.commandhandler.BeginSession.execute(BeginSession.java:77)\r\n\tat org.openqa.selenium.remote.server.WebDriverServlet.lambda$handle$0(WebDriverServlet.java:240)\r\n\tat java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)\r\n\tat java.util.concurrent.FutureTask.run(Unknown Source)\r\n\tat java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)\r\n\tat java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)\r\n\tat java.lang.Thread.run(Unknown Source)\r\n","stackTrace":[{"fileName":null,"methodName":"newInstance0","className":"sun.reflect.NativeConstructorAccessorImpl","lineNumber":-2},{"fileName":null,"methodName":"newInstance","className":"sun.reflect.NativeConstructorAccessorImpl","lineNumber":-1},{"fileName":null,"methodName":"newInstance","className":"sun.reflect.DelegatingConstructorAccessorImpl","lineNumber":-1},{"fileName":null,"methodName":"newInstance","className":"java.lang.reflect.Constructor","lineNumber":-1},{"fileName":"W3CHandshakeResponse.java","methodName":"lambda$new$0","className":"org.openqa.selenium.remote.W3CHandshakeResponse","lineNumber":57},{"fileName":"W3CHandshakeResponse.java","methodName":"lambda$getResponseFunction$2","className":"org.openqa.selenium.remote.W3CHandshakeResponse","lineNumber":104},{"fileName":"ProtocolHandshake.java","methodName":"lambda$createSession$0","className":"org.openqa.selenium.remote.ProtocolHandshake","lineNumber":123},{"fileName":null,"methodName":"accept","className":"java.util.stream.ReferencePipeline$3$1","lineNumber":-1},{"fileName":null,"methodName":"tryAdvance","className":"java.util.Spliterators$ArraySpliterator","lineNumber":-1},{"fileName":null,"methodName":"forEachWithCancel","className":"java.util.stream.ReferencePipeline","lineNumber":-1},{"fileName":null,"methodName":"copyIntoWithCancel","className":"java.util.stream.AbstractPipeline","lineNumber":-1},{"fileName":null,"methodName":"copyInto","className":"java.util.stream.AbstractPipeline","lineNumber":-1},{"fileName":null,"methodName":"wrapAndCopyInto","className":"java.util.stream.AbstractPipeline","lineNumber":-1},{"fileName":null,"methodName":"evaluateSequential","className":"java.util.stream.FindOps$FindOp","lineNumber":-1},{"fileName":null,"methodName":"evaluate","className":"java.util.stream.AbstractPipeline","lineNumber":-1},{"fileName":null,"methodName":"findFirst","className":"java.util.stream.ReferencePipeline","lineNumber":-1},{"fileName":"ProtocolHandshake.java","methodName":"createSession","className":"org.openqa.selenium.remote.ProtocolHandshake","lineNumber":126},{"fileName":"ProtocolHandshake.java","methodName":"createSession","className":"org.openqa.selenium.remote.ProtocolHandshake","lineNumber":73},{"fileName":"ServicedSession.java","methodName":"apply","className":"org.openqa.selenium.remote.server.ServicedSession$Factory","lineNumber":232},{"fileName":"ActiveSessionFactory.java","methodName":"lambda$apply$11","className":"org.openqa.selenium.remote.server.ActiveSessionFactory","lineNumber":167},{"fileName":null,"methodName":"accept","className":"java.util.stream.ReferencePipeline$3$1","lineNumber":-1},{"fileName":null,"methodName":"accept","className":"java.util.stream.ReferencePipeline$3$1","lineNumber":-1},{"fileName":null,"methodName":"accept","className":"java.util.stream.ReferencePipeline$11$1","lineNumber":-1},{"fileName":null,"methodName":"accept","className":"java.util.stream.ReferencePipeline$2$1","lineNumber":-1},{"fileName":null,"methodName":"tryAdvance","className":"java.util.Spliterators$ArraySpliterator","lineNumber":-1},{"fileName":null,"methodName":"forEachWithCancel","className":"java.util.stream.ReferencePipeline","lineNumber":-1},{"fileName":null,"methodName":"copyIntoWithCancel","className":"java.util.stream.AbstractPipeline","lineNumber":-1},{"fileName":null,"methodName":"copyInto","className":"java.util.stream.AbstractPipeline","lineNumber":-1},{"fileName":null,"methodName":"wrapAndCopyInto","className":"java.util.stream.AbstractPipeline","lineNumber":-1},{"fileName":null,"methodName":"evaluateSequential","className":"java.util.stream.FindOps$FindOp","lineNumber":-1},{"fileName":null,"methodName":"evaluate","className":"java.util.stream.AbstractPipeline","lineNumber":-1},{"fileName":null,"methodName":"findFirst","className":"java.util.stream.ReferencePipeline","lineNumber":-1},{"fileName":"ActiveSessionFactory.java","methodName":"apply","className":"org.openqa.selenium.remote.server.ActiveSessionFactory","lineNumber":170},{"fileName":"NewSessionPipeline.java","methodName":"lambda$null$1","className":"org.openqa.selenium.remote.server.NewSessionPipeline","lineNumber":44},{"fileName":null,"methodName":"accept","className":"java.util.stream.ReferencePipeline$3$1","lineNumber":-1},{"fileName":null,"methodName":"tryAdvance","className":"java.util.Collections$2","lineNumber":-1},{"fileName":null,"methodName":"forEachWithCancel","className":"java.util.stream.ReferencePipeline","lineNumber":-1},{"fileName":null,"methodName":"copyIntoWithCancel","className":"java.util.stream.AbstractPipeline","lineNumber":-1},{"fileName":null,"methodName":"copyInto","className":"java.util.stream.AbstractPipeline","lineNumber":-1},{"fileName":null,"methodName":"wrapAndCopyInto","className":"java.util.stream.AbstractPipeline","lineNumber":-1},{"fileName":null,"methodName":"evaluateSequential","className":"java.util.stream.FindOps$FindOp","lineNumber":-1},{"fileName":null,"methodName":"evaluate","className":"java.util.stream.AbstractPipeline","lineNumber":-1},{"fileName":null,"methodName":"findFirst","className":"java.util.stream.ReferencePipeline","lineNumber":-1},{"fileName":"NewSessionPipeline.java","methodName":"lambda$createNewSession$2","className":"org.openqa.selenium.remote.server.NewSessionPipeline","lineNumber":47},{"fileName":null,"methodName":"accept","className":"java.util.stream.ReferencePipeline$3$1","lineNumber":-1},{"fileName":null,"methodName":"accept","className":"java.util.stream.ReferencePipeline$3$1","lineNumber":-1},{"fileName":null,"methodName":"accept","className":"java.util.stream.ReferencePipeline$3$1","lineNumber":-1},{"fileName":null,"methodName":"accept","className":"java.util.stream.DistinctOps$1$2","lineNumber":-1},{"fileName":null,"methodName":"accept","className":"java.util.stream.ReferencePipeline$2$1","lineNumber":-1},{"fileName":null,"methodName":"accept","className":"java.util.stream.ReferencePipeline$3$1","lineNumber":-1},{"fileName":null,"methodName":"accept","className":"java.util.stream.ReferencePipeline$2$1","lineNumber":-1},{"fileName":null,"methodName":"tryAdvance","className":"java.util.stream.Streams$StreamBuilderImpl","lineNumber":-1},{"fileName":null,"methodName":"tryAdvance","className":"java.util.stream.Streams$ConcatSpliterator","lineNumber":-1},{"fileName":null,"methodName":"forEachWithCancel","className":"java.util.stream.ReferencePipeline","lineNumber":-1},{"fileName":null,"methodName":"copyIntoWithCancel","className":"java.util.stream.AbstractPipeline","lineNumber":-1},{"fileName":null,"methodName":"copyInto","className":"java.util.stream.AbstractPipeline","lineNumber":-1},{"fileName":null,"methodName":"wrapAndCopyInto","className":"java.util.stream.AbstractPipeline","lineNumber":-1},{"fileName":null,"methodName":"evaluateSequential","className":"java.util.stream.FindOps$FindOp","lineNumber":-1},{"fileName":null,"methodName":"evaluate","className":"java.util.stream.AbstractPipeline","lineNumber":-1},{"fileName":null,"methodName":"findFirst","className":"java.util.stream.ReferencePipeline","lineNumber":-1},{"fileName":"NewSessionPipeline.java","methodName":"createNewSession","className":"org.openqa.selenium.remote.server.NewSessionPipeline","lineNumber":50},{"fileName":"BeginSession.java","methodName":"execute","className":"org.openqa.selenium.remote.server.commandhandler.BeginSession","lineNumber":77},{"fileName":"WebDriverServlet.java","methodName":"lambda$handle$0","className":"org.openqa.selenium.remote.server.WebDriverServlet","lineNumber":240},{"fileName":null,"methodName":"call","className":"java.util.concurrent.Executors$RunnableAdapter","lineNumber":-1},{"fileName":null,"methodName":"run","className":"java.util.concurrent.FutureTask","lineNumber":-1},{"fileName":null,"methodName":"runWorker","className":"java.util.concurrent.ThreadPoolExecutor","lineNumber":-1},{"fileName":null,"methodName":"run","className":"java.util.concurrent.ThreadPoolExecutor$Worker","lineNumber":-1},{"fileName":null,"methodName":"run","className":"java.lang.Thread","lineNumber":-1}],"message":"Process unexpectedly closed with status: 0\nBuild info: version: \u00273.8.1\u0027, revision: \u00276e95a6684b\u0027, time: \u00272017-12-01T19:05:32.194Z\u0027\nSystem info: host: \u0027DESKTOP-6GSSDB5\u0027, ip: \u0027192.168.1.134\u0027, os.name: \u0027Windows 10\u0027, os.arch: \u0027x86\u0027, os.version: \u002710.0\u0027, java.version: \u00271.8.0_161\u0027\nDriver info: driver.version: unknown\nremote stacktrace: stack backtrace:\n 0: 0x47e934 - \u003cno info\u003e\n 1: 0x47f0a3 - \u003cno info\u003e\n 2: 0x442649 - \u003cno info\u003e\n 3:
0x449cc3 - \u003cno info\u003e\n 4: 0x42a890 - \u003cno info\u003e\n 5: 0x406f5e - \u003cno info\u003e\n 6: 0x40cfc9 - \u003cno info\u003e\n 7: 0x6bef19 - \u003cno info\u003e\n
8: 0x420756 - \u003cno info\u003e\n 9: 0x6b96e0 - \u003cno info\u003e\n 10: 0x7ffbc5461fe4 - BaseThreadInitThunk","error":"unknown error"},"status":13}
Total: 1 Passed: 0 Failed: 1 Skipped: 0 Retries: 0
Версия драйвера ff 0.19.1
.
попробуй более старую версию драйвера
Начиная с версии geckodriver 0.15.0
и ниже появляется другая ошибка:
Cannot launch browser firefox:
Not a PNG.
А вот что выдает selenium-standalone
с версией 0.19.1
при запуске теста:
2018-03-28 12:20:46.468:INFO:osjs.Server:main: jetty-9.4.7.v20170914
2018-03-28 12:20:46.511:WARN:osjs.SecurityHandler:main: ServletContext@o.s.j.s.ServletContextHandler@646db9{/,null,STARTING} has uncovered http methods for path: /
2018-03-28 12:20:46.516:INFO:osjsh.ContextHandler:main: Started o.s.j.s.ServletContextHandler@646db9{/,null,AVAILABLE}
2018-03-28 12:20:46.636:INFO:osjs.AbstractConnector:main: Started ServerConnector@18298f{HTTP/1.1,[http/1.1]}{0.0.0.0:4444}
2018-03-28 12:20:46.637:INFO:osjs.Server:main: Started @811ms
12:20:46.637 INFO - Selenium Server is up and running
2018-03-28 12:20:46.984:INFO:osjshC.ROOT:qtp23649981-12: org.openqa.selenium.remote.server.WebDriverServlet-729b1e: Initialising WebDriverServlet
12:20:47.045 INFO - Found handler: org.openqa.selenium.remote.server.commandhandler.Status@1e5afe5
12:20:47.051 INFO - /status: Executing GET on /status (handler: Status)
Selenium started
12:21:04.872 INFO - Found handler: org.openqa.selenium.remote.server.commandhandler.BeginSession@844508
12:21:04.873 INFO - /session: Executing POST on /session (handler: BeginSession)
12:21:04.940 INFO - Capabilities are: Capabilities {browserName: firefox, javascriptEnabled: true, version: }
12:21:04.944 INFO - Capabilities {browserName: firefox, javascriptEnabled: true, version: } matched class org.openqa.selenium.remote.server.ServicedSession$Factory (provider: org.openqa.selenium.firefox.GeckoDriverService)
1522228865224 geckodriver INFO geckodriver 0.19.1
1522228865236 geckodriver INFO Listening on 127.0.0.1:25499
1522228866028 mozrunner::runner INFO Running command: "C:\\Program Files\\Mozilla Firefox\\firefox.exe" "-marionette" "-profile" "C:\\Users\\user\\AppData\\Local\\Temp\\rust_mozprofile.x5u4PyYqFZYZ"
1522228868103 Marionette INFO Listening on port 2828
I have build a docker image which support firefox 47.0.1, you could have a try here: https://github.com/Kenith/ta-visual-lib, and you could also get the samples.
Hope could be the help
Output of
gemini --version
: 5.5.0 ...Contents of
.gemini.js
file:Test source code:
Command used to run the test:
Publically accessible URL of the page you are testing against:
https://ya.ru/
Result: Запускается браузер, но страница не загружается и скриншот не создается.
Привет. Как правильно запускать тесты в Firefox? Из #688 я понял что сейчас тесты можно делать только в версии Firefox 46 и ниже. Я установил Firefox 46, но запускаться тесты все равно не стали. Может кто поделиться инструкцией по запуску тестов в Firefox?