angularjs 是否有一个发生器为茉莉角控制器测试?

6bc51xsx  于 2023-11-16  发布在  Angular
关注(0)|答案(5)|浏览(203)

我正在寻找的东西,产生一个样板茉莉花测试的Angular 控制器。它似乎你可以拉出来的控制器的依赖关系,并把它们放入规范和保存一些打字。我会感到震惊,如果我是第一个人有这个想法,但我无法找到任何这样做,保存一个自耕农项目,似乎不工作。

ifmq2ha2

ifmq2ha21#

我最近在npm -tleaf上发布了我的Angular JS单元测试生成器版本。基本上,它试图解析你的源文件,寻找AngularJS单元(控制器、服务等)提取单元名称、模块名称和单元依赖关系的信息。这些信息用于创建单元测试文件,基于此单元类型的模板。有一组默认的模板,它们具有非常简单的结构,它应该是确定的一般用途。但它也可以创建和使用自己的模板来生成单元测试文件。这是一个非常第一个版本,我会很高兴有任何反馈。

wn9m85ua

wn9m85ua2#

我不知道一个发电机的测试,但我有两个想法。
一些编辑器提供了“重复”代码的模板。比如Webstorm的Live Templates。github上有多个项目提供了jasmine模板。
你也可以检查ng-describe。它删除了样板文件,使测试更简单。这里有一个来自他们github的例子:

  1. ngDescribe({
  2. modules: 'A',
  3. inject: ['$rootScope', 'foo'],
  4. tests: function (deps) {
  5. it('finally a test', function () {
  6. deps.$rootScope.$apply();
  7. expect(deps.foo).toEqual('bar');
  8. });
  9. }
  10. });

字符串

ctrmrzij

ctrmrzij3#

我使用yeomangenerator-angular来生成我们的脚本和测试。
yo angular:directive myDirective yo angular:service myService yo angular:controller myController等。
将生成脚本和规范模板。我使用Karma和茉莉花。
你也可以写你自己的约曼生成器。

nxowjjhe

nxowjjhe4#

我发现了这个东西,它做了很多很好的gob:
https://www.npmjs.com/package/generator-yosapy

oiopk7p5

oiopk7p55#

利用人工智能生成单元测试可以简化和加快单元测试过程。
这个库读取你的组件文件,并为它生成特定的测试用例。

  1. npm i ai-test-gen-angular
  2. export OPENAI_API_KEY=somekey
  3. node ./node_modules/ai-test-gen-angular/index.js "relative/path/to/service/or/somecomponent.component.ts" "relative/path/to/tsconfig.json"

字符串
这段代码将生成一个单元测试文件,其中包含您在命令中提到的组件或服务的书面测试。请注意,您需要有一个openai API密钥才能使用它。
原始答案here

相关问题