模拟和伪造是隔离代码或组件的方法,以确保单元测试仅针对可测试的代码单元运行,而不实际使用应用程序的其他组件或依赖项。 Mocking与伪造的不同之处在于可以检查模拟以断言测试结果。
如何在 xUnit 中模拟这部分代码 var 更新成本 = 等待 _costOfConsomption.DeferredWhere(x => x.Id == model.CostOfConsomptionId).FirstOrDefaultAsync() ?? ...
pytest - 通过 configparser.ConfigParser() / config.read() 模拟配置[<section_name>]
目标:我想测试我们的 Web 服务连接包装器,例如亚搏体育appGitLab、SFTP、MySQL。 我陷入了以下部分: 配置 = configparser.ConfigParser() config.read(r"C:\gi
我正在尝试掌握 JUnit 和 Mockito 等。 我目前有一个带有以下行的方法。 ObjectMetadata 元数据 = getMetadata(path.toString()); 有什么办法可以嘲笑它吗?我已经
我试图理解 Mockito 中的模拟是如何工作的。这是一个简单的例子。 我的问题是: Container类的私有变量集和Contain类的私有变量集做吗...
模拟 IDynamoDBContext.ScanAsync 方法
我正在尝试为下一个方法创建单元测试: 公共异步任务 GetEntityByIdAsync(Guid id) { 列表 scanConditions = 新列表 我正在尝试为下一个方法创建单元测试: public async Task<Entity> GetEntityByIdAsync(Guid id) { List<ScanCondition> scanConditions = new List<ScanCondition>(); scanConditions.Add(new ScanCondition("Date", ScanOperator.Between, GetDayRange(submitDate).Item1, GetDayRange(submitDate).Item2)); scanConditions.Add(new ScanCondition("FieldId", ScanOperator.Equal, id)); List<Entity> data = await _dynamoDbContext.ScanAsync<Entity>(scanConditions).GetRemainingAsync().ConfigureAwait(false); return data.OrderByDescending(r => r.SubmitDate).FirstOrDefault(); } 我为 IDynamoDBContext 创建了 Mock,但 ScanAsync 方法的设置有问题。 有人有什么想法吗? 谢谢! 您无法创建 AsyncSearch 的实例,因为没有可用的构造函数,但您可以模拟对象本身。 var mockContext = new Mock<IDynamoDBContext>(); var mockData = new List<YourModel> { /* populate your fields */ }; var mockAsyncSearch = new Mock<AsyncSearch<YourModel>>(); mockAsyncSearch.Setup(search => search.GetRemainingAsync(It.IsAny<CancellationToken>())) .ReturnsAsync(mockData); mockContext.Setup(context => context.ScanAsync<YourModel>(It.IsAny<List<ScanCondition>>(), It.IsAny<DynamoDBOperationConfig>())) .Returns(mockAsyncSearch.Object); var result = await _sut.GetEntityByIdAsync(Guid.NewGuid());
我正在尝试为以下Python代码编写集成测试: 将 xx.settings.config 导入为 stg 从 xx.infrastruct.utils 导入 csvReader、dataframeWriter 从 pyspark.sql 导入 SparkSes...
我正在尝试为 WPF 组件编写单元测试。如何模拟组合键(不仅仅是 1 个键)? 模拟按下 1 个键很简单: var 窗口 = 新窗口(); ...
我目前正在致力于扩展第三方代码库。不幸的是,该代码库将其 get_args 与所有其他函数紧密耦合。 get_args 基本上只是全局对象的 getter...
假设我有一个导出默认函数的简单文件: // UniqueIdGenerator.js const uniqueIdGenerator = () => Math.random().toString(36).substring(2, 8); 导出默认的 uniqueIdGenerator;
我想监视一个简单 TypeScript 类的简单数组。但是,当我设置测试并运行它时,出现错误,提示“createDiscounts 不可迭代”,如何模拟可迭代对象? 这里是...
似乎我以前能够让它工作,但现在我找不到我的旧代码。我一直在寻找这个问题的帮助,但到目前为止我无法让模拟工作。 我有这个 ES6 模块: ...
在Python中编写单元测试时,为什么后续测试中的mock不会覆盖之前测试中的mock?
我正在尝试编写单元测试,其中涉及为每个测试以不同的方式模拟多个库。当我单独运行每个测试时,它们都通过了,但是当我一起运行它们时,许多...
Android 单元测试 - Geocoder Mockk“无法匹配模拟签名”
我正在尝试构建一些单元测试并模拟 Android 中的 Geocoder API。 我有以下函数,我尝试针对它构建单元测试: @RequiresApi(Build.VERSION_CODES.TIRAMISU) 私人
如何使用 Jest 在 TypeScript 中模拟导入的函数?
我有一个名为map-creation.service.ts的模块: 导出const createMap =(asyncJobId:字符串,resourceUrl:字符串,s3DestFolder:字符串)=> { }; 在我的端点中使用的是: 导入{
Playwright 1.45.0 使用记录的 HAR 文件发布多部分 FormData 时出现问题
我们使用routeFromHAR(har, {update: true}) 来记录网络流量,同时测试进行一系列REST 调用(GET 和POST)的应用程序。我们进行录音的目的是......
如何在不更改源代码的情况下动态交换导入模块中Python的内置函数以进行测试?
我正在测试一个旧版 Python 模块,该模块严重依赖 print()、len() 等内置函数,但我不想直接修改模块的源代码。目标是
我在Python中使用mock时遇到了计算路径的问题。 假设我有以下文件 文件1.py def func1(): 返回“X” 文件2.py 从 file1 导入 func1 班级...
我有一个简单的服务: 套餐服务 类型 X 结构体 { 名称字符串 } func (x X) Valid() 布尔 { 返回 x.Name != "" } 类型服务结构{} func (服务服务) Do(x X) bo...
我为其写一个故事的 React 组件如下所示: 从 './env.js' 导入 { SHOW_ERRORS } ; 导出 const ErrorList = React.memo((): JSX.Element | null => { 返回显示错误? 我为其写一个故事的 React 组件如下所示: import { SHOW_ERRORS } from './env.js'; export const ErrorList = React.memo((): JSX.Element | null => { return SHOW_ERRORS ? <p>Errors...</p> : null; }); 我的故事书故事是这样的: import type { Meta, StoryObj } from '@storybook/react'; import { ErrorList } from './MappingError.js'; const meta: Meta<typeof ErrorList> = { title: 'ErrorList', component: ErrorList, }; export default meta; type Story = StoryObj<typeof ErrorList>; export const Default: Story = {}; 有没有办法从故事中更改/模拟 SHOW_ERRORS? 好吧,似乎是一个真正的错误:https://github.com/storybookjs/storybook/issues/17336 但是当可以全局设置它们时,请在 Storybook 配置中使用: define: { process: { env: { SHOW_ERRORS: 1, }, }, },
如何模拟以下类: 用户存储库:GenericRepository,IUserRepository 公共类 GenericRepository : IGenericRepository 其中 TEntity : ...