是否有一个由 yo angular generator 生成的 AngularJS 应用程序示例,该应用程序具有 $httpBackend
的 e2e 测试来自 ngMockE2E
模块?最好使用用于 CI 和开发的单一和连续版本。
看起来使用 $httpBackend 需要创建一个依赖于原始应用程序模块和 ngMockE2E
的新应用程序。模块并需要新的 index.html 文件来加载这个新的应用程序。
如果测试使用不同的应用程序,是否意味着我应该修改配置以将测试生成的文件存储在 grunt server
生成的文件之外的其他位置?命令( .tmp
),还是这些文件完全相同?我希望能够在使用 PhantomJS 在后台运行 e2e 测试时运行 grunt 服务器以进行开发。
有没有人创建了一个基于 index.html 自动生成修改后的 index-e2e.html 文件的任务?通过这种方式,它将始终是最新的,并且它也可以与 watch 一起使用,以便在原始 index.html 文件发生更改时自动重新生成它。
最佳答案
您应该注意到 angular 正在弃用 e2e 以支持 Protractor 框架。还要注意 e2e(以及 Protractor )非常慢。所以不建议像我们在单元测试中那样在后台连续运行。也就是说,对于您的问题 - 不,您不需要不同的应用程序、索引文件等(除非您需要来自 e2e 的覆盖率数据,在这种情况下,您需要检测 js 文件,而这将需要不同的索引.html,可以使用 sed
在 grunt 任务中创建)。你需要的是一个不同的 karma.conf.js 文件,一个不同的 grunt karma 任务 ro 引用它,包括 files
中的 ng-scenario karma.conf 的部分。并运行某种 grunt testServer
将运行测试服务器的任务,它与 dev grunt 服务器不同。您可以与工头或类似的东西一起运行(如this SO [question]中所述。(How can I automate both E2E and unit tests with Yeoman & AngularJS?)并回答)。如果这是您正在寻找的 - 您可以在 this PR 中找到一个 karma.conf.js 示例,用于 e2e 和单元。 .再说一次,不要对当前的 e2e 框架进行大量投资。更好地使用新的 Shiny Protractor
关于angularjs - 是否有 Yeoman 使用 e2e 测试和 $httpBackend 生成的 AngularJS 应用程序示例?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19564897/