Javascript 如何使用量角器在类中搜索,在类中查找p标记并验证其部分文本?
我想做的是找到一种方法,使用量角器来定位一个类,并搜索该类中的所有p标记,查看其中是否有任何标记在文本中包含“Glennville,GA” 这就是我一直试图在规范文件中执行的操作:Javascript 如何使用量角器在类中搜索,在类中查找p标记并验证其部分文本?,javascript,angularjs,node.js,jasmine,protractor,Javascript,Angularjs,Node.js,Jasmine,Protractor,我想做的是找到一种方法,使用量角器来定位一个类,并搜索该类中的所有p标记,查看其中是否有任何标记在文本中包含“Glennville,GA” 这就是我一直试图在规范文件中执行的操作: it('should filter results by location', function() { browser.driver.wait(function(){ return browser.driver.isElementPresent(by.id('jobLocationFilte
it('should filter results by location', function() {
browser.driver.wait(function(){
return browser.driver.isElementPresent(by.id('jobLocationFilter'));
});
browser.driver.findElement(by.id('jobLocationFilter')).click();
browser.driver.findElement(by.css('[value="5"]')).click();
browser.driver.wait(function() {
return browser.driver.isElementPresent(by.css('[class="Title"]'));
});
});
基本上,我所做的是从下拉菜单中选择一个选项,我需要编写一个expect来验证我是否选择了该选项。我尝试过很多不同的方法,但似乎找不到一种适合我的方法
这是我正在使用的HTML:
<div class="jobEntry">
<span class="Title">
<a href="/rewrite_your_future/job_postings/122">Lead QA Test Engineer</a>
</span>
<p>Lead QA Engineer Glennville, GA</p>
</div>
我将使用+并最终检查:
我将使用+并最终检查:
如果jobEntry类是唯一的,并且内部只有一个p标记,则应使用以下选项: expect(元素(按.css('[class=“jobEntry”]'))
.element(通过.tagName('p')).getText()).toContain('Glennville,GA') 如果jobEntry类是唯一的,并且您的内部只有一个p标记,那么下面的命令应该可以执行此操作: expect(元素(按.css('[class=“jobEntry”]'))
.element(通过.tagName('p')).getText()).toContain('Glennville,GA') 我尝试了一下,收到了一个以前从未见过的错误。失败:在没有“new”的情况下无法调用类构造函数。你知道这是什么意思吗?@AP1我确定这和我提议的代码无关。你是如何尝试应用建议的解决方案的?嗯,我还没有收到这个错误,你知道这意味着什么吗?我试着在谷歌上快速搜索,但还没有找到太多。我经常使用skype向人们传达编码等信息。如果您愿意,可以在AnthonyClassUse添加我。我一直在努力学习一些东西,你有很多经验,如果我有问题,也许不介意偶尔分享一下。我找到了原因。这是因为最新版本的量角器有一个bug。当我卸载它并安装了早期版本的量角器时,这对我来说很有效!谢谢。我试过了,收到了一个以前从未见过的错误。失败:在没有“new”的情况下无法调用类构造函数。你知道这是什么意思吗?@AP1我确定这和我提议的代码无关。你是如何尝试应用建议的解决方案的?嗯,我还没有收到这个错误,你知道这意味着什么吗?我试着在谷歌上快速搜索,但还没有找到太多。我经常使用skype向人们传达编码等信息。如果您愿意,可以在AnthonyClassUse添加我。我一直在努力学习一些东西,你有很多经验,如果我有问题,也许不介意偶尔分享一下。我找到了原因。这是因为最新版本的量角器有一个bug。当我卸载它并安装了早期版本的量角器时,这对我来说很有效!非常感谢。
exports.config = {
framework: 'jasmine',
seleniumAddress: 'http://localhost:4444/wd/hub',
specs: ['spec.js']
}
var desiredElements = element.all(by.css("div.entry p")).filter(function (elm) {
return elm.getText().then(function (text) {
return text.indexOf("Glennville, GA") >= 0;
});
});
expect(desiredElements.count()).toBeGreaterThan(0);