首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >NoSuchFieldException:驱动程序

NoSuchFieldException:驱动程序
EN

Stack Overflow用户
提问于 2020-07-24 23:40:01
回答 2查看 331关注 0票数 0

我像往常一样运行我的回归和冒烟测试,但在过程中它自己失败了。我收到了上面的错误。我更新了我的chrome驱动程序,以及chrome本身。但我总是得到相同的错误,这是我第一次得到这样的问题,我已经检查了代码,但我找不到任何合理的错误。有什么建议吗?

在这里找到我的部分基础代码...

代码语言:javascript
复制
public class base {

    public static WebDriver driver;
    public  Properties prop;

    public WebDriver initializeDriver() throws IOException 
    {
        prop = new Properties();
            //FileInputStream System.getProperty("user.dir")
        FileInputStream file = new FileInputStream(System.getProperty("user.dir")+"/src/main/java/resources/data.properties");
        prop.load(file);
        String browserName = prop.getProperty("browser");
        //Field field = Class.getField("driver");
        //String browserName = System.getProperty("browser");
        System.out.println(browserName);
        if (browserName.equals("Chrome")){
            //Execute
            System.setProperty("webdriver.chrome.driver","/Users/lisandrosilva/Documents/Drivers/chromedriver 6");
            //ChromeOptions options = new ChromeOptions();
            driver = new ChromeDriver();
        }
        if(browserName.equals("headless")) {
            System.setProperty("webdriver.chrome.driver","/Users/lisandrosilva/Documents/Drivers/chromedriver 5");
            ChromeOptions options = new ChromeOptions();
                    options.addArguments("--headless");

                    options.addArguments("--disable-gpu");
                    driver = new ChromeDriver(options); 
            }            
        else if (browserName.equals("Safari")) {
            //Execute
            //driver = new SafariDriver();
        }
        else if (browserName.equals("FireFox")) {
            System.setProperty("webdriver.gecko.driver","/Users/lisandrosilva/Documents/Drivers/geckodriver 3");
                        driver = new FirefoxDriver();   
            //Execute
                // driver = new FirefoxDriver();
        }
EN

回答 2

Stack Overflow用户

发布于 2020-07-25 00:22:44

NoSuchFieldException

NoSuchFieldException表示类没有指定名称的字段。

如果此错误发生在测试过程中,则可能是您的程序访问了错误的文件。我建议将属性文件重命名为myProp.properties而不是data.properties,并执行您的测试。

票数 0
EN

Stack Overflow用户

发布于 2021-01-17 16:03:02

正如Lisandro Fernando在他们的comment中提到的那样,我也曾面临过同样的问题,现在它得到了解决。

使用getField方法代替getDeclaredField方法。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63076875

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档