angularjs 这是一种为Angular生成karma单元测试的方法吗?

ffscu2ro  于 2023-11-16  发布在  Angular
关注(0)|答案(3)|浏览(128)

我曾经使用Jasmine和Karma对我的AngularJS应用程序进行单元测试。我想知道这是否是一种动态生成Karma单元测试文件的方法。
顺便问一下,生成(或尝试生成)单元测试文件是一件好事,还是手动完成更好?

qq24tv8q

qq24tv8q1#

Karma是一个测试运行器,你可以选择/混合你自己的测试框架,如Jasminemocha等。
一般情况下,您可以使用karmajasmine/mochaunit testingend-to-end testing等。
无论何时,只要您更改某些内容并测试更改后的代码/UI/功能,就需要对任何new features/enhancements/upgrades等进行手动测试。
但是上面提到的带有karma的automated testing是需要避免回归测试的,在回归测试中,你没有直接修改代码,但是应该有一个间接的影响,发现任何新的修改破坏了现有的功能。
当你在TeamCity/Bamboo/JenkinsCI/CD构建工具中自动化这个karma/jasmine测试时,你可以尽可能早地发现回归的影响(* 最有可能在开发阶段 *),而不是让它进入UAT/Staging/Pre (or) post production阶段。
因此,总而言之,总是需要手动测试来测试即时更改,并且需要自动化测试用例来测试回归影响。
至少,应该要求进行单元测试,并且最好包括用户验收测试和端到端测试。
希望它能澄清你的问题:-)

p5fdfcr1

p5fdfcr12#

我曾经使用Jasmine和Karma对我的AngularJS应用程序进行单元测试。
Karma是AngularJS团队努力使用现有工具测试自己的框架功能的直接产品。因此,他们制作了Karma,并正确地建议将其作为AngularJS documentation中的首选测试运行器。
Jasmine是一个行为驱动的开发框架,用于测试JavaScript代码,与Karma配合得很好。与Karma类似,它也是AngularJS documentation中推荐的测试框架。Jasmine也是无依赖的,不需要DOM。
From source: scotch.io
我想知道这是否是一种生成karma单元测试文件的方法。
你说的是哪种方式还不清楚,但是,如果你需要生成karma单元测试文件或学习单元测试,那么Adam Morgan from scotch.io已经做了一个关于这个主题的非常好的教程。
顺便问一下,生成(或尝试生成)单元测试文件是一件好事,还是手动完成更好?
答案很简单。生成的文件只是代码的一般框架,这样你就有了一些不需要从头开始编写的东西。它希望你实现实际的测试流程,否则在真实的世界测试中就没有意义了。我更喜欢生成基础并扩展代码来满足我的需求,而不是从零开始手动编码。

czq61nw1

czq61nw13#

如果你想为组件、服务、管道、指令自动生成Angular 单元测试,你可以使用这个

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密钥才能使用此库,因为它使用开放AI即生成AI技术来创建单元测试。

相关问题