我正在寻找的东西,产生一个样板茉莉花测试的Angular 控制器。它似乎你可以拉出来的控制器的依赖关系,并把它们放入规范和保存一些打字。我会感到震惊,如果我是第一个人有这个想法,但我无法找到任何这样做,保存一个自耕农项目,似乎不工作。
ifmq2ha21#
我最近在npm -tleaf上发布了我的Angular JS单元测试生成器版本。基本上,它试图解析你的源文件,寻找AngularJS单元(控制器、服务等)提取单元名称、模块名称和单元依赖关系的信息。这些信息用于创建单元测试文件,基于此单元类型的模板。有一组默认的模板,它们具有非常简单的结构,它应该是确定的一般用途。但它也可以创建和使用自己的模板来生成单元测试文件。这是一个非常第一个版本,我会很高兴有任何反馈。
wn9m85ua2#
我不知道一个发电机的测试,但我有两个想法。一些编辑器提供了“重复”代码的模板。比如Webstorm的Live Templates。github上有多个项目提供了jasmine模板。你也可以检查ng-describe。它删除了样板文件,使测试更简单。这里有一个来自他们github的例子:
ngDescribe({ modules: 'A', inject: ['$rootScope', 'foo'], tests: function (deps) { it('finally a test', function () { deps.$rootScope.$apply(); expect(deps.foo).toEqual('bar'); }); }});
ngDescribe({
modules: 'A',
inject: ['$rootScope', 'foo'],
tests: function (deps) {
it('finally a test', function () {
deps.$rootScope.$apply();
expect(deps.foo).toEqual('bar');
});
}
字符串
ctrmrzij3#
我使用yeoman和generator-angular来生成我们的脚本和测试。yo angular:directive myDirective yo angular:service myService yo angular:controller myController等。将生成脚本和规范模板。我使用Karma和茉莉花。你也可以写你自己的约曼生成器。
yo angular:directive myDirective yo angular:service myService yo angular:controller myController
nxowjjhe4#
我发现了这个东西,它做了很多很好的gob:https://www.npmjs.com/package/generator-yosapy
oiopk7p55#
利用人工智能生成单元测试可以简化和加快单元测试过程。这个库读取你的组件文件,并为它生成特定的测试用例。
npm i ai-test-gen-angularexport OPENAI_API_KEY=somekeynode ./node_modules/ai-test-gen-angular/index.js "relative/path/to/service/or/somecomponent.component.ts" "relative/path/to/tsconfig.json"
npm i ai-test-gen-angular
export OPENAI_API_KEY=somekey
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
5条答案
按热度按时间ifmq2ha21#
我最近在npm -tleaf上发布了我的Angular JS单元测试生成器版本。基本上,它试图解析你的源文件,寻找AngularJS单元(控制器、服务等)提取单元名称、模块名称和单元依赖关系的信息。这些信息用于创建单元测试文件,基于此单元类型的模板。有一组默认的模板,它们具有非常简单的结构,它应该是确定的一般用途。但它也可以创建和使用自己的模板来生成单元测试文件。这是一个非常第一个版本,我会很高兴有任何反馈。
wn9m85ua2#
我不知道一个发电机的测试,但我有两个想法。
一些编辑器提供了“重复”代码的模板。比如Webstorm的Live Templates。github上有多个项目提供了jasmine模板。
你也可以检查ng-describe。它删除了样板文件,使测试更简单。这里有一个来自他们github的例子:
字符串
ctrmrzij3#
我使用yeoman和generator-angular来生成我们的脚本和测试。
yo angular:directive myDirective yo angular:service myService yo angular:controller myController
等。将生成脚本和规范模板。我使用Karma和茉莉花。
你也可以写你自己的约曼生成器。
nxowjjhe4#
我发现了这个东西,它做了很多很好的gob:
https://www.npmjs.com/package/generator-yosapy
oiopk7p55#
利用人工智能生成单元测试可以简化和加快单元测试过程。
这个库读取你的组件文件,并为它生成特定的测试用例。
字符串
这段代码将生成一个单元测试文件,其中包含您在命令中提到的组件或服务的书面测试。请注意,您需要有一个openai API密钥才能使用它。
原始答案here