AngularJS Protractor - 如何测试 AJAX 登录调用?

2023-12-31

我有一个按钮,单击后会在 Angular 中发出 AJAX 调用$promise格式。登录成功后会出现$scope变量被更改并且元素如下所示:

<section id="logged-in-section" ng-if="auth.user !== null">
    // Section to display if logged in
</section> 

被展示。我目前正在使用以下内容测试上述内容:

loginButton.click();
browser.sleep(2000);
expect($("#logged-in-section").isDisplayed()).toBeTruthy();

browser.sleep(2000)在 Protractor 检查是否存在之前,使浏览器空闲两秒钟logged-in-section已显示。如果我拿出来browser.sleep(2000),测试失败,因为点击登录按钮和从服务器返回的响应之间存在延迟。

将登录按钮链接到的语法是什么expect声明,以便 Protractor 仅检查#logged-in-section之后$promise被退回?


你可以这样做:

loginButton.click().then(function(){
   browser.waitForAngular().then(function (){ //this should wait for the angular digest process to finish
      expect($("#logged-in-section").isDisplayed()).toBeTruthy();
   })
});

或者这应该可以:

loginButton.click().then(function(){
   browser.wait(element(by.id("logged-in-section")).isDisplayed);
   expect($("#logged-in-section").isDisplayed()).toBeTruthy();
});
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

AngularJS Protractor - 如何测试 AJAX 登录调用? 的相关文章

  • javascript/jquery 从选择中删除或删除选项

    在某些情况下 我需要从选择中删除选项 基本上 if mystatement true remove item with id option1 from select of id select1 有人知道我可以实现这一目标的代码吗 非常感谢
  • 如何打开新选项卡并更改当前页面

  • AJAX 安全问题

    我希望能够解决一些关于 AJAX 安全性的问题 这是我试图理解的一个场景 假设我正在使用 AJAX 向页面请求一些半敏感材料 例如 我将把用户的 ID 传递给一个 php 文件 并返回一些关于他们自己的信息 现在 是什么阻止人们模拟此 Ja
  • 检测单选按钮/复选框状态的变化

    我需要可靠地检测页面上单选按钮 复选框的状态变化 以便查看表单是否被修改 现在 这是一个完全独立的脚本 我无法修改任何控制表单的内容 目前 我只能看到两种方法 onchange事件处理程序 有助于处理文本框 文本区域和选择 但不会针对复选框
  • 如何使用多个 select2 框过滤表格?

    我正在尝试使用 和多个 select2 框的类来过滤表格 表格 HTML table class table tbody tr class kanban event Austin td td tr tr class csm event Ch
  • 在有限的上下文中运行 JS 代码

    我正在尝试奔跑trusted 隔离 上下文中的 JS 代码 基本上想出了这个方法 function limitedEval src context return function with this return eval src call
  • 在上传之前预览图像 VUEjs [重复]

    这个问题在这里已经有答案了 我知道这个问题已经被问过 但我不知道如何在vuejs中使用代码 我尝试了很多但没有任何结果 我还添加了我的代码 有人可以帮帮我吗 这是我的代码 谢谢 html
  • 使用 jQuery inputmask 插件范围 0-100

    如何创建 0 到 100 范围内的掩码 document ready function masked inputmask 您可以使用jquery inputmask regex extensions js为了那个原因 你可以找到带有所有扩展
  • Apache Thrift Java-Javascript 通信

    我正在编写一个基于 Apache Thrift 的 Java 服务器 它将从 Javascript 客户端接收数据 我已经完成了 Java 服务器 但问题是我可以获得 Javascript 客户端的工作示例 我无法找到一个好的示例 构建文档
  • 正则表达式中连字符的这种用法有效吗?

    NB I only想知道它是否是正则表达式定义中未转义连字符的有效应用 它是not关于匹配电子邮件 连字符或反斜杠的含义 量词或其他任何内容的问题 另外 请注意 链接的答案并没有真正讨论转义 未转义连字符之间的有效性问题 通常我会像这样声明
  • websockets 如何处理同一浏览器的两个选项卡

    I have 1 个 PHP 服务器 提供 http 请求 和 1 node js 发布更新的数据消息 每个连接都带有 websocket php 服务器设置其 cookie 在一个浏览器中 此 cookie 可在所有选项卡中使用 当浏览器
  • jQuery:将文本区域滚动到给定位置

    我有一个包含很多文本的文本区域
  • Angular2:动态同步http请求

    Goal 发出一系列同步 http 请求并能够将它们作为一个可观察流进行订阅 示例 不工作 let query arr test1 test2 test3 function make request query arr if query a
  • 从链接打开本地文件夹

    如何通过单击任何链接打开本地文件夹视图 我尝试了很多选择 例如 a href Open folder a or a Open folder a or a Open folder a 解决方案 启动可下载链接 以下内容适用于所有浏览器 但一如
  • 从字节数组设置 img src

    我需要设置img src我在对象中拥有的字节数组的属性 img
  • 了解 Document.createElement()

    我在用着GWT及其底层DOM能力 我基本上想要实现的是 Have a div包含一些文本的元素 其中一些文本将被包围span元素 span 元素可相互拖动并提供上下文菜单 New span元素可以由最终用户动态创建 它可能是这样的 在应用程
  • 如何将MathJax公式转换为img

    Mathjax 现在在我的项目中运行良好 但有一个问题 有没有办法将MathJax的公式 纯html和css 转换成img文件 我可以保存 MathJax 可以配置为生成 SVG 看http docs mathjax org en late
  • 如何在 React Native 中使用相同的 Firebase 数据库在两个应用程序之间进行通信?

    我有两个不同的应用程序使用相同的实时数据库 在第一个应用程序中 我发送的订单包含一些要保存在数据库中的数据字段 在另一个应用程序中 我只添加一个侦听器 firebase database ref userOrder currentUser
  • Three.js点击单个粒子

    In this example http jsfiddle net agqq96bq 2 您可以看到 2 个可点击的粒子 但它们都受到点击的影响 另外 我只想检测粒子上的点击 而不将它们过滤出场景 像这儿 if intersects len
  • 如何跨多个文件跨越 javascript 命名空间?

    我永远忽略了javascript 几年前我开始使用 jQuery 这样我就可以过得去 但随着我开始更多地进行 TDD 我昨天决定真正深入研究 javascript 之后可能还有咖啡脚本 在我的 ASP NET Web 窗体应用程序中 我有很

