草庐IT

selenium

全部标签

javascript - 选择嵌套的 iframe - selenium/javascript/node-js

我想使用node-js中的seleniumwebdriver模块在iframe中选择一个嵌套的iframe。例如:对于node-js部分:driver.switchTo().defaultContent();driver.switchTo().frame("firstframe");//-->worksdriver.switchTo().frame("secondframe");//-->NoSuchFrameErroriframes=driver.findElements(webdriver.By.tagName('iframe')).then(function(elements){

javascript - Safari WebDriver setTimeout 使用 Protractor 退出

我已经使用Karma完成了很多单元测试,但我的办公室希望进行一些集成测试,尤其是测试跨浏览器功能。为此,Protractor似乎是我的最佳选择,我已经开始进行一些基本的仪表板测试,但仍然坚持使用safari。我的配置:exports.config={seleniumAddress:'http://localhost:4444/wd/hub',specs:['scenarios/*Scenario.js'],framework:'jasmine',baseUrl:'https://www-dev.remeeting.com/',multiCapabilities:[{browserNam

javascript - Selenium waitFor 机制的内部工作原理是什么?

我正在尝试通过拦截对doClick(locator)的调用来自定义Selenium的点击命令的行为(通过user-extentions.js)。基本上,只要显示我们应用程序的“忙碌指示器”,我就需要延迟点击操作。(现在对于这种事情的标准答案是在脚本中为这些情况插入一个waitFor。事实上,我们目前在整个脚本中有无数个它们。我正在努力消除它们。)检测页面元素是微不足道的部分。棘手的部分是让脚本真正等待。我看起来很有前途但失败的尝试如下所示:varnativeClick=Selenium.prototype.doClick;Selenium.prototype.doClick=funct

javascript - 在 Nightwatch 中设置 Firefox 首选项

如何在nightwatch中设置firefox首选项?我想用nightwatch在java中做同样的事情。FirefoxProfileprofile=newFirefoxProfile();profile.setPreference("intl.accept_languages","de");WebDriverdriver=newFirefoxDriver(profile);我在chrome中可以正常工作,但我还是不知道如何在Firefox中进行。"desiredCapabilities":{"browserName":"chrome","javascriptEnabled":true

javascript - 从 Javascript 检测损坏的锁图标(混合安全/不安全内容)

我正在努力使网站在HTTPS下完全正常运行。作为其中的一部分,我想确保我们永远不会“打破锁”。也就是说,我们不应该在SSL页面上加载非SSL内容,这可能会触发警告或其他指示器,具体取决于浏览器。为了验证情况是否如此,我想做两件事:编写Selenium测试来验证各种操作不会破坏锁。在JS中编写日志记录代码,在用户session期间检查锁是否被破坏,如果是则记录回服务器。有没有什么方法可以在JS中查看浏览器的HTTPS锁图标是坏了还是没坏?或者等价地,当前页面内容的混合/非混合状态? 最佳答案 您无法从JavaScript本身检测到这一

javascript - Selenium:滚动到页面末尾

Selenium:我是WebDriverJS的新手.我已经在J​​ava中尝试过这种方法。Longrepaeted=0l,scrollHeight=0l,returnHeight=0l;while(true){if(repaeted==0){returnHeight=(Long)jse.executeScript("varscroll=document.documentElement.scrollHeight;window.scrollTo(0,scroll);returnscroll;");System.out.println("Height:"+scrollHeight+"\tCh

javascript - Selenium RC > 如何使用 attachFile() 上传文件

我正在使用带有Junit框架的SeleniumRC。我正在尝试使用attachFile()方法上传文件。attachFile:(InformationcollectedfromseleniumAPIhttp://release.seleniumhq.org/selenium-remote-control/1.0-beta-2/doc/java/com/thoughtworks/selenium/Selenium.html#attachFile(java.lang.String,%20java.lang.String))voidattachFile(java.lang.Stringfie

javascript - 使用 Selenium 单击伪元素

我正在尝试使用Selenium单击::after伪元素。我意识到这不能直接通过WebDriver完成,但似乎无法找到使用Javascript的方法。这是DOM的样子:Accounts::after这就是上面的元素的样子。对象的左侧是“按钮”元素,右侧是带箭头的:after元素,单击该箭头会弹出下拉菜单。正如您所看到的那样,右侧没有任何标识符,这在一定程度上使这很难做到。我在stackoverflow中看到了这两个链接,并试图将答案结合起来形成我的解决方案,但无济于事。ClickinganelementinSeleniumWebDriverusingJavaScriptLocatingp

c# - 在 C# 中使用 PhantomJS 获取屏幕截图

这个问题在这里已经有了答案:HowcanItakeascreenshotwithSeleniumWebDriver?(48个回答)关闭8年前。我已将PhantomJS和Selenium添加到我的C#控制台应用程序中,我想在浏览器到达特定元素时对其进行屏幕截图。原因是因为某些原因,当我使用ChromeDriver时它工作正常,但是当我使用PhantomJS时它在一些元素上失败。我想我需要介绍一下如何使用phantomjs在C#中截取屏幕截图。我在互联网上四处张望,似乎每个人都在使用java脚本来执行此操作。我遇到的问题是我不知道如何将java脚本集成到我的C#应用程序中,然后将其与pha

javascript - 如何在 Protractor 中先执行一个元素然后再执行另一个元素

以下代码随机运行,有时运行良好,有时会抛出这样的错误StaleElementReferenceException我想要的是首先执行下面的这个element(by.id('FiltItemTransDocNo')).sendKeys(grno);在上面之后我希望它在下面执行element.all(by.name('chkGrd')).first().click();我试过这种方法,但似乎没有用element(by.id('FiltItemTransDocNo')).sendKeys(grno).then(function(el){element.all(by.name('chkGrd')