Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Helium cannot launch chrome inside AWS lambda environment #32

Closed
sanjuktahazarika opened this issue Jun 25, 2020 · 7 comments
Closed

Helium cannot launch chrome inside AWS lambda environment #32

sanjuktahazarika opened this issue Jun 25, 2020 · 7 comments

Comments

@sanjuktahazarika
Copy link

Recently we moved our Selenium UI tests to AWS Lambda and for this we switched to a lighter version of headless chromium as the default chromium is not compatible with AWS lambda.
Now we wanted to use Helium for our existing tests. Though we wanted to run our tests in headless chromium, we are getting "cannot Import name FirefoxOptions" exception when we tried running our tests with Helium inside AWS Lambda environment.
Please find screenshot with logs for the same.
Screenshot from 2020-06-24 19-45-07

@mherrmann
Copy link
Owner

I don't know; Which version of Selenium do you have installed?

@sanjuktahazarika
Copy link
Author

These are the packages we are using.

apipkg==1.5
attrs==19.3.0
beautifulsoup4==4.8.2
bs4==0.0.1
certifi==2019.11.28
chardet==3.0.4
ddt==1.3.0
execnet==1.7.1
Faker==4.0.1
flaky==3.6.1
idna==2.9
importlib-metadata==1.5.0
more-itertools==8.2.0
packaging==20.3
pluggy==0.13.1
py==1.8.1
PyHamcrest==2.0.2
pyparsing==2.4.6
pytest==5.3.4
pytest-base-url==1.4.1
pytest-forked==1.1.3
pytest-html==1.16.0
pytest-metadata==1.8.0
pytest-ordering==0.6
pytest-sugar==0.9.2
pytest-xdist==1.31.0
python-dateutil==2.8.1
PyYAML==5.3
pyyml==0.0.2
requests==2.23.0
selenium==2.37.0
six==1.14.0
soupsieve==2.0
termcolor==1.1.0
text-unidecode==1.3
urllib3==1.25.8
wcwidth==0.1.8
xmltodict==0.12.0
zipp==3.1.0
lambda-git
webdriver_manager

@mherrmann
Copy link
Owner

Helium requires Selenium 3.141.0.

@sanjuktahazarika
Copy link
Author

You are right. I was using an older version. But even after switching to Selenium 3.141.0, Helium says unable to find chrome binary. I want to bring this to your notice that for AWS lambda purpose, we are using light weight modified chrome binary executable which is available inside /opt directory of AWS lambda environment. Without Helium, selenium webriver is able to find this chrome binary but Helium isn't. Could you please help me?
TIA
Screenshot from 2020-06-25 20-18-05

@mherrmann
Copy link
Owner

I'm sorry I'm unable to provide help with such specific requests for free. Would you be open to paying for my help on an hourly basis?

@sanjuktahazarika
Copy link
Author

Sorry, it's not my personal request. Many other engineers who are running their tests inside AWS Lambda will face the same issue and they cant use Helium in that case.

@mherrmann
Copy link
Owner

Then you or they should submit a Pull Request to Helium. I will not work for you for free, sorry. I get too many requests every week from people who want me to do just that. From Helium's README:

I have too little spare time to maintain this project for free. If you'd like my help, please go to my web site to ask about my consulting rates. Otherwise, unless it is very easy for me, I will usually not respond to emails or issues on the issue tracker. I will however accept and merge PRs. So if you add some functionality to Helium that may be useful for others, do share it with us by creating a Pull Request.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants