【问题标题】:Ember cli and testemEmber cli 和 testem
【发布时间】:2014-10-28 21:56:57
【问题描述】:

我是 Ember 的新手,我想启动并运行一个简单的项目,并在 chrome 中运行一些集成测试。

我买了《开发 Ember.js Edge》一书,他们在其中创建了应用程序 ember-trackr,但随着 JS 世界中的所有事物快速发展,细节似乎发生了变化。

如果我:

git clone https://github.com/developing-an-emberjs-edge/ember-trackr
cd ember-trackr
testem

我收到一个错误:

   Error running before_tests hook                                         
  ┃                                                                        
  ┃before_tests hook: "ember build -c"                                     
  ┃version: 0.0.41                                                         
  ┃You have to be inside an ember-cli project in order to use the build command.

我不确定,但我认为http://emberjs.com/guides/testing/integration/ 中的步骤在使用时已经完成

ember new <appname>

所以,如果我创建一个新应用并运行 testem:

ember new testem-test
cd testem-test
testem

我在控制台和 chrome launce 中看到“等待跑步者”消息。

现在,如果我尝试添加一个简单的测试(例如,检查页面内容中的某些文本 - 从 http://www.ember-cli.com/#testing 复制)作为测试/test1.js:

 import Ember from "ember";
 import { test } from 'ember-qunit';
 import startApp from 'helpers/start-app';
 var App;

 module('An Integration test', {
   setup: function() {
     App = startApp();
   },
   teardown: function() {
     Ember.run(App, App.destroy);
   }
 });

 test("Page contents", function() {
   expect(2);
   visit('/foos').then(function() {
     equal(find('.foos-list').length, 1, "Page contains list of models");
     equal(find('.foos-list .foo-item').length, 5, "List contains expected number of models");
   });
 });

如果我运行“testem”,我只会收到等待跑步者的消息。

如果我运行“ember 测试”,我会得到:

~/IdeaProjects/spike/testem-test (master) $ ember test
version: 0.0.41
Build failed.
ENOENT, no such file or directory '/Users/paul/IdeaProjects/spike/testem-test/tmp/tree_merger-tmp_dest_dir-2QJNmsEl.tmp/helpers/start-app.js'
File: helpers/start-app.js

有人知道我遗漏了什么吗?

另外,如果尚未完成,最好使用 ember-cli 使 ember-trackr 示例应用程序保持最新状态,这样它就可以立即使用 - 如果我愿意,我很乐意贡献可以弄清楚它缺少什么...

谢谢。

【问题讨论】:

    标签: ember.js ember-cli testem


    【解决方案1】:

    对于您问题的第一部分,是的 ember-cli 已更改,您必须迁移该项目。我会为 100 赏金这样做。

    对于第二部分,您不必从头开始创建测试:

    运行ember generate acceptance-test test1,它会为你做样板。

    具体的错误信息可以通过更新这一行来修复:

    import startApp from '../helpers/start-app';

    【讨论】:

    • 太棒了,非常感谢。我应该考虑看看是否可以生成测试。我已经生成了一个测试并使用“ember test --server”运行它。
    猜你喜欢
    • 2014-11-18
    • 1970-01-01
    • 2016-04-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-06
    • 1970-01-01
    • 2015-08-29
    相关资源
    最近更新 更多