草庐IT

Watir-webdriver

全部标签

c# - Selenium WebDriver - 找不到 Chrome 二进制文件

我正在尝试使用Chrome运行Selenium测试。我正在使用C#。varoptions=newOpenQA.Selenium.Chrome.ChromeOptions();options.BinaryLocation=@"C:\Users\Vilem\AppData\Local\Google\Chrome\Application\";using(IWebDriverdriver=newOpenQA.Selenium.Chrome.ChromeDriver(options)){...似乎找到了chromedriver.exe,但它可以找到Chrome二进制文件。我在自动搜索失败后显式设

c# - 从 Selenium webdriver 的当前窗口 GUID 获取窗口句柄 (IntPtr)

我正在trycatch整个浏览器屏幕(例如任何工具栏、面板等)的屏幕截图,而不仅仅是整个页面,所以我得到了这段代码:using(FirefoxDriverdriver=newFirefoxDriver()){driver.Navigate().GoToUrl(url);ScreenCapturesc=newScreenCapture();//HowcanIfindnaturalIntPtrhandleofwindowhere,usingGUID-likeidentifierreturningbydriver.currentWindowHandle?Imageimg=sc.Capture

c# - Selenium WebDriver.ChromeDriver Nuget 包已安装,但不适用于 MSTest

我添加了WebDriver.ChromeDrivernuget包到我的解决方案,其中包含ChromeDriver.exe文件,SeleniumWebDriver需要使用Chrome运行自动测试。查看包内容,它只包含以下文件:tools\chromedriver.exe应该要做的是将此文件夹添加到PATH环境变量中,以便可以通过以下代码访问chromedriver.exe(这是在UnitTest项目中使用MSTest):[TestMethod]publicvoidLaunchWebsite_Chrome(){//createChromeDriver-thisshouldworkifchr

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