Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/64.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/138.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Protractor GragratorJS测试-如何使用:contains(';someText';)-可能错误地转义字符串_Protractor - Fatal编程技术网

Protractor GragratorJS测试-如何使用:contains(';someText';)-可能错误地转义字符串

Protractor GragratorJS测试-如何使用:contains(';someText';)-可能错误地转义字符串,protractor,Protractor,我有一个需要测试的角度表单,我想通过它的textnode内容选择一个没有标识的项目。在其他平台上的jquery和selenium中,我能够使用一个名为:contains()的特殊css选择器来查找内容 ptor.findElement(protractor.By.css('label:contains(\'some text\') > input')).getAttribute('value').then(function (value) { expect(value).toCon

我有一个需要测试的角度表单,我想通过它的textnode内容选择一个没有标识的项目。在其他平台上的jquery和selenium中,我能够使用一个名为:contains()的特殊css选择器来查找内容

ptor.findElement(protractor.By.css('label:contains(\'some text\') > input')).getAttribute('value').then(function (value) {
    expect(value).toContain('myExpectedValue');
});
当我运行这个程序时,我得到一个关于无效字符串的词法错误。我尝试了多种方法来转义字符串中的引号。我还尝试了一个xpath表达式,它在引入引号后做了同样的事情。它看起来像这样:

ptor.findElement(protractor.By.xpath('//label[text()="some text"]/descendant::input[1])')).getAttribute('value').then(function (value) {
    expect(value).toContain('myExpectedValue');
});
同样的失败

1:量角器中是否有:contains selenium功能?
他说:我是不是把绳子脱错了

请不要告诉我在对象上附加标识。我不允许修改标记

  • 不能将:contains与pergrator.By.css定位器一起使用,因为:contains不是CSS3规范的一部分(请参阅)

  • 我不知道您的xpath有什么问题,但这不是转义。我在量角器中使用过类似的xpath字符串

  • 更新:

    为响应缺少“:contains”选择器,为此创建了一个新定位器:

    示例:By.cssContainingText('ul.pet','Dog')将找到类为'pet'且包含文本'Dog'的所有ul子级。阅读更多关于它的信息


    注意:您可能需要更新,因为较旧版本的量角器没有此选择器。

    我们的团队使用Selenium RC,它添加了:contains作为测试的自定义选择器。我曾假设,自从dragrator.js包装了selenium webdriver之后,我们习惯于在selenium rc中使用的所有东西都会在那里。