我正在为Angular应用程序设置CI / CD管道。该管道的一部分将使用Protractor和Chrome运行一些端到端/ UI测试。管道脚本使用Groovy编写,CI / CD软件是Jenkins。
目前,VM尚未安装Chrome或ChromeDriver,我无法通过ssh访问它。此外,每次运行管道时,我都不完全确定VM是否始终相同。因此,我认为确保安装Chrome的最佳方法是检查Groovy脚本的顶部,如果不是,则安装它。我已经找到了在Linux VM上安装Chrome的这些说明:
sudo apt-get install libxss1 libappindicator1 libindicator7
wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
sudo dpkg -i google-chrome*.deb
sudo apt-get install -f
sudo apt-get install xvfb
sudo apt-get install unzip
wget -N http://chromedriver.storage.googleapis.com/2.20/chromedriver_linux64.zip
unzip chromedriver_linux64.zip
chmod +x chromedriver
sudo mv -f chromedriver /usr/local/share/chromedriver
sudo ln -s /usr/local/share/chromedriver /usr/local/bin/chromedriver
sudo ln -s /usr/local/share/chromedriver /usr/bin/chromedriver
sudo apt-get install python-pip
(source)
但我不想每次都运行此操作,因为Chrome可能已经安装好了。那么我如何检查Groovy脚本然后只在必要时运行它?我对这些东西很缺乏经验(我是前端开发人员)所以,如果我犯了任何错误或有更好的方法,请告诉我!
编辑:使用npm安装ChromeDriver会更好吗? ChromeDriver应该包含在package.json devDependencies吗?