unit-testing 相关问题

单元测试是一种方法,通过该方法测试各个源代码单元以确定它们是否适合使用。

如何用 Jest 模拟 React.UseContext

我正在尝试为包含来自上下文文件的值的使用的组件编写单元测试。 从“../../globalContext”导入{globalContext}; const { rowId, num,

回答 1 投票 0

如何测试函数是否返回而不执行任何操作

我正在编写一套 Jest 测试,出现了以下问题。如何测试函数在收到无效参数时是否简单返回?例如,我想测试一下

回答 1 投票 0

如何针对从集合中随机选择的值编写测试?

我有一个函数,它从要返回的数组中选择一个随机值: 导出函数 selectMovieUnderDuration(选项: IStreamRequest, 电影: Movie[], prevMovies: Movie[], 持续时间: number):

回答 1 投票 0

有没有办法用 PyCharm 捕获单元测试异常?

python unittest 运行程序处理所有异常。我想用我的调试器捕获它们。 有没有办法让我的单元测试运行程序重新引发测试异常以终止进程? 我想要...

回答 4 投票 0

使用 TypeScript 进行的 Jest 测试无法识别导入别名

我正在为我的 Web 应用程序设置测试,该应用程序使用 Jest 框架,通过 TypeScript 与 Vue 框架配合使用。一切似乎都正常,除了我重要的@符号...

回答 3 投票 0

当测试装置的设置代码需要在不违反最佳实践的情况下进行自我测试时,我们可以采取哪些可能的方法来处理这种情况?

当测试装置的设置代码需要在不违反最佳实践的情况下进行自我测试时,我们可以采取哪些可能的方法来处理这种情况?考虑 C# 12.0/.NET 8 中的以下代码....

回答 1 投票 0

使用 JEST 测试 BroadcastChannel API

我在我的 React 项目中使用广播通道 API 实现了跨浏览器选项卡通信。它在浏览器中按预期工作,但我正在努力使用...

回答 1 投票 0

是否有在 Moq 中使用 SetReturnsDefault 的通用方法

我有一个数据访问接口,大致如下所示: 公共接口 IDataRepository { 数据库结果 GetAllCustomers(); 数据库结果 GetAllReports(); ...

回答 1 投票 0

Angular:如何修复错误:NG03600:Angular 检测到注入了“AnimationBuilder”,但未启用动画支持

当我运行 Angular 单元测试时,我多次收到以下错误: 错误:NG03600:Angular 检测到已注入 AnimationBuilder,但未启用动画支持。请确保...

回答 1 投票 0

如何修复此错误:java.lang.NoSuchMethodError: 'java.lang.AutoCloseable org.mockito.MockitoAnnotations.openMocks(java.lang.Object)'

所以我在 Spring boot Gradle 项目中收到此错误: 'java.lang.AutoCloseable org.mockito.MockitoAnnotations.openMocks(java.lang.Object)' java.lang.NoSuchMethodError: 'java.lang.AutoClo...

回答 6 投票 0

Picocli 单元测试未能以编程方式注册子命令

在 picocli 中,我们可以以声明方式和编程方式注册子命令。 它是双向的,但根据文档的单元测试对于编程版本失败了。 这是单元测试: @T...

回答 1 投票 0

如何使用 Mockk 设置默认应答策略

在 Mockito 中,我可以创建类的模拟,并为该模拟的任何函数调用指定默认答案,如下所示: 每当(this.strings).thenReturn(mock(StringProvider::class.java,

回答 2 投票 0

为什么我的 NestJS 单元测试没有得到完全覆盖?

我有一个非常简单的用于 SAML 身份验证的 NestJS 防护,效果很好 导出类 SamlAccessGuard 扩展 AuthGuard('saml') 实现 CanActivate { 私有只读 isDevelopment = process.env.

回答 1 投票 0

使用 Moq 模拟 Google 的 StorageClient ListObjects 方法

我正在尝试对以下方法进行单元测试 public List GetFilesInGCS(字符串桶,字符串节点) { 列表 文件名 = new 列表(); 尝试 { ...

回答 1 投票 0

如何使用 jest 测试 NestJS 解析器的返回类型行

我是 NestJS 的新手,并尝试对我的文件进行单元测试以获得良好的代码覆盖率起点。 我设法测试了应用程序中的所有内容,除了 auth.resolver.ts 这里是 : 导入 { 解析器,Mu...

回答 1 投票 0

查找并删除监听器

我正在尝试为 MATLAB 应用程序设计一个单元测试,该应用程序可以在窗口模式或无头模式下运行。该测试以无头模式运行程序,并尝试检测是否打开了任何窗口

回答 3 投票 0

如何测试 Angular 2 组件,其中嵌套组件具有自己的依赖项? (TestBed.configureTestingModule)

我有一个组件 A,它在其模板中使用组件 B、c、D: ###template-compA.html 我有一个组件 A,在其模板中使用组件 B、c、D: ###template-compA.html <comp-b></comp-b> <comp-c [myinput]="obj.myinput"></comp-c> <comp-d ></comp-d> ...等等 为了简化,假设它们只是组件 A 中的一个指令: ###template-compA.html <comp-b></comp-b> 我的 comp-b 有自己的依赖项(服务或其他 comp)。 如果我想这样测试 comp-a: TestBed.configureTestingModule({ declarations: [comp-A], imports: [ReactiveFormsModule], }).overrideComponent(FAQListComponent, { set: { providers: [ { provide: comp-AService, useValue: comp-AListSVC } ] } }) .compileComponents(); 它将无法正常工作。所以我这样做: TestBed.configureTestingModule({ declarations: [comp-A, comp-B], imports: [ReactiveFormsModule], }).overrideComponent(FAQListComponent, { set: { providers: [ { provide: comp-AService, useValue: comp-AListSVC } ] } }) .compileComponents(); 它也不起作用,因为 comp-b 没有自己的依赖项。在这里我很困惑,如果我每次都必须导入和重新模拟所有其他组件,我该如何进行单元测试?看起来工作量非常大。还有别的办法吗?使用具有自己的依赖项的嵌套组件测试组件的最佳实践是什么? 非常感谢, 史蒂芬。 如果您不需要在测试中以任何方式引用 comp-b,您可以将 schemas: [NO_ERRORS_SCHEMA] or [CUSTOM_ELEMENTS_SCHEMA] 添加到 TestBed 配置中,或覆盖 comp-A 的模板并删除 comp-b 的标签 如果您确实需要引用comp-b,您可能不需要在覆盖中专门提供它的依赖项。 仅当组件本身提供依赖项时,才需要在 providers 中设置 overrideComponent。 (如果您有 comp-A.ts 中的提供商列表) 假设 comp-b 需要 comp-AService 并且 comp-AService 正在您的 comp-A 覆盖中提供,因为 comp-b 是 comp-A 的子级,它将为其提供 comp-AService。 如果您在 app.module 或高于组件本身的位置提供这些依赖项,则无需覆盖。例如,如果 comp-b 需要 comp-AService 和 someOtherService,它们都在您的 app.module 中提供,您的 TestBed 配置可能如下所示: TestBed.configureTestingModule({ declarations: [comp-A, comp-B], imports: [ReactiveFormsModule], providers: [ { provide: comp-AService, useValue: comp-AListSVC }, { provide: someOtherService, useValue: someOtherServiceSVC } ] }) 编辑: 您可以在此处阅读有关嵌套组件测试的更多信息: https://angular.io/guide/testing-components-scenarios#nested-component-tests 遵循@yurzui 的建议: beforeEach(async(() => { TestBed.configureTestingModule({ declarations: [comp-a], schemas: [NO_ERRORS_SCHEMA] }) .compileComponents(); })); 这是一个老问题,但这就是我目前在 Angular 9 中所做的事情。 由于您希望尽可能地隔离测试组件,因此您可以创建一个返回要导入的假组件的函数,而不是实际的嵌套组件: function mockComponent(selector: string) { @Component({ selector, template: '' }) class MockValueAccessorComponent { // [mock implementation here] } return MockValueAccessorComponent; } 然后将其导入到您的 TestBed 中,如下所示: TestBed.configureTestingModule({ declarations: [ TestUtils.mockComponent('component-template-to-mock'), ] }); 还有另一种方法是创建一个模拟 b 组件并将其导入到组件 a 中 @Component({独立: true, 模板: '', 选择器: 'comp-b' }) 导出类 CompBComponent { } TestBed.configureTestingModule({ 进口:[ 组合B组件 ] });

回答 4 投票 0

./src/polyfills.ts 中的错误未找到模块:错误:无法解析“zone.js/dist/zone”

我有一个 Angular 8,它使用 karma/jasmine 来运行一些单元测试。我可以通过执行以下命令 ng test 来运行测试,但出现以下错误: ./src/polyfills.ts M 中出现错误...

回答 6 投票 0

Mockito 注入一些模拟对象和一些真实对象

我正在测试这样的函数: 公共类 CsvUtilsTest { @嘲笑 私有S3Client s3Client; @嘲笑 私有 S3BucketWrapper s3Buckets; @嘲笑 CsvMapper csvMapper; @

回答 1 投票 0

CakePHP 2.1:使用组件重定向时,使用 $this->testAction() 测试控制器时,$this->headers 未设置

我开始为应用程序编写测试,并且我已经制作了一个包装器 RedirectComponent 来处理所有重定向。 现在我开始测试我的应用程序(我对测试还很陌生)我

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.