问题标签 [angular-scenario]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
2558 浏览

javascript - 角度单元测试:浏览器未定义?

我正在角度应用程序中的控制器上运行单元测试。到目前为止,我的测试是:

带控制器

但是,当我运行它时,我得到了错误browser is not defined。这里发生了什么?这不是Angular提供的吗?

编辑:更奇怪的是,我收到了inject未定义的错误。

这是配置文件:

0 投票
0 回答
124 浏览

testing - AngularJS 的 $httpBackend - 如何配置?

我正在制作一个有角度的应用程序,并正在对它们进行端到端测试。我需要为$httpBackend我的一些测试运行一个实例,但我不知道该怎么做。目前我的代码看起来像

然后我只是导航到runner.html并运行我的测试。我的所有其他测试都被 Karma 看到,但事实并非如此。这是怎么回事?

0 投票
1 回答
155 浏览

angularjs - AngularJS 场景期望类和期货

我正在尝试编写一个测试来检查元素是否具有类:

问题是我不断收到错误TypeError: Cannot read property 'indexOf' of undefined。我期望el.attr('class')成为未来,但我不确定为什么不是。还有其他方法吗?

0 投票
1 回答
651 浏览

angularjs - 如何使用 Angular Scenario Runner 运行测试套件的子集?

我正在开发一个基于 TDD 的应用程序。

对于服务器端,一切都很好,因为 Python 测试运行器很棒。

对于 JS,我开始使用 mocha,这也很棒。

我已经用 Karma 和 Angular Scenario Runner 编写了我的第一个测试,它也很棒。

问题是,在现实生活中开始使用 Angular Scenario Runner 后不久,我就完成了 60 个 e2s 测试。运行所有测试需要 1 分钟。

现在,当我编写一个新测试时,每次我想检查测试时,我都必须等待长达 60 秒。

在 Mocka 中,有此选项可以仅使用 .only http://visionmedia.github.io/mocha/#exclusive-tests运行特定测试


看起来 Angular Scenario Runner 被简要记录,但不知何故模仿了 Jasmine。


查看 Angular Scenario Runner 代码,我只能找到 xit 定义,用于跳过测试。

是否有一个技巧可以让 Angular Scenario Runner 只运行测试的一个子集?

我已经实现了一个 xdescribe 空白方法来跳过整个套件......但这从长远来看是可行的。

非常感谢!

0 投票
1 回答
1433 浏览

testing - 使用 AngularJS 场景和 redi 实现 e2e 测试的问题

我开始使用在我的 django 应用程序中编写 e2e 测试,angular-scenario并且从一开始我就被阻止了。

我已经在我的应用程序中打开了一种伪造用户登录的方法,因此我可以开始测试应用程序功能,但我无法让它工作。这是我的测试代码:

在服务器端,当有人点击时,'/backdoor/?username=some.valid.user'我验证用户,然后执行重定向到'/messages/',结果是对客户端的 302 响应。

我可以在我的日志中看到业力正在命中/backdoor/,然后/backdoor/?username=jane.doe',它实际上通过了重定向并命中'/messages'

但是,那时,我收到以下错误:

在浏览器中调试时,我什至看到/messages视图加载了几分之一秒,然后它就消失了。我在控制台中收到此错误:

我猜这是正常行为,因为业力使用嵌入式 iframe 进行测试,而不是 webdriver。

这是我的配置文件,它是我的其他中途和单元测试业力 conf 文件的修改副本,与 jasmine 配合得很好。(我已经下载了最新的angular-scenario.js文件):

我一定遗漏了一些微不足道的东西,因为这是一个需要测试的基本东西,但我一直在研究一整天,但我一直找不到解决方案。

对此问题的任何帮助将不胜感激!

0 投票
1 回答
1524 浏览

testing - AngularJS E2E 测试的执行顺序

所以,我注意到块it()内的函数describe()并不(总是)按照我编写它们的顺序运行。

那么它们是异步的吗?以及如何强制他们按照一定的顺序运行?

我想链接一堆 UI 突变,基本上让每个it()函数在上一步之后检查 UI 的状态。

如果它们是异步执行的,那就更重要了。这是否意味着每个it()块都需要包含前一个块中的所有步骤?

0 投票
1 回答
165 浏览

angularjs - Angular E2E 场景选择器不检测超链接是否可见

我有以下 e2e 测试:

在以下模板上:

在哪里$scope.wizardstep = 2

不幸的是,期望值始终为 0。

有人知道这段代码/测试有什么问题吗?

0 投票
1 回答
570 浏览

angularjs - 包括 angular-scenario.js 会破坏我的 Rails Jasmine 测试,因为它们不会运行

我对我的(当前)非常简单的站点进行了一些 Jasmine 测试,该站点由 Rails 后端和 AngularJS 前端组成。我正在尝试做一些 Jasmine 端到端测试,但包含 angular-scenario.js 会使我的测试无法运行。这不会让他们失败。这使他们根本无法启动。

我使用的是 1.0.7 版本,所有 Angular 文件都来自同一个版本(并且都来自 Angular 官方网站。我使用的 Rails 版本是 3.1.3 和 Ruby 1.9.3。我也是使用 jasmine gem 版本 1.3.2 和 jasmine-rails 0.4.5。

规范/javascripts/support/jasmine.yml:

规范/javascripts/spec_helper.coffee:

规格/javascripts/模板/品牌/index_spec.coffee:

当然,这只是一个占位符,直到我可以使用 angular-scenario.js 正确地进行测试。

如果没有 angular-scenario.js,测试就会运行。有了它,什么都没有。

为了测试,我通常运行 RAILS_ENV=test rake spec:javascript,但我也尝试过从 Web 服务器界面。

没有 angular-secnario.js 的输出:

angular-scenario.js 的输出:

我尝试过的事情:

  • 将 angular-scenario.js 移动到 vendor/assets/javacripts 并从 spec_helper.coffee 中要求它。
  • 从 spec_helper.coffee 中删除任何其他与 Angular 相关的要求。
  • angular-scenario.js 附带了 jQuery。奇怪的是,注释掉 jQuery 位会使测试运行,尽管它们失败了,因为 angular-scenario 显然需要 jQuery。我还尝试在 angular-scenario 中注释掉 jQuery,并从 jquery-rails gem 中包含 jQuery。(那是在黑暗中拍摄的。我认为这实际上行不通。)

非常感谢任何想要尝试这个的人。

0 投票
1 回答
139 浏览

testing - Karma + AngularJS Scenario Test Runner 和表单的问题

好的,我的 Test Runner 出现问题,它正在填写表单上的字段,但是当我提交表单时,它会将这些字段称为空白。

如果我使用 element('some_element).val('some_val') 写入该字段,则效果很好。

如果我然后用 expect(element('some_element').val()).toBe('some_val') 检查该字段,它会毫无问题地通过

如果我提交此表单,它会返回说所有这些元素都是空的。但是我只能手动更改一个字符,它可以毫无问题地接受它。

谁能解释什么会导致这样的问题?还有关于如何绕过它的任何可能的解决方案?

0 投票
0 回答
371 浏览

angularjs - 角度 e2e 测试显示奇怪的行为:一些测试在从命令行启动时失败,但在直接形成浏览器时成功

我有一个带有 rails 后端和 angularjs 前端的应用程序。我为 Angular 编写了一些 e2e 测试。当我在浏览器http://localhost:3000/clientapi/test/e2e/runner.html

业力-e2e-conf.js:

索引.html:

我的测试文件:

测试的输出:

任何想法 ?