
让selenium暂停X秒
我要完成的工作是浏览页面,等待加载内容,然后获取并保存屏幕截图。我已经拥有的代码是WebDriver driver = new FirefoxDriver();driver.get("http://www.site.com");driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);try { File scrFile = ((TakesScreenshot)driver).getScreenshotAs(OutputType.F...
2024-01-10
谷歌地图selenium测试
有人在Google Maps API V3地图上有Selenium测试(或其他浏览器测试环境)的代码示例吗?具体来说,我想与标记和弹出窗口进行交互。回答:解决了。不是100%优雅,但可以。设置optimized :false在标记上。这使它们全部显示在地图上(docs)。然后将Selenium测试中的XPath选择器设置为'//div[@class="gmnoprint"and@titl...
2024-01-10
selenium:元素不可点击
这个问题是由于chrome driver总clicks的中间element在试图忠实于什么实际用户一样。所以我在想这种方法:首先,而不是查找元素,然后单击:driver.fineElement(By.xpath("bla bla")).click()编写单击以下内容的通用函数WebElement:def clickOnWebElement(WebElement webElement) { int counter = 0; boolean isClicked = false; Thread.sleep(100...
2024-01-10
selenium:找到基本网址
我在不同的机器上使用Selenium来自动化MVC Web应用程序的测试。我的问题是我无法获取每台计算机的基本URL。我可以使用以下代码获取当前网址:IWebDriver driver = new FirefoxDriver();string currentUrl = driver.Url;但这对我需要导航到其他页面没有帮助。理想情况下,我可以使用以下内容导航到不同的页面:driver...
2024-01-10
selenium中的单击代表双击
我有一个简单的代码,单击链接即可打开一个新窗口。但是在执行脚本时,单击相当于双击同一元素,并打开2个窗口。我正在使用InternetExplorer驱动程序String baseURL = "URL_to_opened";DesiredCapabilities cap = DesiredCapabilities.internetExplorer();cap.setCapability(InternetExplorerDriver.NATIVE_EVENTS, false);cap.setCapability...
2024-01-10
selenium自动下载文件C#
我尝试设置Firefox以便自动下载文件。我在这里输入链接描述中做了建议,但是我无法使它工作。这是我的代码:FirefoxOptions options = new FirefoxOptions(); options.SetPreference("browser.download.folderList", 2); options.SetPreference("browser.download.dir", "C:\\Windows\\temp"); options.S...
2024-01-10
selenium-存储的会话数据
我在整个互联网上进行搜索,但是找不到答案有明确的解决方案。我在Java中使用Selenium Webdriver。我的测试需要验证何时保存登录信息并关闭浏览器并重新打开,然后这些凭据仍然保留并保存在新会话中。因此,我想关闭当前会话并重新打开它,以验证cookie是否仍保留在页面上,但是Selenium删除了所有...
2024-01-10
selenium:滚动到页面结尾
我是WebDriverJS的新手。我已经在Java中尝试了这种方法。Long repaeted = 0l, scrollHeight = 0l, returnHeight = 0l;while(true){ if (repaeted == 0) { returnHeight = (Long) jse.executeScript("var scroll =document.documentElement.scrollHeight;window.scrollTo(0, scroll); re...
2024-01-10
选择selenium的第N个类型
我正在尝试使用By.cssSelector来捕获类c3的第n个dom元素,其结构如下:<div class="c1"> <div class="c2"> <div class="c3">...</div> </div></div><div class="c1"> <div class="c2"> <div class="c3">...</div> </div></div><div class="c1"> <div class="c2"> ...
2024-01-10
selenium下载时提供文件名
我正在使用selenium脚本,在其中尝试下载Excel文件并为其指定特定名称。这是我的代码:无论如何,我可以给下载的文件指定一个特定的名称吗?码:#!/usr/bin/pythonfrom selenium import webdriverfrom selenium.webdriver.firefox.firefox_profile import FirefoxProfileprofile = FirefoxProfile()profile.set_preference("browser.helperAp...
2024-01-10
通过selenium的类人鼠标移动
像Google ReCaptcha一样,解决验证码的方法之一就是尝试 模仿人的鼠标动作 :移动,悬停和点击。一些用户报告说,随着B样条曲线的作用而使鼠标移动。如何通过selenium将鼠标移动到遵循B样条轨迹的特定元素上?请注意,常规browser.actions().mouseMove(elm).perform();会直接且太快地“跳转”到元素。我的理...
2024-01-10
C#selenium访问浏览器日志
有没有一种方法可以使用selenium捕获c#中的浏览器日志。我正在寻找捕获出现在特定页面上的所有JS错误。在Chrome或Firefox上更可取。我以前在Python中完成过此操作,但是可以在C#中完成吗?回答:要使用Selenium / Chrome / C#设置和检索日志条目,请执行以下操作:ChromeOptions options = new ChromeOptions();opti...
2024-01-10
selenium scrape:
我有一个spider,它抓取一个通过页面上的javascript重新加载内容的网站。为了移至下一页进行抓取,我一直在使用Selenium单击网站顶部的month链接。问题是,即使我的代码按预期方式在每个链接中移动,爬虫也只会将第一个月(9月)的数据抓取几个月,然后返回此重复数据。我该如何解决?from selenium im...
2024-01-10
selenium很多日志(如何删除)
我在 尝试了 我已经尝试了以下代码:java.util.logging.Logger.getLogger(“com.gargoylesoftware.htmlunit”)。setLevel(Level.OFF);java.util.logging.Logger.getLogger(“org.apache.commons.httpclient”)。setLevel(Level.OFF);java.util.logging.Logger.getLogger(ProtocolHandshake.class.ge...
2024-01-10
如何在conda环境中安装Selenium?
我正在尝试在Windows 10的conda环境中安装Seleniumconda install --name myenv selenium但这会返回错误PackageNotFoundError: Package missing in current win-64 channels: - selenium如何完成此软件包的安装?回答:康达使用不同的渠道来搜索包裹。您需要找到支持Win 64的软件包您可以通过以下链接来做到这一点https://anaconda.org/se...
2024-01-10
如何处理selenium中的打印对话框?
我必须处理打印对话框(在浏览器中单击ctrl-p时出现的对话框)。我尝试了:Alert printDialog = driver.switchTo().alert();printDialog.dismiss();但这没用。我也抓不到它的窗口句柄,因为它不是窗口…是否可以处理这些对象?如何处理?回答:不幸的是,WebDriver无法处理这些(或任何其他浏览器或OS对话框)。...
2024-01-10
集成(selenium)测试后回滚数据库
是否有人对从集成测试框架(如Selenium)进行的回滚数据库事务的最佳实践或首选方式有任何建议?这是当前的情况:我们有一个.net Web项目,其中包含许多在单元测试环境中可以正常工作的单元测试-每个测试都继承一个父类,该父类在[SetUp]中打开一个事务,并在其中回滚该事务。 [TearDown]。每次测试...
2024-01-10
selenium加载页面后获取当前URL
我在Java中使用Selenium Webdriver。我想在单击“下一步”按钮从第1页移至第2页后获得当前的url。这是我的代码: WebDriver driver = new FirefoxDriver(); String startURL = //a starting url; String currentURL = null; WebDriverWait wait = new WebDriverWait(driver, 10); foo(driver,startURL)...
2024-01-10
selenium与scrapy的动态页面
我正在尝试使用scrapy从网页中抓取产品信息。我的待抓取网页如下所示:从包含10个产品的product_list页面开始单击“下一步”按钮将加载接下来的10个产品(两个页面之间的网址不变)我使用LinkExtractor跟随每个产品链接进入产品页面,并获取我需要的所有信息我试图复制下一个按钮的ajax调用,但是...
2024-01-10
selenium:在其他元素旁边找到元素
我正在使用Selenium将Web测试添加到我的项目中。我已经有很多使用以下方法检查特定元素的测试:final WebElement dateElement = web.findElement(By.id(elementId));这很好。现在,我还有另一个要求。这是在我生成的页面中:<input type="text" id="dateElement" name="dateElement" value="bunch of monkeys" tabindex="101" placeholder="yyyy-m...
2024-01-10
库版本selenium/guava不兼容
我的应用程序有一个硬依赖com.google.guava:guava:23.3或优于+--- com.github.ben-manes.caffeine:guava:2.6.0| +--- com.github.ben-manes.caffeine:caffeine:2.6.0| \--- com.google.guava:guava:23.3-jre (*)但是我也在使用org.seleniumhq.selenium:selenium-java:3.0.1它与> 22.0的番石榴版本不兼容,如...
2024-01-10
selenium运行约500次测试后崩溃
我正在尝试运行一些动态生成的测试。它们可以完美地工作到大约500,然后我得到下面的错误。谁看过这个吗?ChromeDriver executable needs to be available in the path.我当时认为这可能是机器规格问题。我有一个超线程i5和8GBRAM。看着系统监视器,我看不到内存超过6GB,CPU在任何内核上都从未达到100%。我正在...
2024-01-10
如何让selenium等待ajax响应?
如何让selenium等待日历小部件的加载?现在,我只是Thread.sleep(2500)在将测试用例导出到junit程序后进行操作。回答:我会用waitForElementPresent(locator)这将一直等待,直到元素出现在DOM中为止。如果您需要检查元素是否可见,则最好使用waitForElementHeight(locator)...
2024-01-10
在没有ID的selenium中查找提交按钮
我有一个按钮<input type="submit" class="button button_main" style="margin-left: 1.5rem;" value="something">我无法通过ID或名称找到它,需要提交表格。我尝试这样做:或者,WebDriver在每个元素上都有便捷的方法“提交”。如果在表单中的元素上调用此方法,则WebDriver将在DOM上移动,直到找到封闭的表单,然后在该表单...
2024-01-10
selenium网络自动化中元素不可交互异常
在下面的代码中,我无法在密码字段中发送密码密钥,我尝试单击该字段,清除该字段并发送密钥。但是现在可以使用任何一种方法。但是如果我调试和测试它的工作 public class TestMail { protected static WebDriver driver; protected static String result; @BeforeClass public static void setup() { System.setPrope...
2024-01-10
