标签: webdriver

适用于Windows 8 64位的Chrome驱动程序

我是Selenium的新手,只为firefox编写我的测试用例.我也想为Chrome驱动程序编写它.但是我应该在哪里下载Widows 8 64位.

selenium google-chrome webdriver selenium-chromedriver selenium-webdriver

0
推荐指数
1
解决办法
2万
查看次数

Selenium Webdrivers:无需任何资源即可加载页面

我试图阻止Javascript更改我正在使用Selenium测试的网站源代码.问题是,我不能简单地在Webdriver中关闭Javascript,因为我需要它来进行测试.这是我正在为Firefox Webdriver做的事情:

        firefoxProfile.setPreference("permissions.default.image", 2);
        firefoxProfile.setPreference("permissions.default.script", 2);
        firefoxProfile.setPreference("permissions.default.stylesheet", 2);
        firefoxProfile.setPreference("permissions.default.subdocument", 2);
Run Code Online (Sandbox Code Playgroud)

我不允许Firefox加载任何图像,脚本和样式表.如何使用Internet Explorer Webdriver和Chrome Webdriver执行此操作?我没有找到任何类似的偏好.或者甚至有更优雅的方法来阻止webdrivers加载网站的JS文件?谢谢!

javascript java selenium webdriver selenium-webdriver

0
推荐指数
1
解决办法
3209
查看次数

使用ruby运行简单的selenium脚本时出错:<main>':未定义的局部变量或方法''selenium'

我正在尝试使用ruby运行我的第一个selenium webdriver脚本.我安装了ruby,以及webdriver的gem.谷歌搜索这个问题几个小时是相当无果味的 - 任何帮助表示赞赏!

require "selenium-webdriver"

driver = Selenium::WebDriver.for :firefox
driver.navigate.to "http://google.com"

element = driver.find_element(:name, 'q')
element.send_keys "Hello WebDriver!"
element.submit

puts driver.title

driver.quit
Run Code Online (Sandbox Code Playgroud)

我收到此错误消息:

testb.rb:2:in `<main>': undefined local variable or method `‘selenium' for main:Object (NameError)
Run Code Online (Sandbox Code Playgroud)

ruby -v ruby​​ 2.1.1p76(2014-02-24修订版45161)[x86_64-darwin12.0]

gem list返回selenium-webdriver(2.40.0)作为列表的一部分

有人可以指导我一点吗?我认为ruby根本就没有认识到selenium并且无法超越第二行代码 - 是否有另一个步骤将selenium与这个简单的ruby脚本"链接起来"?

ruby firefox selenium webdriver selenium-webdriver

0
推荐指数
1
解决办法
2229
查看次数

即使我抓到它也会抛出NoSuchElementExcpetion?

我不清楚为什么我仍然在这个Webdriver测试中抛出NoSuchElementException?

任何人都可以调试或建议更有效/更多的解决方案吗?

注意 - 如果我尝试使用driver.findElements(By.id("...")),我会得到同样的错误.size()!= 0

    boolean present;
    try{
        driver.findElement(By.cssSelector(".message-bg-color>table>tbody>tr>td>h3"));
        present = true;
    }catch (NoSuchElementException e){
        present = false;
    }

    if(!present) {

       // do some stuff
    }
     else 
    { 
       //do some otherstuff
    }
Run Code Online (Sandbox Code Playgroud)

堆栈跟踪:

org.openqa.selenium.NoSuchElementException: Unable to locate element: {"method":"css selector","selector":".message-bg-color>table>tbody>tr>td>h3"}
Command duration or timeout: 1.17 seconds
For documentation on this error, please visit: http://seleniumhq.org/exceptions/no_such_element.html
Build info: version: '2.41.0', revision: '3192d8a6c4449dc285928ba024779344f5423c58', time: '2014-03-27 11:29:39'
System info: host: 'L-IS08381', ip: '172.19.248.194', os.name: 'Windows 7', os.arch: 'x86', os.version: '6.1', java.version: '1.7.0_51'
Session …
Run Code Online (Sandbox Code Playgroud)

java selenium webdriver selenium-webdriver

0
推荐指数
1
解决办法
149
查看次数

如何通过python + selenium + WebDriver将文本或HTML插入特定的DOM元素?

任何人都可以建议,如何通过Python + selenium + WebDriver将文本或HTML插入特定的DOM元素?

html python selenium webdriver selenium-webdriver

0
推荐指数
1
解决办法
2802
查看次数

无法在IE上使用Java中的Selenium WebDriver获取新的窗口句柄

当我单击页面上的按钮(在IE浏览器中)时,将打开一个新的弹出页面.我尝试获取此弹出窗口的窗口句柄失败了.这是我的第一次尝试:

