Tag: webdriver

Eclipse for Java中使用Webdriver的字符编码问题

我目前正在使用Eclipse与TestNG运行selenium webdriver与java。 我正在使用Jexcelapi从OpenOffice(电子表格)导入数据,以比较我正在测试的网站上的字符串与电子表格中的值。 我遇到的问题是我们有不同的地区,包括德国和北欧(瑞典,挪威和丹麦)。 这些网站的字符串字符带有重音特殊字符。 这是在我的电子表格中正确复制的,并且在调试模式下运行脚本会在电子表格中显示正确的字符但是当我得到我的结果时,它会显示无效字符,例如? 和空白。 我已经浏览了论坛并在过去几天到处搜索并看到了各种解决方案,但似乎没有任何解决方案。 我不确定Eclipse,Jexcelapi或OpenOffice是否存在问题。 我在某些地方建议将Eclipse中的编码设置更改为UTF-8,但仍然存在同样的问题。 我实例化了“WorkbookSettings”类并设置了编码并将其与我的getWorkbook方法一起使用,我仍然得到那些使我的脚本显示失败的坏字符。 有人可以帮忙吗? 提前致谢

Selenium java浏览器会话重用

我的问题如下:如何将浏览器会话重用于不同java类的测试? 我的浏览器打开如下: public class OpenBrowser { public static WebDriver driver; @BeforeSuite public static void openb() { // Create a new instance of the Firefox driver driver = new FirefoxDriver(); driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS); } } 然后我必须使用一些凭据登录到一个网站,并且在记录之后我想要执行其他测试,我不想为每个测试登录,因为我需要制作很多它们并为每个测试登录花了十年时间。 例如,流程如下所示:登录 – >推送某个组件 – >添加一些值 – >生成报告。 比之后我想生成另一个组件的其他报告但是当我尝试它时给出一个空指针exception。 有任何想法吗? 🙂

如何使用Selenium WebDriver处理HtmlUnitDriver的身份validation?

如何使用HtmlUnitDriver处理身份validation?

无法解析构造函数FirefoxDriver(org.openqa.selenium.firefox.FirefoxProfile)

有人可以帮我解决这段代码。 目前它会在第4行抱怨:webDriver = new FirefoxDriver(ff_ep_profiles)说它无法解析构造函数。 我需要加载我的扩展,因此我正在创建一个配置文件 FirefoxProfile ff_ep_profile = new FirefoxProfile(new File(“C:\\Users\\admin\\AppData\\Roaming\\Mozilla\\Firefox\\Profiles\\81uy033g.FirefoxEP”)); FirefoxOptions option=new FirefoxOptions(); option.setProfile(ff_ep_profile); webDriver = new FirefoxDriver(ff_ep_profile);

@CacheLookup如何在WebDriver中工作?

我不确定我是否理解缓存原则: @CacheLookup @FindBy(how = How.ID, using = namespace + signifLvl) private WebElement sigLvl; 如果我们使用这种Annotation方法,正在使用ElementLocator,并且第一次引用该字段时,元素被找到driver.findElement(by)并通过ElementLocator缓存,以便下次我们引用它时,它将从缓存。 它看起来取决于ElementLocator和PageObject实例的生命周期。 它也与direct driver.findElement(By); 调用。 我假设,WebElement就像是元素的指针/引用,对吧? 因此,如果元素在浏览器中发生更改,则会立即反映到WebElement。 就像在JavaScript中一样。 因为所有RemoteWebElement关于元素状态的方法都是对浏览器执行命令/请求。 这样即使在缓存元素中也会反映出这些变化,对吧?

Selenium IEServerDriver找不到IE9的新窗口

我正在与Selenium WebDriver合作,以自动化我的公司网站。 有一次,Web应用程序通过以下方式打开一个新窗口: Express Quote 我们正在使用jQuery,虽然我认为这是自定义的。 我在测试团队,并没有做任何网站的开发。 无论如何,它使用JavaScript打开一个新窗口。 脚本单击此链接后,我需要它附加到新窗口。 问题是WebDriver在IE9中运行时似乎没有找到新窗口。 这是我用来尝试切换到新窗口的代码: public boolean switchTo(final WebRobot robot, final String pageTitle) { boolean found = false; int count = 0; while (!found && count < 20) { final Set handles = robot.getDriver().getWindowHandles(); final Iterator itr = handles.iterator(); while (itr.hasNext()) { try { final String current = itr.next(); […]

如何使用Selenium的java接口从站点上传文件

我是selenium发展的新手,我需要“刮”这个页面: https://annunci.ebay.it/pubblica-annuncio 在此页面中,使用jquery上传图像。 我需要在java中使用selenium来做同样的事情。 有人可以给我一些建议吗? 谢谢!! 🙂 这是我尝试的: WebDriver d = new FirefoxDriver(); d.get(“https://annunci.ebay.it/pubblica-annuncio”); List elements = d.findElements(By.tagName(“input”)); for(WebElement e : elements){ System.out.println(e.getAttribute(“name”)); }

java.lang.IllegalAccessError:尝试访问方法com.google.common.util.concurrent.SimpleTimeLimiter。 使用Selenium-Java 3.5.1或更高版本时

我想知道是否有人可以告诉我为什么当我使用Selenium-Java 3.5.1或更高版本时出现以下错误 – java.lang.IllegalAccessError: tried to access method com.google.common.util.concurrent.SimpleTimeLimiter.(Ljava/util/concurrent/ExecutorService;)V from class org.openqa.selenium.net.UrlChecker

如何在同一浏览器上重新运行Selenium 2.0(webdriver)测试?

我正在尝试使用Selenium 2.0(Webdriver)来实现一系列测试。 在运行这些测试之前,我必须登录该应用程序。 由于应用程序不是我自己的(测试api构建的function),因此每个测试都不应该登录到我的应用程序中运行。 我更愿意做以下事情: 将我的webdriver测试连接到我的开放式Firefox浏览器(已登录) 使用相同的浏览器运行我的webdriver项目。 据我所知,Selenium通常会为其浏览器分配会话ID。 但是,Selenium 2.0驱动程序的当前Java实现没有使用会话ID(可能确实如此,但我不知道在哪里找到它。) 有人可以提供一些指导如何解决我的问题(现有的浏览器和使用Selenium 2.0(java)运行多个测试)? 提供的任何代码也会有所帮助。 谢谢!

Selenium Select – 选择部分文本的下拉选项

Selenium Select类有3种不同的选项选择方法: selectByIndex selectByValue selectByVisibleText 现在,我有一种情况,我希望通过某些文本选择一个选项,该文本部分出现在其中一个选项可见文本中(不想让自己暴露于整个文本中的更改)。 例如: VERY-LONG-TEXT-THAT-I-NEED-TO-SELECT-DOLLAR 我只想通过提供“DOLLAR”来选择此选项,例如: select.selectByPartOfVisibleText(“DOLLAR”) 你会如何有效地实施它?