javascript - 使用 jasmine js 将网页中的所有链接存储为 json 数据

标签 javascript json jasmine protractor karma-jasmine

我希望将网页中的所有链接存储为 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/

相关文章:

node.js - protractor-jasmine2-screenshot-reporter 未在所需文件夹中生成屏幕截图

JavaScript 将 4 个字节的数组转换为从 modbusTCP 读取的浮点值

Javascript:当存在多个单选按钮时如何从选中的单选按钮获取值

javascript - 查询具有多个参数的 JavaScript 对象

javascript - 使用 fetch 检查内容

python - 如何确保我的 Python 正则表达式输出字典?

javascript - 我发现使用 log4js-protractor-appender 有问题

javascript - 您可以将it() block 嵌套在请求回调中吗?

javascript - Angularjs 动态表单内容

javascript - 如何通过javascript实现CTRL或SHIFT+<letter>的快捷键组合?