草庐IT

Selenium快速入门

全部标签

java - 在 Selenium 中每个元素使用多个定位器的优缺点?

我正在测试一个仍在开发中的网站。元素的ID、类、文本或DOM中的位置通常会发生变化。然后我一直使用的定位器将无法再找到该元素。但功能仍然正常运行。当没有实际回归时,我不希望多个测试失败。因此,我没有为每个元素使用一个定位器,而是有一个定位器集合。publicstaticfinalArrayListLOGIN_ANCHOR_LOCATORS=newArrayList();static{LOGIN_ANCHOR_LOCATORS.add(By.id("loginLink"));LOGIN_ANCHOR_LOCATORS.add(By.linkText("Login"));LOGIN_ANC

java - IE7 - NoSuchElementException 与 Selenium

我正在尝试在IE7上使用SeleniumInternetExplorerDriver在WindowsXP上。此代码在兼容模式下(在W7上)适用于Firefox、IE9甚至IE9。HTML:chicken构建驱动程序:privatestaticWebDrivergetIE7WebDriver(){WebDriverdriver=null;DesiredCapabilitiescapabilities;capabilities=DesiredCapabilities.internetExplorer();capabilities.setCapability(InternetExplorer

java - 以编程方式快速查找可执行文件路径

我想在Java中以编程方式查找.exe文件路径,例如:将Skype.exe输入程序以找到它的直接路径程序执行查找文件路径的算法程序返回文件路径C:\Users\Public\Desktop\Skype.exe我尝试过的一种方法是对系统文件进行排序,直到找到“skype.exe”,但这会占用大量时间和资源。是否有任何hack可以使它几乎是即时的,例如Win_Api函数/cmd命令或正在对文件系统进行排序,直到找到唯一的程序? 最佳答案 我实际上找到了一些有用的东西,虽然不是最快的,但只需要大约100毫秒-500毫秒来完成,具体取决于e

java - 如何让 Hudson 显示完整的 Selenium 报告?

我们的Hudson安装显示了一个非常简洁的Selenium报告版本:SeleniumReportResultnumTestPasses2numTestFailures0我知道应该可以通过Hudson查看完整的报告,还可以跟踪测试的开发。但是如何呢? 最佳答案 我们将Hudson配置为通过Ant任务运行Selenium。然后我们向“发布JUnit测试结果报告”添加了构建后操作。通过此设置,我们可以看到每个失败的测试名称以及每个测试花费的时间,以及深入查看所有测试以查看具体情况的能力。您可以使用Selenium插件将该构建后操作添加到您

java - Selenium 2 : Interrupt a page load

我在使用带有FirefoxDriver的Selenium2.0b3JavaAPI单击按钮时遇到问题。单击该按钮会向网络服务器发送一个表单,然后浏览器将作为表单提交的结果转到一个新页面。当用element.click()点击一个元素时,selenium正在等待浏览器完成它的操作。浏览器等待页面加载完成。但是,有时由于某些广告请求,页面加载会花费大量时间。如何解决element.click()之间的同步问题和页面加载?编辑:如WebElementjavadoc中所述:Clickthiselement.Ifthiscausesanewpagetoload,thismethodwillbloc

java - 无法在 Selenium 中截取屏幕截图

我试图为每次失败事件捕获屏幕截图并编写以下代码,但这不起作用。publicclassTestFile{WebDriverdriver=newFirefoxDriver();@TestpublicvoidTestone(){driver.get("http://www.google.com/");}@AfterMethod(alwaysRun=true)publicvoidcatchExceptions(ITestResultresult){System.out.println("result"+result);StringmethodName=result.getName();Syst

五、Selenium 三种等待方式:强制等待、隐式等待、显示等待

文章目录一、强制等待二、隐式等待三、显示等待常用方法1:FluentWait流畅等待常用方法2:WebDriverwait四、ExpectedCondition模块常用方法五、隐式等待和显示等待公用优先级一、强制等待名词解释:强制线程休眠一定时间,适合脚本调试时使用。常用方法:Thread.sleep(longmillis);优点:适合脚本调试时使用;缺点:不能准确把握需要等待的时间,如果用例中大量使用,会浪费不必要的等待时间,影响用例的执行效率;操作未完成,等待结束,导致系统报错;操作完成,时间未到,导致浪费时间;二、隐式等待名词解释:设置一个最长等待时间,轮询查看页面是否加载完成(默认0.

java - Selenium WebDriver - 将 WebElement 选择器定义为 By 常量是个好主意吗?

我重构了我的java项目以将WebElement选择器定义为By常量。这允许我将By常量传递到我的findElement方法中,而不需要在方法中评估By选择器类型。这是一个好主意吗?如果将By变量定义为publicstaticfinal常量,我可能会遇到什么问题?示例如下:publicstaticfinalByLOGIN_BUTTON_SELECTOR=By.cssSelector("input[name='logIn']");/***clicktheLoginbutton*/publicvoidclickLoginButton()throwsTimeoutException,Stal

Java - 将数组值分配给单个变量的快速方法

我有一个方法将返回数组中的两个字符串,split(str,":",2)准确地说。在java中有没有比将数组中的两个值赋值给字符串变量更快的方法String[]strings=str.split(":",2);Stringstring1=strings[0];Stringstring2=strings[1];例如有没有这样的语法String=str.split(":",2);提前致谢。 最佳答案 不,Java中没有这样的语法。然而,其他一些语言也有这样的语法。示例包括Python的元组拆包和许多函数式语言中的模式匹配。例如,在Pyth

java - 使用 Java 启用 PDF 快速 Web 查看?

如何使用Java代码或任何开源Java库启用PDF的快速Web查看属性?注意:这也称为“线性化PDF”。 最佳答案 检查以下任何一项:iTextgnujpdfPDFBoxFOPJFreeReportPJX-(siteappearstobedown)JPedalPDFJetJPodPDFRendererBigFaceless希望对您有所帮助。 关于java-使用Java启用PDF快速Web查看?,我们在StackOverflow上找到一个类似的问题: https