【问题标题】:How to remove white space in a string with Robot Framework?如何使用 Robot Framework 删除字符串中的空格?
【发布时间】:2015-09-04 06:00:07
【问题描述】:

我的变量:54、22

我想要什么:54,22

我试过了:

执行Javascript var a = 54, 22;var x = a.split(' ').join('');return x

执行Javascript var a = 54, 22;var x = a.replace(/\s/g, '');return x

记录 ${str.strip()}

但他们都没有解决我的问题。当我分别执行这些代码时,我得到了那个错误:

FAIL : WebDriverException: Message: u'unknown error: Runtime.evaluate throw exception: SyntaxError: Unexpected number\n at Object.InjectedScript._evaluateOn (:895:140)\n at Object.InjectedScript._evaluateAndWrap (:828: 34)\n 在 Object.InjectedScript.evaluate (:694:21)\n(会话信息:chrome=43.0.2357.124)\n(驱动程序信息:chromedriver=2.12.301325 (962dea43ddd90e7e4224a03fa3c36a421281abb7),平台=Windows NT 6.1 SP1 x86_64 )'

如何解决这个问题?

【问题讨论】:

    标签: javascript jquery selenium robotframework


    【解决方案1】:

    使用字符串库

    String library 有一个 Replace String 关键字,您可以使用它来删除空格,而无需求助于运行 javascript:

    *** Settings ***
    | Library | String
    
    *** Test Cases ***
    | Example of removing whitespace
    | | ${value}= | Replace String | 54, 22 | ${space} | ${empty}
    | | Should be equal | ${value} | 54,22
    

    使用评估关键字

    您可以使用Evaluate 关键字运行任意python 代码。例如:

    *** Test Cases ***
    | Example of removing whitespace
    | | ${value}= | Evaluate | "54, 22".replace(" ", "")
    | | Should be equal | ${value} | 54,22
    

    【讨论】:

      【解决方案2】:

      您的变量中缺少逗号,这就是您收到语法错误的原因:

      var a = '54, 22';
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2019-01-07
        • 2011-09-30
        • 2019-03-27
        • 2011-08-23
        • 1970-01-01
        • 2021-09-04
        相关资源
        最近更新 更多