首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Java潜在Cookies,驱动程序,ExpectedConditions API问题?

Java潜在Cookies,驱动程序,ExpectedConditions API问题?
EN

Stack Overflow用户
提问于 2021-05-02 00:23:50
回答 1查看 57关注 0票数 1

INTRO

我是一个使用进行GUI测试的学生。我无法让测试用例在我的桌面上运行,但是我团队的其他成员能够。

正在使用什么技术/软件,

我们使用JDK 14、IntelliJ Community、BitBucket和JUnit 4。

什么是我测试

我正在测试一个示例单页应用程序。我添加任务,使用日期选择器添加日期,然后单击“添加项”按钮。但是,对按钮的单击没有注册,任务也没有添加到列表中。如果我重新启动我的计算机,第一个@Test可以工作,但是第二个@Test不能清除cookie,第二个@Test失败。

详细版本:

我从一个表面图书2到一个Alienware R10桌面。我的团队能够在没有问题的情况下完成项目并运行所有测试用例。然而,我无法做到。同样的程序工作在我的SB2上,但不适用于Alienware R10 (AMD3900处理器)。

我尝试过的:

  • 我使用了本地存储的Chrome驱动程序,我使用了Boni的WebDriverManager。
  • 该项目是使用Maven构建的,因此我尝试使用这两种依赖关系,并将selenium文件直接添加到我的项目结构中,但没有成功。
  • 我重新格式化了我的新R10,并尝试重新安装所有的东西。我小心地将JAVA_HOME和MAVEN_HOME添加到系统路径中。
  • 在看到一些关于SOF的帖子之后,我尝试使用ChromeOptions,但这些都没有用。
  • 领导我们的QA开发人员试图帮助我大约40分钟,但却搞不清楚。他说问题不在于我的IDE,而在于Chrome cookie。每次要运行JUnit Selenium测试时,我都必须清除cookie。然而,我团队的其他成员不需要这样做,而且这并不总是有效的。

附加详细信息:

  • 我有一个新的Alienware R10与AMD 3900芯片。我在我的路径和环境变量中添加了JAVA_HOME和MAVEN_HOME。
  • 我可能不正确地添加到项目结构或依赖项中。
  • 这是我的第一篇帖子,所以请让我知道我是否应该更好地格式化这个问题,或者我是否遗漏了任何重要的细节。

结论

我很担心我想在周末学习和练习,但是我花了很多时间来解决这个问题。我的下一个想法是使用Eclipse而不是IntelliJ,看看是否可以在那里运行它。这里的任何建议都会有帮助。

编辑

Eclipse也不起作用,也有同样的问题。这告诉我,这个问题肯定与IDE无关。这可能是与CPU或浏览器相关的问题。我还尝试通过WebDriverManger依赖关系使用其他驱动程序。

经过进一步的研究,如果我在代码中添加了一些Thread.sleep()函数,而不是ExpectedConditions和元素的可访问性,它似乎会注册单击,并实际添加到任务中。问题可能源于使用ExpectedConditions API,但这同样适用于我的队友,而不是我。这可能是AMD芯片组的问题吗?

元素可见性可能是在这里使用的错误函数,但是它确实在我的队友机器上工作,所以这就是为什么我没有尝试在那里寻找替代的原因。我们使用的函数查看DOM树,我们可能希望看到浏览器上的可见性。我很难测试这个,因为我没有笔记本电脑可以用。

我调整了我的旧笔记本电脑,这样它就可以出售,因为我有这台新的PC,但我将使用它尝试另一个功能,看看它是否带来了不同的结果。

EDIT2:

Observation/Guess

我想问题是与AMD 3900 CPU。Thread.sleep()将行为更改为至少单击“Add”按钮。它仍然没有通过我所做的测试,而且ExpectedConditions API仍然不起作用。

我将返回Alienware R10,并获得一个英特尔CPU R10或建立我自己的个人电脑。

这是,基于我和我队友的机器之间的行为差异,他们有英特尔,我有AMD,这是一个有教养的猜测

如果您正面临类似的问题,请确认您是使用AMD或英特尔在这个线程。它也会帮助其他人。我肯定有工作,但他们没有为我工作。我还尝试使用ChromeOptions禁用GPU和其他一些选项。

然而,没有成功,除非有更好的答案,我把责任归咎于AMD 3900 CPU。

谢谢,如果你面临类似的问题或者找到了一个更好的答案,请在这篇文章中做出贡献。任何猜测也可能有帮助。

EN

回答 1

Stack Overflow用户

发布于 2021-05-03 23:57:37

我同意你们队的质量保证。这与IDE无关。我怀疑操纵DesiredCapabilities of WebDriver会解决这个问题。考虑到您使用的是bonigarcia WebDriverManager依赖性,我建议atleat尝试下面的代码,看看是否可以正确地创建WebDriver

代码语言:javascript
复制
public static void main(String[] args) {
    WebDriverManager.chromedriver().setup();
    DesiredCapabilities chromeDesiredCapabilities = DesiredCapabilities.chrome();
    WebDriver webdriver = new ChromeDriver(chromeDesiredCapabilities)
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67351982

复制
相关文章

相似问题

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