草庐IT

webdrive

全部标签

c# - Selenium Webdriver 等待元素点击?

我一直在寻找解决方案,但无济于事。我有一个正在单击的按钮,有时需要很长时间才能返回数据,并且驱动程序正在超时并且我猜只是杀死了应用程序。我正在尝试使用WebDriverWait类来完成此操作,但Click()方法在我使用它的方式中不可用。WebDriverWaitwait=newWebDriverWait(browser,newTimeSpan(0,5,0));boolclicked=wait.Until((elem)=>{elem.Click();//Doesn'tWorkreturntrue;});ImplicitlyWait()方法仅用于等待元素加载,但在Click()上超时,因

c# - 在 C# 中的 Selenium WebDriver 中使用特定的 Firefox 配置文件

我正在尝试使用我已经为带有selenium2的firefox设置的配置文件,但没有用于C#的文档。我尝试的代码如下:FirefoxProfileManagerprofileManager=newFirefoxProfileManager();FirefoxProfileprofile=profileManager.GetProfile(profileName);driver=newFirefoxDriver(profile);我看到在Java中可比较的代码使用ProfilesIni而不是FirefoxProfileManager,但在C#中不可用。以这种方式设置驱动程序时,使用的sel

c# - Selenium 2.0 WebDriver 和 :hover pseudoclass 的解决方法

是否有人可以提供一个C#示例来说明如何解决涉及css伪类:hover的已知Selenium问题?基本上,我正在为一个网站进行回归测试,开始使用seleniumIDE(并在VisualStudio2008中构建我的其余代码),并且需要将鼠标悬停在一个div上,使其出现,然后单击一个链接里面说的分区。然而,我所有的努力都失败了,似乎很多人都有这个问题,但没有解决方案。提前致谢! 最佳答案 好的!因此,我感谢您的帮助(我实际上已经看到了该线程,但是.hover()类已被弃用,我无法让它工作。但是,我确实找到了一个可靠的解决方法。varph

c# - Selenium webdriver 选择新窗口 c#

尝试在C#中使用seleniumwebdriver编写一些测试用例,但有一个我不确定如何解决的场景用户场景是在表中搜索患者,选择患者然后打开一个新窗口,然后断言窗口中的各种项目我的问题是我无法选择新窗口来声明任何内容,它不是弹出窗口,它是一个全新的浏览器窗口,但它没有窗口标题/名称来识别它,我怎么会能够将驱动程序焦点切换到此窗口吗?提前致谢 最佳答案 在SeleniumWebDriver中这真的很容易。通过使用SwitchTo方法driver.SwitchTo().Window(driver.WindowHandles.Last()

c# - WebDriver - 元素不可点击 Chrome

我有以下问题。我在Firefox和Chrome上运行测试。在Firefox上测试运行正常,但在ChromeSauceLabs上给出一条消息:unknownerror:Elementisnotclickableatpoint(717,657).Otherelementwouldreceivetheclick:...(Sessioninfo:chrome=36.0.1985.125)(Driverinfo:chromedriver=2.10.267521,platform=WindowsNT6.3x86_64)我在两个测试中以相同的方式通过唯一的css选择器选择元素:driver.Find

c# - 使用 Selenium Webdriver 测试元素是否聚焦

我真的很惊讶我在互联网上找不到使用SeleniumWebdriver测试元素焦点的引用资料。我想检查在缺少必填字段的情况下尝试提交表单时,焦点何时移至空白字段。但我看不到任何使用WebDriverAPI执行此操作的方法。我将能够使用JavascriptExecutor找到焦点元素.但是阅读FAQ让我觉得一定有某种方法可以使用驱动程序本身来执行检查。感谢您的帮助。 最佳答案 driver.switchTo().activeElement()将返回当前聚焦的WebElement。WebElement定义了相等性,因此您可以调用eleme

c# - 使用 selenium C# webdriver 完全关闭浏览器

我正在使用SeleniumC#Webdriver进行一些自动化测试。完成测试后,我想关闭浏览器。我使用以下内容初始化驱动程序:vardriver=newChromeDriver();然后在做了一些事情之后我用关闭它driver.Close();浏览器已正确关闭,但有一个启动此浏览器的窗口仍然挂起。有没有办法关闭它? 最佳答案 driver.Close()用于关闭弹出式浏览器窗口,例如通过单击触发JavaScript中的window.open()调用的链接打开的浏览器窗口.要绝对确定所有资源都已被驱动程序释放和清理,请使用driver

C# 设置默认下载目录 chrome WebDriver?

这是我的解决方案,基于thisquestion但是不行,我需要把googlechrome的默认下载目录改成C:\temp\感谢您的帮助。publicclassChromeOptionsWithPrefs:ChromeOptions{publicDictionaryprefs{get;set;}}publicstaticvoidInitialize(){varoptions=newChromeOptionsWithPrefs{prefs=newDictionary{{"download.default_directory",@"C:\temp\"}}};RemoteWebDriverdr

c# - Selenium:从文件系统拖放到 WebDriver?

我必须测试一个包含拖放区域的网络应用程序,用于从本地文件系统上传文件。我的测试环境基于C#。对于自动化测试,我使用了Selenium,但无法从文件系统中拖动文件。上传区域是一个div标签(没有input标签)。那么最好的方法是什么?AutoIt(是否可以放入网络浏览器)?西库里? 最佳答案 单独使用Selenium是可能的,但这并不简单。它需要在页面中注入(inject)一个新的INPUT元素以通过SendKeys接收文件。然后,脚本需要通过向目标区域发送dragenter、dragover、drop事件来模拟掉落。staticvo

c# - 从 iFrame 切换到父框架并使用 Selenium Webdriver 在父框架中查找元素。 C#

场景:-我有一个带有iFrame文本编辑器的页面,页面中还有一个按钮。-我从父框架切换到iFrame以从文本编辑器正文中读取-从文本编辑器的正文中读取后,我想单击页面父框架中的按钮。-为此,我尝试使用以下语句从iFrame切换回父框架:webDriver.SwitchTo().DefaultContent();-但我仍然无法找到驻留在父框架中的按钮元素。非常感谢您的帮助!谢谢 最佳答案 这就是你们的回应伙计们。解决了!解决方法:当我使用webDriver.SwitchTo().DefaultContent();时,它会将webDri