String baseWin = driver.getWindowHandle();
System.out.println(baseWin);
Set<String>s = driver.getWindowHandles();
Iterator<String> ite = s.iterator();
while ( ite.hasNext() ) {
    String popUpHandle = ite.next();
    if(!baseWin.equals(popUpHandle)) {
        driver.switchTo().window(popUpHandle);
        System.out.println(driver.switchTo().window(popUpHandle).getTitle());
Run Code Online (Sandbox Code Playgroud)

此尝试仅打印基本窗口的句柄,如果第二个print语句放在if()语句之外,但在while()语句之内和if()语句之后,它只是输出基本窗口的标题.所以句柄集似乎只包含基本窗口句柄.

这是我的第二次尝试:

String baseWin = driver.getWindowHandle();
System.out.println(baseWin);
ArrayList<String> popUpWin = new ArrayList<String>(driver.getWindowHandles());
popUpWin.remove(baseWin);
driver.switchTo().window(popUpWin.get(0));
System.out.println(driver.switchTo().window(popUpWin.get(0)));
Run Code Online (Sandbox Code Playgroud)

此尝试返回一个错误,该错误表示数组popUpWin为空,即size == 0.因此,当我调用driver.getWindowHandles()并且仅包含基本窗口的句柄时,不会检索弹出窗口的句柄.这是IE问题吗?有解决方法吗?或者我在代码中忽略了什么?(请注意,我忽略了我在此处包含的代码中的暂停,所以我不相信这是问题.)

java selenium webdriver popup selenium-webdriver

0
推荐指数
1
解决办法
7948
查看次数

如何在foreach循环中使用foreach循环?

我需要按类查找页面中的所有元素并单击它们,然后在每个元素中,我需要按类查找所有其他元素并单击,我该如何以简单的方式执行此操作?我尝试在foreach循环中使用foreach循环,但它无法正常工作

var select2arrow = driver.FindElements(By.ClassName("select2-arrow"));
foreach (IWebElement element in select2)
{
    try
    {
        element.Click();
        var select2title = driver.FindElements(By.ClassName("title"));
        foreach (IWebElement element in select2title )
        {
            try
            {
                element.Click();
            }
        }
    }
    catch (Exception ex)
    {
         if (TestRunner.LogTestReports)
         {
                    driver.SaveScreenshot(ex);
         }
    }
}
Run Code Online (Sandbox Code Playgroud)

c# foreach selenium webdriver selenium-webdriver

0
推荐指数
1
解决办法
756
查看次数

ChromeOptions AddUserProfilePreference

我正在使用带有Java的Webdriver 3.3.1.我试图禁用弹出窗口要求保存密码.根据搜索结果我需要使用ChromOptions.AddUserProfilePreference("","")但是,没有AddUserProfilePreference,唯一的add方法是addArguments.

我正在使用Eclipse Neon.2和Java 1.8

java selenium webdriver

0
推荐指数
1
解决办法
3167
查看次数

WebElement.findElement方法是在WebDriver范围下查找元素

我有以下HTML代码,我试图运行我的selenium测试

<html>

<head></head>

<body>
  <table id="Original">
    <tr>
      <td>Original-11</td>
      <td>Original-12</td>
      <td>Original-13</td>
    </tr>
    <tr>
      <td>Original-21</td>
      <td>Original-22</td>
      <td>Original-23</td>
    </tr>
    <tr>
      <td>Original-31</td>
      <td>Original-32</td>
      <td>Original-33</td>
    </tr>
  </table>

  <br/><br/>

  <table id="Duplicate">
    <tr>
      <td>Duplicate-11</td>
      <td>Duplicate-12</td>
      <td>Duplicate-13</td>
    </tr>
    <tr>
      <td>Duplicate-21</td>
      <td>Duplicate-22</td>
      <td>Duplicate-23</td>
    </tr>
    <tr>
      <td>Duplicate-31</td>
      <td>Duplicate-32</td>
      <td>Duplicate-33</td>
    </tr>
  </table>
</body>

</html>
Run Code Online (Sandbox Code Playgroud)

selenium java代码如下所示:

public static void main(String[] args) throws Exception
    {
        System.setProperty("webdriver.chrome.driver", System.getProperty("user.dir") + "/src/test/drivers/chromedriver.exe");

        WebDriver drv = new ChromeDriver();
        drv.get("C:/Users/MYUserName/git/er_test/SeleniumTestHtml.html");

        WebElement tableElement = drv.findElement(By.id("Duplicate"));
        WebElement rowElement = tableElement.findElement(By.xpath("//tr[2]"));
        WebElement cellElement = rowElement.findElement(By.xpath("//td[2]"));
        System.out.println(rowElement.getText());
        System.out.println(cellElement.getText());

        drv.close();
        drv.quit();

    } …
Run Code Online (Sandbox Code Playgroud)

java selenium webdriver

0
推荐指数
1
解决办法
1144
查看次数

0
推荐指数
1
解决办法
1295
查看次数