Selenium + firfox + Geckodriver 在Linux上搭建,java模拟打开火狐

最近项目将自动化测试项目从windows迁移到凝思系统上,故在linux上搭建一套自动化测试环境。由于其中的版本之间对应关系很微妙,所以选择以下版本安装。

下载firfox

wget http://releases.mozilla.org/pub/firefox/releases/75.0b7/linux-x86_64/en-US/firefox-75.0b7.tar.bz2(右键复制在linux上运行)
sudo tar -xjvf firefox-75.0b7.tar.bz2 -C /usr/lib/ (解压)
sudo chown -R root:root /usr/lib/firefox (修改owner)
sudo unlink /usr/bin/firefox (删除原有link)
sudo ln -s /usr/lib/firefox/firefox /usr/bin/firefox (建立新的link)

安装geckodriver

wget https://github.com/mozilla/geckodriver/releases/download/v0.26.0/geckodriver-v0.26.0-linux64.tar.gz
tar --xvzf geckodriver-v0.26.0-linux64.tar.gz
chmod +x geckodriver
sudo cp geckodriver /usr/local/bin/

安装selenium 3.5.1

由于本机上安装了python 及 pip
所以直接使用

pip install selenium

测试代码

python

from selenium import webdriver
from selenium.webdriver.firefox.options import Options

options = Options()
options.headless = True
driver = webdriver.Firefox(options=options)
driver.get('https://www.baidu.com')
print(driver.title)

无报错及有输出“百度一下,你就知道”则表示环境安装成功。

java调用

pom文件

		<dependency>
            <groupId>org.seleniumhq.selenium</groupId>
            <artifactId>selenium-java</artifactId>
            <version>3.5.1</version>
        </dependency>

打包时需注意在build中

<build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-resources-plugin</artifactId>
                <version>3.1.0</version>
            </plugin>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

主函数

public static void main(String[] args) {
        SpringApplication.run(DemoApplication.class, args);

        WebDriver firfoxDriver=null;
        FirefoxOptions firefoxOptions=new FirefoxOptions();


        firefoxOptions.setHeadless(Boolean.TRUE);

        firfoxDriver=new FirefoxDriver(firefoxOptions);

        firfoxDriver.get("https://www.baidu.com");

        System.out.println(firfoxDriver.getTitle());
    }

输出

在这里插入图片描述

注:在java代码中并没有配置插件及浏览器的绝对路径,因为路径不配置会默认自动匹配系统中的浏览器与插件路径。

参考链接:【Linux】2020配置firefox +geckodriver + selenium 安装及报错解决办法:no DISPLAY environment variable specified

  • 16
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值