如何用量角器测试html链接?

2023-12-10

我是量角器新手,想测试链接是否有效。 我理解尝试获取元素 id 但我应该期望链接等于什么?

还有人有关于量角器测试示例的任何好的文档吗? 我经历过这个http://angular.github.io/protractor/#/tutorial这很有帮助,但我需要更多我可以做的可能测试的例子。

到目前为止我有这个:

it('should redirect to the correct page', function(){
        element(by.id('signmein').click();
        expect(browser.driver.getCurrentUrl()).toEqual("http://localhost:8080/web/tfgm_customer/my-account");
    });

想测试链接是否有效

这有点宽泛 - 这可能意味着链接有一个适当的href属性,或者单击链接后应该打开一个新页面。

要检查href属性、用途getAttribute():

expect(element(by.id('myLink')).getAttribute('href')).toEqual('http://myUrl.com');

要单击链接,请使用click(),要检查当前 URL,请使用getCurrentUrl():

element(by.id('myLink').click();
expect(browser.getCurrentUrl()).toEqual("http://myUrl.com");

请注意,如果单击后打开了非角度页面,则需要尝试一下ignoreSynchronization标志,参见:

  • 单击后打开非角度页面

如果链接在新选项卡中打开,您需要切换到该窗口,检查 URL,然后切换回主窗口:

element(by.id('myLink')).click().then(function () {
    browser.getAllWindowHandles().then(function (handles) {
        browser.switchTo().window(handles[handles.length - 1]).then(function () {
            expect(browser.getCurrentUrl()).toEqual("http://myUrl.com");
        });

        // switch back to the main window
        browser.switchTo().window(handles[0]);
    });
});
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何用量角器测试html链接? 的相关文章

  • Knockout.js 安全绑定

    我想使用带有淘汰赛的安全绑定 为此我使用敲除安全绑定 js https github com brianmhunt knockout secure binding 谁能解释一下为什么下面的代码不起作用 它会抛出一个错误 未捕获 淘汰 安全
  • 在 HTML5 iOS 7 / iOS 8 中显示十进制键盘

    经过几个小时的搜索后 我只是有一个简单的问题 是否有可能在网络浏览器输入字段中显示小数键盘 input type number 只显示数字 但我需要在左下角使用逗号或点 我尝试过任何事情 pattern step等等 但没有显示十进制键盘
  • AngularJS - 获取已定义路由的列表 - $routeProvider

    我正在尝试实施named routes 所以我不必写整个路径 经常改变 我想我可以编写一个服务来返回定义的路由列表和一个将对象转换为路由的过滤器 使用示例如下所示 a Click here a 假设我已将 name detail 添加到我的
  • 使用 jasmine 在 angularJS 中注入服务来测试控制器

    我想了解如何使用 jasmine 和 angularJS 测试我的代码 我编写了一个带有控制器和注入服务的测试项目 现在我想测试控制器并尝试模拟注入的服务 但我没有找到一种方法来测试我的控制器的 到达 功能 这是我的jsfiddle htt
  • 从 html 属性中删除单引号和双引号,并且除 href 和 src 之外的所有属性上都没有空格

    我正在尝试从 html 属性中删除单引号和双引号 这些属性是没有空格的单个单词 我写了这个有效的正则表达式 type title data toggle colspan scope role media name rel id class
  • HTML5

    我想在随机位置开始和停止 HTML5 播放 并具有淡入和淡出周期 以平滑聆听体验 为此存在什么样的机制 使用 setTimeout 手动增加音量 jQuery 的方式 audio animate volume newVolume 1000
  • AngularJS - 关闭模态窗口

    我的内容包括 bootstrap css getbootstrap com 2 3 2 angular ui bootstrap tpls 0 10 0 min js from angular ui github io bootstrap
  • 使用绝对定位时文本被破坏

    我有一个小挑战 我在 Stack Overflow 上没有找到任何解决方案 这就是我得到的 这就是我想要的 为了产生这个标题效果 我使用绝对位置 我什至不知道我的标题的宽度和高度 因此 使用此解决方案时 大文本会中断 My HTML div
  • HTML5 仅拖放图像

    我想做的是 如果所有拖动的文件都是图像 则将其删除 但如果有其他文件扩展名 则不要删除它们 而仅删除图像 这是我的尝试 HTML div div JavaScript var dropzone document getElementById
  • 通过 jQuery 选择动态 HTML 元素

    我正在构建一个 ASP NET MVC 应用程序 并且正在使用jQuery Blueimp https github com blueimp jQuery File Upload动态添加到页面的 PartialView 上的插件 根据插件的
  • 如何使用 HTML 5 实现类似 gmail 的文件上传/附件

    我记得一些支持 Ajax 之类的选项 无回发世界 文件上传 隐藏的 iframe 使用 flash 对象 尽管我仍然好奇为什么使用 SWF 以及它提供什么优势 然而 通过查看博客 HTML 5 似乎很有前途 我尝试了一些小示例 它确实有效
  • 在随机位置启动 HTML5

    我有一个大约 2 小时长的音轨 我想在我的网站上使用它 我希望它在页面加载时在随机位置开始播放曲目 使用 HTML5 可以吗 我知道您可以使用 element currentTime 函数来获取当前位置 但是如何在完全下载之前获取曲目的总时
  • 如何更改 Angular ui Bootstrap 日期选择器弹出窗口的大小?

    这就是我所指的 http angular ui github io bootstrap http angular ui github io bootstrap 我没有看到任何指示如何控制大小的内容 我尝试更改正文字体 但没有成功 可以通过覆
  • 如何通过 jQuery 中的类获取特定 html 元素的innerHTML?

    我有这样的 HTML 代码 div class a html value 1 div div class a html value 2 div 我怎样才能访问html value 1 and html value 2使用jquery 分别地
  • 为什么我无法将 $location 注入到我的 config() 中?

    为什么这会给我一个错误 angular module app config function routeProvider locationProvider httpProvider location 未捕获的错误 未知的提供商 来自应用程序
  • CSS 精灵按钮

    这些精灵按钮让我抓狂 我几乎可以让他们工作 但不完全是 我正在玩这个非常简单的精灵图像 我有一个 jsfiddle 项目 gt gt 这里 如果你想看的话 但如果你只想看一下 代码就在下面 http jsfiddle net jp2code
  • Service Worker 与 Shared Worker

    Service Worker 和 Shared Worker 有什么区别 我什么时候应该使用 Service Worker 而不是 Shared Worker 反之亦然 Service Worker 具有共享 Worker 之外的附加功能
  • 模拟pytest中的异常终止

    我的多线程应用程序遇到了一个错误 主线程的任何异常终止 例如 未捕获的异常或某些信号 都会导致其他线程之一死锁 并阻止进程干净退出 我解决了这个问题 但我想添加一个测试来防止回归 但是 我不知道如何在 pytest 中模拟异常终止 如果我只
  • 动态加载的输入框不执行任何操作

    所以我有一些 html 会根据用户所在的 QuestionNumber 动态加载到 panel div 中 这不是全部代码 而是我认为的所有相关代码 无论如何
  • 以角度访问窗口 TemplateUrl 内的范围

    我的模式有一个 windowTemplateUrl 如下 div class modal fade div class modal dialog div class modal content square btn div div div

随机推荐

  • 使用 Powershell 调用 Web 服务上的异步 Web 方法

    我正在使用 PowerShell V2 并尝试找到使用 Web 服务代理调用异步 Web 方法的示例 这是我到目前为止的代码 Uri http localhost mywebservice asmx wsdl proxy New WebSe
  • Linq 在单个集合中检查重叠的日期范围

    Class TimeRange private DateTime StartDate get set private DateTime EndDate get set List
  • 有没有办法告诉 Rust 编译器在处理恐慌时对部分初始化的数组元素调用 drop ?

    我正在研究自定义类型 我有以下要求 避免堆分配的元素的集合 我使用数组而不是Vec 该集合包含不可复制的类型 实施Default对于也实现的类型Default 实施From这样我就可以直接从数组构建它 我最大的问题是实施Default以安全
  • java.lang.StringIndexOutOfBoundsException:字符串索引超出范围

    你好 我写了一个java代码来查找由其他单词组成的最长单词 我的逻辑是从文本文件中读取单词列表并将每个单词添加到一个数组中 在文本中单词已排序 每行中只有一个单词 之后 我们检查数组中的每个元素是否有其他元素作为子字符串 如果是这样 我们计
  • 增加字符串末尾的数字

    我正在尝试解决一个问题 该问题表示要添加1在一个的末尾string 意思是 1 abcd12会变成 abcd13 2 abcd099会变成abcd100 3 abcd01会变成abcd02 4 ddh add 2204会变成ddh add
  • Git 允许通过未暂存的更改进行分支更改

    当我有未暂存的更改 修改后的文件 时 Git 允许我更改分支 某处有这方面的配置吗 编辑 起初我认为这是一个配置 我需要将其设置为如果存在已修改的未暂存文件 则禁止在分支之间进行更改 但根据艾米丽的评论 如果分支之间的文件不同 系统似乎会提
  • 错误 438 对象不支持此属性或方法 - 带字典的类对象

    Background 这是一个后续问题this我最近问的问题是如何返回数组Class模块属性直接来自Dictionary item 我现在已经尝试过与Property Let and Property Get填充一个Private Arra
  • 扩展 UserCreationForm 时排除密码

    我想创建一个视图 用户可以在其中更改其用户对象的属性 名字 姓氏和电子邮件地址 Django 有一个内置的 UserCreationForm 用于创建用户 我已经有了一个扩展版本 其中还包括电子邮件 名字和姓氏 现在我正试图将其扩展到not
  • 如何在 Git 上发送拉取请求

    我们最近从 SVN 迁移到了 Git 我们在 LAN 网络中的一台计算机上设置了一个裸存储库 并在其他计算机上克隆 现在 当任何人进行更改并提交时 我们希望他将拉取请求发送到裸存储库 通过告诉或电子邮件或任何其他方式 之后人们将完成更改并将
  • Python:类型错误:需要 str、字节或字节数组,而不是 int

    我正在尝试创建一个简单的基于服务器到客户端的聊天程序 问题是当我尝试执行c sendto data client 出现此错误说明Client是一个 int 但它是一个包含端口号和地址的元组 我应该将元组转换为字节以便我可以将消息发送给客户端
  • 如何通过 Genson/Jersey 配置日期格式化程序?

    我使用 Jersey 来实现 RESTful 服务 使用 Genson 来执行 JSON POJO 转换 Genson 没有设置 我只是将它放入类路径中 它就可以工作 只是它会在日期解析时抛出错误 因为格式是意外的 现在 如果我要使用 Gs
  • Google Test 单独项目 - 如何针对 C++ 项目运行测试

    我试图弄清楚如何使用 CMake 针对我的 C 项目运行 Google Test 到目前为止 我已经创建了一个名为 Simple 的项目和一个名为 SimpleTest 的 Google 测试项目 对于简单的项目 这是我的 CMakeLis
  • 如何将 CKEditor 与 Heroku 集成?

    这有点棘手 因为 Heroku 在 Dyno Grid 上使用只读文件系统 这意味着当尝试远程安装 ckeditor 时 我收到错误 heroku rake db migrate rake aborted Read only file sy
  • 从 Github 安装超时 R 包

    我正在尝试从 github 安装 R 包devtools包裹 但我每次都会遇到来自curl的超时错误 install github ramhiser datamicroarray Error in curl curl fetch disk
  • 微软十六进制日期

    我从 Microsoft SQL Server 数据库中获取了以下日期 时间值 0x00009CEF00A25634 我找到了这个帖子 帮助我将以十六进制表示的长值转换回日期 时间 这似乎是在正确的轨道上 但通过使用代码我没有得到正确的日期
  • ftp_nlist(): data_accept: SSL/TLS 握手失败

    曾几何时 PHP 领域存在一个常见错误 警告 ftp nlist data accept 第 29 行 path 中 SSL TLS 握手失败 但这里有一个问题 第 29 行 不是连接或登录 请注意它是如何引用的ftp nlist 功能 f
  • 使用数组的 VBA 自动过滤器 - 如果条件不在过滤列表中,则忽略它

    我一直在寻找解决这个 VBA 自动过滤问题的方法 任何想法都会受到赞赏 我在命名范围 FslList 中有一个自动过滤条件的静态列表 我已将其转换为一维数组 用于自动过滤数据工作表中的第 14 列 Dim FSLArray As Varia
  • 尝试在 Cordova 中启动 Intent 时出现 ActivityNotFoundException

    如何在 Android 清单中创建活动 意图来修复以下错误 我在用https github com MaginSoft MFileChooser我可以在浏览器中看到选择器和文件 但出现 android content ActivityNot
  • 获取 TreeView 逻辑元素的 TreeViewItem

    我的树视图看起来像这样
  • 如何用量角器测试html链接?

    我是量角器新手 想测试链接是否有效 我理解尝试获取元素 id 但我应该期望链接等于什么 还有人有关于量角器测试示例的任何好的文档吗 我经历过这个http angular github io protractor tutorial这很有帮助