草庐IT

Selenium

全部标签

javascript - 如何设置浏览器视口(viewport)大小

我正在尝试创建一个跨浏览器的Python-Selenium测试脚本。因此,无论我使用哪种webdriver(Chrome或IE),我都需要所有结果都相同。我可以按如下方式设置浏览器窗口大小:driver.set_window_size(1920,1080)但是下面的代码将为Chrome和IE返回不同的值:element=driver.find_element_by_xpath('some_xpath')element.location视口(viewport)区域(显示网页内容的地方)大小不同(Chrome-1910x998,IE-1904x965)尽管窗口大小相同。为了获得这些值,我使

javascript - 尝试运行 Selenium Webdriver (WebdriverJS) 的示例测试时出错

我正在尝试在位于\node_modules\selenium-webdriver\example的文件google_search_test.js中运行示例测试。我正在使用WebdriverJS,并且只在我的系统中安装了selenium-webdriverNPM包。我已移动到命令提示符中的该路径位置并运行以下命令:nodegoogle_search_test.js我收到以下错误:错误描述:Path\node_modules\selenium-webdriver\example>nodegoogle_search_test.jsPath\node_modules\selenium-webd

javascript - 使用 Protractor 进行 Chrome 仿真测试的有效设备名称是什么?

普遍的网络共识似乎是,如果您在chrome模拟器中看到一个名称,您可以在Protractor配置中按原样使用它...所以我尝试了AppleiPad:{browserName:'chrome',chromeOptions:{mobileEmulation:{deviceName:'AppleiPad'}}}但我不得不四处乱逛,直到反复试验得出正确的设备名称为:AppleiPad3/4现在我在这里搜索:https://developer.chrome.com/devtools/docs/device-mode#enable-device-mode在这里:https://sites.goog

javascript - 如何以编程方式在 CKEDITOR 中选择文本范围?

问题:我的JavaScript中有一个CKEditor实例:vareditor=CKEDITOR.instances["id_corpo"];我需要以编程方式插入一些文本,然后选择一些文本范围。我已经插入文本了editor.insertHtml('Thisisafoobarheader');但我需要通过javascript以编程方式选择(突出显示)单词“foobar”,以便我可以使用selenium通过我的CKEditor插件进行一些功能测试。更新1:我也试过类似的东西varselection=editor.getSelection();varchilds=editor.documen

javascript - 如何将键发送到焦点元素?

在我的测试中,我有许多模式和下拉菜单,它们打开并自动将焦点设置在它们的输入框上。我已经看到可以断言元素处于焦点中。但是有什么快捷方式可以将键发送到当前处于焦点的元素吗?我希望能够跳过每次查找每个元素的所有工作。 最佳答案 您可以使用selenium的activeElement()特性来访问当前聚焦的元素source.例如//selectthecurrentpagecontext'sactiveelementbrowser.switchTo().activeElement().sendKeys('Test')

javascript - 如何使用 node.js 在 selenium webdriver 中选择下拉值

我有以下HTML结构:AndorraUnitedArabEmiratesAfghanistanNetherlandsAntilles那么我怎样才能从列表中获取项目呢?我是Node.Js(JavaScript)的新手,所以我不知道如何在node.Js中实现它,但它可以在java中实现,如下所示:Selectdropdown=newSelect(driver.findElement(By.class("dropdown-menuinnerselectpicker")));dropdown.selectByVisibleText("Andorra"); 最佳答案

Web自动化测试(二)—— Selenium-API操作

其他Web测试知识参考:Web自动化测试 目录一、元素定位1、如何进行元素定位?2、浏览器开发者工具2.1、如何使用浏览器开发者工具二、元素定位方式1、id定位2、name定位3、class_name定位 4、tag_name定位 5、link_text定位6、partial_link_text定位7、定位一组元素三、XPath、CSS定位 1、什么是XPath?2、XPath定位策略(方式) 2.1、路径定位(绝对路径、相对路径)2.2、利用元素属性2.3、属性与逻辑结合 2.4、层级与属性结合 2.5、XPath-延伸3、什么是CSS定位?4、CSS定位常用策略(方式)4.1、id选择器4

javascript - 使用 capybara 捕获浏览器控制台日志

我需要使用Ruby和Capybara捕获浏览器的控制台日志(类别:信息)。到目前为止,我已经尝试使用driver.manage.logs.get(:browser)或(:client)但是,使用它,结果不是我想要的。它给出了selenium和浏览器之间的交互结果,我可以在其中看到我的javascript语句已发送执行,但结果输出无法被捕获。 最佳答案 使用selenium时日志是否可用取决于您使用Selenium的浏览器。如果您使用的是Firefox,那您就不走运了,因为它不支持日志检索API,但是由于您使用的是Chrome,因此可

javascript - WebDriverIO Selenium 将命令行参数从 config.js 文件传递​​到 Chrome

我需要chrome运行带有disable-web-security标志的UI测试。如何使用wdio.config文件(http://webdriver.io/)注入(inject)任何命令。capabilities:[{browserName:'chrome'}] 最佳答案 您可以使用goog:chromeOptions在所需功能内设置任何chrome标志capabilities:[{browserName:'chrome','goog:chromeOptions':{args:['disable-web-security']}}]

javascript - Protractor - 如何在配置文件中排除 spec 文件?

假设我有10个规范文件都命名为*********.test.js,我想对除文件Idontwantyou之外的所有9个文件运行我的测试.test.js.目前我在我的config.file中找到我的规范文件:specs:['*.test.js']-这将运行所有10个文件。如何让它运行所有9个测试文件但跳过Idontwantyou.test.js? 最佳答案 您可以通过将规范添加到conf.js文件的排除标记中来排除规范。您还可以添加模式以排除许多具有相似名称的测试脚本。这是如何做到的-exclude:['Idontwantyou.tes