Tag: selenium webdriver

如何使用Selenium WebDriver在新标签页(chrome)中打开链接?

System.setProperty(“webdriver.chrome.driver”, “D:\\softwares\\chromedriver_win32\\chromedriver.exe”); WebDriver driver = new ChromeDriver(); driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS); driver.manage().window().maximize(); driver.get(“https://mail.google.com/”); String selectLinkOpeninNewTab = Keys.chord(Keys.CONTROL,Keys.RETURN); driver.findElement(By.linkText(“www.facebook.com”)).sendKeys(selectLinkOpeninNewTab); 新选项卡正在打开,但URL链接未打开。

java中的静态Webdriver实例同步

GlobalVariables类包含在我的框架中使用的不同变量,其中一个是WebDriver实例: public class GlobalVariables { public static WebDriver driver; //Some other static global variables required across my framework public GlobalVariables(String propertiesFile) { initializeVariables(propertiesFile); } public void initializeVariables(String propertiesFile) { GlobalInitializer obj=new GlobalInitializer(); obj.initialize(String propertiesFile); } } GlobalInitializer包含初始化所有GlobalVariables的方法: public class GlobalInitializer extends GlobalVariables { public void initialize(String propertiesFile) { //Some logic to read properties file and […]

Selenium 2:在新标签页中打开链接并关闭标签页

我希望能够在Selenium 2中的新选项卡中打开链接。此外,我想在完成与页面的交互时关闭选项卡。 如果我有一个标签的WebElement ,这怎么可能? 我正在使用Selenium 2的Java API和Firefox 4上运行的Firefox驱动程序。

如何将selenium IDE中记录的命令转换为Java?

是否有任何应用程序或简单方法将Selenium IDE记录的所有命令转换为Java (Selenium WebDriver) ? 这将更容易,并将节省大量时间。 任何建议将不胜感激。 谢谢!

Selenium – 如何等待页面完全加载

我正在尝试使用Java和Selenium Web驱动程序自动化一些测试用例。 我有以下情况: 有一个名为’Products’的页面。 当我点击“产品”页面中的“查看详细信息”链接时,会出现一个包含该项目详细信息的弹出窗口(modal dialog)。 当我点击弹出窗口中的“关闭”按钮时,弹出窗口关闭,页面自动刷新(页面刚刚重新加载,内容保持不变)。 关闭弹出窗口后,我需要点击同一页面中的“添加项目”按钮。 但是当webdriver试图找到“添加项目”按钮时,如果网速太快,webdriver就可以找到并单击该元素。 但是如果互联网速度慢,webdriver会在页面刷新之前找到按钮,但只要webdriver单击按钮,页面就会刷新并发生StaleElementReferenceException。 即使使用了不同的等待,所有等待条件也会变为真(因为重新加载之前和之后页面中的内容相同),甚至在重新加载页面并发生StaleElementReferenceException之前。 如果Thread.sleep(3000);测试用例可以正常工作 在单击“添加项目”按钮之前使用。 这个问题还有其他解决方法吗?

如何在没有文本框的Selenium上传文件

我一直在寻找在Selenium 2中上传文件的解决方案。 问题是我尝试上传的网页元素有两种使用方式:拖放或点击按钮。 没有字段输入框。 并不是说我没有尝试使用sendKeys。 我已经尝试了按钮和周围的所有元素。 这个问题的第二部分是我在Windows机器上编写,但自动化发生在Linux机器上。 这意味着AutoIt不起作用。 这是上传框的HTML。 Please choose a folder to upload Drop one or more files here or Select Files 我正在使用Java,并对Selenium之外的其他方法开放(但是,我只选择了maven存储库)。 谢谢!

如何在Selenium webdriver中等待警报?

可能重复: selenium 2.4.0,如何检查是否存在警报 我使用以下代码关闭警报窗口: Alert alert3 = driver.switchTo().alert(); alert3.dismiss(); 主窗口打开几秒后出现警报。 我该如何等待并检查警报是否出现?

隐式vs显式vs流利等待

隐式,明确,流利等待有什么区别? 如果我们在隐式等待和10秒之前设置10秒,则在3秒内只有元素到达。 那个时候会发生什么? 它将等待10秒或继续进行。

为什么Selenium驱动程序无法识别Facebook登录页面的ID元素?

我刚刚开始在线课程学习Selenium webdriver。 由于我是测试和Java编程的初学者,所以请帮助我。 我试图运行自动化代码以在Facebook登录页面中自动填充用户名。 初始运行程序已成功输出。 但在第二次尝试时,我遇到了以下错误 org.openqa.selenium.NoSuchElementException: no such element: Unable to locate element: {“method”:”id”,”selector”:”email”} 之后,我用谷歌搜索并发现这个问题试图在我的代码中复制这个答案 。 public class Helloworld { public static void main(String[] args) { System.setProperty(“webdriver.chrome.driver”,”C:\\Seenu\\Selenium\\Driver” +”\\Chromedriver\\chromedriver.exe”); WebDriver drive = new ChromeDriver(); drive.get(“https://www.facebook.com”); // part copied from other SO question //Copied code starts here with little modification List elements = drive.findElements(By.id(“email”)); if(elements.size() > […]

Selenium测试脚本通过新的ajax登录表单登录谷歌帐户

我可以编写脚本来将我的电子邮件地址放入电子邮件元素中。 但是,一旦点击下一步脚本,谷歌就会使用ajax动态地将该电子邮件元素替换为密码元素。 这是我被困住的地方,无法在该元素中提供密码而且无法登录。 url: https : //accounts.google.com/signin/v2/identifier?flowName = GlifWebSignIn&flowEntry = ServiceLogin 请编写selenium测试脚本来实现此目的。