随机推荐

  • C++ vs2010 增加堆栈大小

    我正在使用 vs2010 c 来处理图像 我的图像是 1920 x 1200 的数组 我什至无法声明 unsigned short frame 1920 1200 由于堆栈溢出 如何增加堆栈大小 在 Visual Studio 中 您可以通
  • 为什么第一个 AJAX 调用会重置我的视图参数?

    我无法找出为什么第一个 ajax 调用会导致再次调用我的视图参数的 setter 而每个后续调用都不会再次调用该 setter 我有以下简单的视图 bean package test import java io Serializable
  • Numba - nopython 模式是否支持元组列表?

    我想澄清一下 这是我第一次使用 Numba 所以我距离成为专家还很远 我正在尝试手动实现一个简单的 KNN 代码如下 jit nopython True def knn training set test set for q in rang
  • 带有载波上传字段的工厂[重复]

    这个问题在这里已经有答案了 您好 例如 我需要为我的模型建立工厂 Factory define farm do f f name Factory next name f harvest 3 f offers Random f latitud
  • 在.Net 2中使用WCF时int属性为0

    我在 Net 4 中有一个 MVC 项目 其中包含带有 BasicHttpBinding 的 WCF 服务 当在 Net 2 中使用此服务时 如果属性为 int 则到达的值为 0 如果它是一个字符串 那么就可以了 在 Net 4 中构建一个
  • 序列化包含java对象的对象

    我尝试序列化一个包含另一个本身可序列化的对象的对象 有办法让它发挥作用吗 当我序列化第一个对象时 指向另一个对象的指针似乎丢失了 以下是关于持久对象的两条规则 规则 1 要持久化的对象必须实现 Serialized 接口或从其对象层次结构继
  • glGenTextures 在后台线程中返回零

    我需要在 OpenGL ES 的后台线程中加载纹理 但在后台线程中调用时 glGenTextures 始终返回零 void someMethodInMainThread self performSelectorInBackground se
  • 如何读取 Servlet 中的图像(或其他文件)并将其编码为 base64 [重复]

    这个问题在这里已经有答案了 在 servlet 中 我必须从磁盘读取图像文件 将其编码为 Base64 然后发送回客户端 因为我只找到了 iOS Python 和其他一些类型的示例 基本上都以相同的方式进行 所以我想在这里发布我的代码是为了
  • 共享除前缀之外的所有地点或如何使用 PlaceHistoryMapperWithFactory

    在我的 gwt app 中 我有一些地方共享除前缀之外的所有内容 例如 editUserPlace 和 showUserPlace 在这种情况下 状态由 userId 确定 我当前的尝试是通过 ShowUserPlace 和 EditUse
  • GCP 托管实例组不会扩展到零

    我有一个 GCP 托管实例组 我想使用 cron 计划将其扩展至 0 到 1 个实例 GCP 有一个局限性 https cloud google com compute docs autoscaler scaling schedules l
  • 单击正文,但其他一些标签不起作用

    有谁知道 css 位置 相对 可能会搞乱功能 body not theDIV click function alert 或者问题出在其他地方 发生的情况是 我有一个在单击按钮时出现的图标 并且当我单击主体上除 div 本身之外的任何位置时
  • 为什么我的 Gunicorn Python/Flask 工作人员会退出信号术语?

    我有一个 Python Flask Web 应用程序 我正在通过 Gunicorn 将其部署在 Amazon ECS 上的 Docker 映像中 一切都很顺利 然后突然间 包括最后一次成功的请求 我在日志中看到了这一点 2017 03 29
  • 如何将 ctx(上下文)传递给 CliRunner?

    CliRunner未列出任何参数来在其中提供上下文文档 http click pocoo org 5 api click testing CliRunner invoke 以下内容应作为最低限度的工作示例 真正的问题有点不同 可以通过将单击
  • 使用 EditText 显示密码

    我使用 EditText 输入密码 以及一个用于显示密码或不显示密码的复选框 下面是函数的一部分 public void ShowPassword if cb isChecked password setInputType InputTyp
  • tabBar didSelectItem 似乎不起作用

    在我的头文件中我有这个 interface TabBarController UIViewController
  • PHP 将 XML 转换为 JSON

    我正在尝试在 php 中将 xml 转换为 json 如果我使用简单的 xml 和 json encode 进行简单转换 则 xml 中不会显示任何属性 xml simplexml load file states xml echo jso
  • Angular.json 脚本未加载

    我正在尝试使用bootstrap导航栏的示例来自bootstrap文档 如果我从以下位置加载它angular json切换汉堡不起作用 如果我使用的是来自的 CDN 链接bootstrap docs
  • 要求文件作为字符串

    我正在使用 Node Express 我只是想知道如何将任何文件作为字符串导入 假设我有一个 txt 文件 我想要的只是将其加载到这样的变量中 var string require words txt 我反对 modules exports
  • Android 模拟器 - 创建用户帐户时遇到问题

    我的 Android 模拟器中需要一两个用户帐户 以便我可以测试应用程序的一些短信 邮件功能 问题是 当我尝试在模拟器中执行此操作时 设置 gt 帐户和同步 gt 添加帐户 gt my gmail account password gt 下
  • AngularJS Protractor - 如何测试 AJAX 登录调用?

    我有一个按钮 单击后会在 Angular 中发出 AJAX 调用 promise格式 登录成功后会出现 scope变量被更改并且元素如下所示 section Section to display if logged in section 被