小编Rip*_*sim的帖子

检查Selenium中的HTTP状态代码

如何在Selenium中获取HTTP状态代码?

例如,我可以测试一下,如果浏览器请求/ user/27并且没有ID = 27的用户,则返回HTTP 404?

我的主要兴趣是Selenium RC,但如果有人知道"正常"硒的答案,我可以很容易地将其翻译成RC.

/皮特

selenium selenium-rc

44
推荐指数
3
解决办法
5万
查看次数

如何删除重音并将字母转换为"普通"ASCII字符?

什么是从字符串如取出口音的最有效的方式ÈâuÑ变成Eaun

是否有一种简单的,内置的方式,我缺少或正则表达式?

php regex string ascii

44
推荐指数
5
解决办法
6万
查看次数

如何在Selenium WebDriver Java中使用JavaScript

我想使用Java与WebDriver(Selenium 2)一起使用JavaScript.

我已经按照一些指南和" 入门"页面进行操作:第一行有一条指令可以运行:

$ ./go webdriverjs
Run Code Online (Sandbox Code Playgroud)

我的问题:从哪个文件夹/位置运行/执行上面提到的命令?

javascript java selenium-webdriver

44
推荐指数
2
解决办法
24万
查看次数

Python有像Capybara/Cucumber一样的东西吗?

Ruby在Selenium之上有一个很棒的抽象层,称为Capybara,您可以使用它进行功能/接受/集成测试.它还有另一个名为Cucumber的库,它更进了一步,让你真正用英语编写测试.

这两个库都是在Selenium之上构建的,可以用来测试任何主要的浏览器,但由于它们的抽象层,使用它们编写测试非常容易(好吧,就像功能测试一样简单).

我的问题是:Python有类似的东西吗?我发现Pythonistas使用各种工具进行功能测试但是......

A)Splinter:不使用Selenium(并且没有IE驱动程序)

-EDIT- 看来Spliter现在确实使用了Selenium(见下面的答案).

B)Alfajor:一年多来没有更新; 看起来死了

C)Selenium(原始):很多人似乎直接使用Selenium,但它似乎是一个抽象层可以使它更容易使用

那么,对于Python来说,有没有人知道类似Capybara的东西,或者更好的类似Cucumber的东西(它不必实际使用Selenium,但它需要支持所有主流浏览器)?

*编辑*

对于那些不熟悉Capybara的人来说,它基本上只是添加了一个API,因此您可以执行以下操作来代替正常的Selenium API:

When /I sign in/ do
  within("#session") do
    fill_in 'Login', :with => 'user@example.com'
    fill_in 'Password', :with => 'password'
  end
  click_link 'Sign in'
end
Run Code Online (Sandbox Code Playgroud)

它被Cucumber使用,让你进一步抽象(几乎到英文):

Scenario Outline: Add two numbers
Given I have entered <input_1> into the calculator
And I have entered <input_2> into the calculator
When I press <button>
Then the result should be <output> on the screen

Examples:
| input_1 | input_2 | button | output | …
Run Code Online (Sandbox Code Playgroud)

python acceptance-testing functional-testing

42
推荐指数
6
解决办法
3万
查看次数

用Java创建Excel文件

我想创建一个Excel文件并写入数据就像用Java编写文本文件一样.我试图将文件扩展名更改.txt.xls.但我想在Excel文件中加粗字母.我怎样才能做到这一点?

我尝试过使用JXL API,但每次创建标签时都要添加标签.不能编辑表的行和列吗?

java excel jexcelapi

41
推荐指数
4
解决办法
20万
查看次数

Eclipse:语法错误,参数化类型仅在源级别为1.5时才有

我尝试使用以下代码:

ArrayList<String>
Map<String, String>
Run Code Online (Sandbox Code Playgroud)

Eclipse抱怨它们两者:语法错误,参数化类型仅在源级别为1.5时才会出现.

我使用JDK 1.6,但即使我去编译器并将合规性切换到1.5.它仍然给我这个错误.任何想法为什么?

java eclipse

