草庐IT

Selenium-WebDriver

全部标签

java - Selenium ,我怎样才能选择新窗口

我使用TestNG在Eclipse中运行我的seleniumrc测试。我有一个链接试图打开一个新的浏览器页面。如何选择这个新页面进行操作?我使用这段代码:selenium.selectWindow("name=NewPage");但是它说找不到页面。我还尝试使用以下代码定义页面ID或标题:String[]wins=selenium.getAllWindowIds();for(Strings:wins)System.out.println("win:"+s);它没有定义我新打开的窗口:win:MainPagewin:如果使用selenium.getAllWindowNames()我会得到

无法使用Ruby单击WebDriver中弹出窗口中的确定按钮

无法单击“确定”按钮,我尝试过这样的方法,但没有单击。b.find_element(name:"OK").click#---->itisnotclicking如何与Ruby中的这种流行音乐互动。OK看答案您可以尝试以下一项可能对您有所帮助。ele=find_element(name:"OK")driver.action.move_to(ele).click(ele).perform或者driver.execute_script("arguments[0].click();",ele)或者driver.execute_script("disp();")

java - 如何使用 Selenium Webdriver 处理浏览器级通知

我正在使用SeleniumWebdriver和核心Java自动化一些测试用例,在chrome浏览器中单击按钮的一个测试用例我收到浏览器级别通知“显示带有允许和阻止选项的通知”。我想选择允许选项。谁能知道如何使用Seleniumwebdriver处理这种通知。请引用以下快照了解更多详情 最佳答案 请按照以下步骤操作:A)使用JAVA:ForOldChromeVersion(//CreateainstanceofChromeOptionsclassChromeOptionsoptions=newChromeOptions();//Add

一分钟带你入门Selenium入门!【建议收藏】

Selenium入门欢迎阅读Selenium入门讲义,本讲义将会重点介绍Selenium的入门知识以及Selenium的前置知识。自动化测试的基础在Selenium的课程以前,我们先回顾一下软件测试的基本原理,为我们进一步完成Selenium自动化测试做好准备。软件测试的发展G.J.Myers在其经典的著作《软件测试艺术》(TheArtofSoftwareTesting)一书中,给出了测试的定义:“程序测试是为了发现错误而执行的过程。”这个概念产生于30年前,对软件测试的认识还非常有局限性,当然也是因为受瀑布开发模型的影响,认为软件测试是编程之后的一个阶段。只有等待代码开发出来以后,通过执行程

java - org.openqa.selenium.WebDriverException : unknown error: cannot determine loading status

我是Selenium的新手,需要一些线索来找到以下错误的根本原因。Selenium版本-3.5.3ChromeDriver版本-2.29.4Chrome版本-63org.openqa.selenium.WebDriverException:unknownerror:cannotdetermineloadingstatusfromunknownerror:missingorinvalid'entry.level'(Sessioninfo:chrome=63.0.3239.132)(Driverinfo:chromedriver=2.29.461591(62ebf098771772160f

java - org.openqa.selenium.remote.internal.ApacheHttpClient 在 Selenium 3.14.0 中被弃用 - 应该使用什么来代替?

我目前正在使用Selenium3.14.0库,其中org.openqa.selenium.remote.internal.ApacheHttpClient已被弃用,没有其他信息。应该改用哪个?该类已在下一个版本3.141.59中删除。我将它与EdgeDriver服务一起使用,如下所示:finalintconnectionTimeout=2*60*1000;finalintsocketTimeout=10*60*1000;//10minutetimeoutfinalApacheHttpClient.FactoryclientFactory=newApacheHttpClient.Fact

一定要会用selenium的等待,3种等待方式解读

很多人问,这个下拉框定位不到、那个弹出框定位不到…各种定位不到,其实大多数情况下就是两种问题:有frame没有加等待殊不知,你的代码运行速度是什么量级的,而浏览器加载渲染速度又是什么量级的,就好比闪电侠和凹凸曼约好去打怪兽,然后闪电侠打完回来之后问凹凸曼你为啥还在穿鞋没出门?凹凸曼分分中内心一万只羊驼飞过,欺负哥速度慢,哥不跟你玩了,抛个异常撂挑子了。​那么怎么才能照顾到凹凸曼缓慢的加载速度呢?只有一个办法,那就是等喽。说到等,又有三种等法,且听博主一一道来:01、强制等待第一种也是最简单粗暴的一种办法就是强制等待sleep(xx),强制让闪电侠等xx时间,不管凹凸曼能不能跟上速度,还是已经提

java - Selenium Webdriver,在 div 弹出窗口内滚动

显示的弹出窗口内容很大,必须滚动才能完整查看。是否有滚动显示为弹出窗口的div中的内容。我们可以使用JavaScriptExecutor滚动到Element,但这似乎只在窗口级别有效,而在div级别无效。 最佳答案 //InitializeJavascriptexecutorJavascriptExecutorjs=(JavascriptExecutor)driver;//Scrollinsidewebelementvertically(e.g.100pixel)js.executeScript("arguments[0].scro

java - 如何为我在 java 上编写的 Selenium 测试增加 travis-ci 中的超时?

我在java上写了一个测试(在本地机器上通过,测试运行大约30分钟),我需要增加travis-ci的超时时间,我可以通过更改.tavis.yml来更改超时时间吗?这是我的.tavis.yml文件:language:javacache:aptbefore_install:-sudoapt-getupdate-qq-sudoapt-getinstall-qqdefault-jdkmavenenv:-JAVA_HOME=/usr/lib/jvm/java-6-openjdk-amd64script:-travis_waitmvnpackage-Dtestng=test.xml我问是因为我在t

java - 附加日志记录 JBehave

场景是这样的:我们使用JBehave和Selenium进行系统、集成和端到端测试。我正在检查超过20个值的页面上的计算结果以进行验证。使用JunitAssert整个测试将在其中一个值不正确的第一个实例上失败。我想做的是,如果遇到断言失败,那么测试将继续执行,这样我就可以在一次测试运行而不是多次测试运行中整理所有不正确的值。为此,我捕获断言并将验证失败的任何内容写入日志文件。这给我留下了几个问题:1)我写出断言失败的日志文件不包含异常发生时正在运行的JBehave故事或场景的名称。2)JBehave故事或场景被列为“通过”,我希望它被列为“失败”。有什么方法可以将故事和场景的名称记录到附