Git Product home page Git Product logo

Comments (5)

zedtux avatar zedtux commented on August 17, 2024

I've forked this repo and tried to add the cuprite driver like describe above, and Cucumber runs like before, meaning like if puffing-billy is not installed...

So my setup is made with Docker, with my rails container running my app, cucumber, and the Capybara's server to expose the app to the browser, which runs in another container using the browserless Docker image.

I have configure puffing-billy in order to run on port 3002 with the host rails (the name of the container where is running puffing-billy) and it works when I curl the proxy from the chrome container with 👍

curl --proxy http://rails:3002 http://www.google.com

It's intended to use a HTTP URL in order to avoid any possible issues about SSL/TLS verifications

I can see the puts from my before_handle_request block.

I though then that the set_proxy method from cuprite doesn't work with my Chrome version 94, so I've checked the running commands with ps aux from the chrome container, and I wasn't able to find the port 3002, nor the host rails ...

I will check on the cuprite side if there's an issue with set_proxy, I would appreciate if anyone could tell me if puffing-billy works with a remote browser (no matter the driver) ?

from puffing-billy.

zedtux avatar zedtux commented on August 17, 2024

Here is what I found :

  • the cuprite gem write itself the final :browser_options to include the proxy-server entry which is fine (even if the Ferrum gem actually expect a :proxy Hash)
  • the ferrum gem completely ignores the :browser_options whenever there's an :url options (remote browser) which is why it is not working in my case

I'm now investigating how to pass that proxy-server option even do the browser is in remote.

from puffing-billy.

ronwsmith avatar ronwsmith commented on August 17, 2024

Puffing-billy just acts as the proxy for your browser. It's not a standalone thing.

You should just be able to use cuprite's proxy setting:

page.driver.set_proxy(ip, port, type, user, password)

with Billy.proxy.host and Billy.proxy.port (not sure if the others are required)

from puffing-billy.

zedtux avatar zedtux commented on August 17, 2024

Thank you for your comment, but like I'm showing in my various component, I'm actually not only requesting support for cuprite in this gem, but also implementing proxy setting in remote browser -- at least for Cuprite -- in the Ferrum gem.

I'm just sharing my finds in the case it could help someone else who would try to use puffing-billy with another driver and a remote web browser.

Anyway, it's good to know that without implementing a driver in this gem we can still use it with page.driver.set_proxy.

from puffing-billy.

zedtux avatar zedtux commented on August 17, 2024

The cuprite driver config has been published in version 3.0.4 🎉

from puffing-billy.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.