41
推荐指数
7
解决办法
11万
查看次数

DeslenCapabilities在Selenium WebDriver中的用途是什么?

DeslenCapabilities在Selenium WebDriver中的用途是什么?

什么时候想用这个怎么样?

回答示例将不胜感激.

selenium-webdriver

41
推荐指数
3
解决办法
12万
查看次数

Selenium WebDriver等到元素显示

我在谷歌和SO网站上搜索过,我得到了JAVA的答案,但似乎没有得到node.js的答案

我有一个需要时间加载的网络应用程序.我会selenium程序等到页面加载然后执行一些操作.

我目前的代码如下

//dependencies
var webdriver = require('selenium-webdriver'),
    util = require('util'),
    _ = require('underscore');

var driver = new webdriver.Builder().withCapabilities(webdriver.Capabilities.chrome()).build();
var branchName =  _.isUndefined(process.argv[3]) ? 'branch' : process.argv[3], 
    hostName = _.isUndefined(process.argv[2]) ? 'localhost' : process.argv[2],
    appTmpl = 'http://%s/%s',
    username = 'xxxx',
    password = 'xxxx';
var appUrl = util.format(appTmpl, hostName, branchName);

driver.get(appUrl);
driver.findElement(webdriver.By.name("username")).sendKeys(username);
driver.findElement(webdriver.By.name("password")).sendKeys(password);
driver.findElement(webdriver.By.name("login_button")).click();
driver.quit();
Run Code Online (Sandbox Code Playgroud)

我得到的错误是:

    C:\Work\study\selenium\node_modules\selenium-webdriver\lib\webdriver\promise.js:1643
      throw error;
            ^
NoSuchElementError: no such element
  (Session info: chrome=37.0.2062.103)
  (Driver info: chromedriver=2.10.267521,platform=Windows NT 6.1 SP1 x86_64)
    at new bot.Error (C:\Work\study\selenium\node_modules\selenium-webdriver\lib\atoms\error.js:109:18)
    at Object.bot.response.checkResponse (C:\Work\study\selenium\node_modules\selenium-webdriver\lib\atoms\response.js:106:9) …
Run Code Online (Sandbox Code Playgroud)

javascript node.js selenium-webdriver

40
推荐指数
4
解决办法
7万
查看次数

使用Java在Selenium WebDriver(selenium 2)中进行警报处理

我想检测是否弹出警报.目前我使用以下代码:

    try {
        Alert alert = webDriver.switchTo().alert();

        // check if alert exists
        // TODO find better way
        alert.getText();

        // alert handling
        log().info("Alert detected: {}" + alert.getText());
        alert.accept();
    } catch (Exception e) {
    }
Run Code Online (Sandbox Code Playgroud)

问题是,如果对网页的当前状态没有警觉,等待特定的时间量,直到达到超时,则抛出一个异常,因此性能实在是太差了.

有没有更好的方法,也许是一个警报事件处理程序,我可以用它来动态发生警报?

java alert popup selenium-webdriver

39
推荐指数
2
解决办法
14万
查看次数

将罗马数字转换为十进制

我设法让我的代码将大多数罗马数字转换为适当的十进制值.但它不适用于某些特殊情况.示例:XCIX= 99但我的代码打印出来109.

这是我的代码.

public static int romanConvert(String roman)
{
    int decimal = 0;

    String romanNumeral = roman.toUpperCase();
    for(int x = 0;x<romanNumeral.length();x++)
    {
        char convertToDecimal = roman.charAt(x);

        switch (convertToDecimal)
        {
        case 'M':
            decimal += 1000;
            break;

        case 'D':
            decimal += 500;
            break;

        case 'C':
            decimal += 100;
            break;

        case 'L':
            decimal += 50;
            break;

        case 'X':
            decimal += 10;
            break;

        case 'V':
            decimal += 5;
            break;

        case 'I':
            decimal += 1;
            break;
        }
    }
    if (romanNumeral.contains("IV")) …
Run Code Online (Sandbox Code Playgroud)

java

39
推荐指数
4
解决办法
9万
查看次数