我希望将网页中的所有链接存储为 json 数据,然后使用 jasmine js 检查它们的有效性。但到目前为止,我没有任何运气,因为我找不到办法做到这一点。
describe('savejson', function()
{
var map = new Map();
it('save', function(myarg)
{
browser.ignoreSynchronization = true;
browser.driver.get("https://www.google.co.in");
browser.driver.findElement(by.xpath("//input[@type='text']")).sendKeys("java");
browser.driver.findElement(by.xpath("//button[@name='btnG']")).click();
map = browser.driver.findElement(by.xpath("//a[@href]"));
console.log(map);
});
});
有没有办法将它存储在 map 或任何其他集合中?
最佳答案
您可以简单地将所有链接存储在一个数组中,并在需要时使用结果。看下面的例子。
describe('savejson', function()
{
var urlList=[];
it('save', function(myarg)
{
browser.ignoreSynchronization = true;
browser.driver.get("https://www.google.co.in");
browser.driver.findElement(by.xpath("//input[@type='text']")).sendKeys("java");
browser.driver.findElement(by.xpath("//button[@name='btnG']")).click();
urlList = browser.driver.findElements(by.xpath("//a[@href]"));
});
it('Should validate stored links',function(){
urlList.each(function(linkElement,index){
linkElement.click();
browser.sleep(1000);
expect(browser.driver.getCurrentUrl()).toContain('some URL'); // do whatever you need to assert
browser.navigate().back();
browser.sleep(1000);
})
})
});
关于javascript - 使用 jasmine js 将网页中的所有链接存储为 json 数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40609878/