git9versioner
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
29、服务返回类型变更与多线程测试实践
本文详细介绍了在软件开发中对服务返回类型的变更以及多线程测试的实践过程。首先,通过引入结构体和 std::variant 实现了服务返回类型的多样化,以提供更详细的响应信息。接着,通过多服务调用测试和计算逻辑的实现,验证了服务在多线程环境下的基本功能。为了进一步提升测试的可靠性和准确性,文章探讨了多线程测试的优化方法,包括使用条件变量协调线程、注入计算函数等。最后,总结了整个实践过程,并提出了后续优化的方向,如使用线程池、增加测试用例及优化日志记录。原创 2025-08-05 03:30:50 · 28 阅读 · 0 评论 -
28、多线程测试:从日志库到服务代码的实战指南
本文详细介绍了多线程测试的实战经验,包括日志库的线程安全测试和服务代码的多线程优化。通过具体的代码示例和测试流程,展示了如何解决多线程环境下可能出现的问题,如线程调度不可预测、日志消息重复或缺失、测试因随机数失败等。文章还探讨了使用互斥锁、调整测试策略以及采用Protocol Buffers处理请求和响应的优化方法,旨在提高多线程测试的效率和代码质量。原创 2025-08-04 12:14:53 · 3 阅读 · 0 评论 -
27、服务测试与多线程测试指南
本文详细探讨了服务测试和多线程测试的关键要点,包括服务测试中的响应类型与日志管理、多线程测试的技术挑战与解决方案,以及如何使用测试驱动开发(TDD)优化多线程代码的设计与测试流程。文中提供了具体的代码示例和优化建议,帮助开发者提升多线程环境下软件的稳定性和可靠性。原创 2025-08-03 15:43:37 · 2 阅读 · 0 评论 -
26、服务测试全解析:挑战、可测内容与示例项目
本文深入探讨了服务测试的挑战和可测试的方面,并通过一个简单的服务项目(SimpleService)展示了如何进行服务测试。文章涵盖了服务测试的核心概念、测试方法、日志管理和调试建议,同时结合实际示例项目说明服务测试的具体实施步骤。适用于希望提升服务测试能力的开发人员和测试人员,帮助他们更好地应对服务测试中的各种问题,确保服务的质量和可靠性。原创 2025-08-02 15:13:29 · 27 阅读 · 0 评论 -
25、如何测试浮点值和自定义值
本文详细介绍了在C++中使用Hamcrest匹配器测试浮点值以及创建自定义匹配器的方法。通过迁移浮点值比较函数、使用C++20的模板概念优化测试代码,并创建如NotEquals和IsEven等自定义匹配器,提高测试代码的可读性与可维护性。同时探讨了匹配器在验证数字特性、字符串特性以及对象状态中的应用场景,并展望了未来匹配器在测试框架中的发展方向。原创 2025-08-01 12:26:58 · 26 阅读 · 0 评论 -
24、优化测试确认:从基础类型到浮点值比较
本文详细介绍了如何通过测试驱动开发(TDD)的方法,逐步扩展 Hamcrest 风格的测试确认机制,支持从基础类型到复杂浮点值的比较。文章涵盖了整数、布尔、字符串、字符指针等类型的测试用例编写及模板特化解决方案,并深入探讨了浮点值比较的挑战与优化策略,包括使用 epsilon 调整误差范围以提高比较精度。通过一系列测试与改进,最终实现了更加可靠和通用的测试框架。原创 2025-07-31 14:45:09 · 26 阅读 · 0 评论 -
23、测试驱动开发:提升单元测试确认方式
本文探讨了测试驱动开发中提升单元测试确认方式的方法,包括引入Hamcrest风格的匹配器、拓展匹配器类型、简化字符串确认流程,以及增强单元测试的可读性、灵活性和可扩展性。同时,文章还介绍了多线程测试和服务测试的应用,以更全面地验证软件的功能和稳定性。通过这些改进,软件开发的质量和效率得到了显著提升。原创 2025-07-30 11:42:37 · 24 阅读 · 0 评论 -
22、C++ 日志库中的依赖管理与多输出实现
本文详细探讨了在C++日志库开发中如何实现依赖管理与多输出功能。通过识别外部和内部依赖、设计通用接口、使用依赖注入等技术手段,提高了代码的灵活性和可维护性。同时,通过实现FileOutput和StreamOutput等输出组件,支持将日志消息发送到多个目的地。文章还介绍了模拟依赖(Mocks)的使用、日志流类的简化以及测试验证过程,展示了完整的依赖管理和多输出设计方案。原创 2025-07-29 13:07:19 · 3 阅读 · 0 评论 -
21、软件测试的深度剖析:何时过度、侵入性及各类测试的作用
本文深入剖析了软件测试中的关键问题,包括测试过度、侵入性测试的设计原则,以及单元测试、集成测试和系统测试的作用与区别。文章还介绍了其他类型的测试如性能测试、渗透测试等,并探讨了它们在TDD(测试驱动开发)中的核心作用。通过实际案例和流程图、表格等形式,帮助开发者更好地理解和应用各种测试方法,提高软件质量和开发效率。原创 2025-07-28 14:55:42 · 28 阅读 · 0 评论 -
20、日志控制与过滤的实现与优化
本文详细介绍了日志记录功能的优化与增强,包括解决日志换行问题、避免直接写入文件、实现日志过滤机制,并支持基于Tag标签的复杂过滤规则(如相对值匹配)。通过自定义LogStream类和多态标签比较逻辑,增强了日志系统的灵活性和可维护性。文章还展示了如何使用测试驱动开发(TDD)确保代码质量,并提供了完整的实现代码、测试用例及设计流程图。原创 2025-07-27 13:02:47 · 0 阅读 · 0 评论 -
19、使用TDD重构标签设计与日志消息过滤测试设计
本文介绍了使用测试驱动开发(TDD)重构日志系统中的标签设计,并实现灵活的日志消息过滤功能。通过引入模板类和奇异递归模板模式(CRTP),简化了标签类的设计,减少了代码重复。同时,基于析取范式(DNF)公式实现了强大的日志过滤能力,并通过多个测试用例验证了功能的正确性。文章还讨论了后续优化方向,为构建高效、可扩展的日志记录库奠定了基础。原创 2025-07-26 11:33:34 · 26 阅读 · 0 评论 -
18、深入探索日志过滤与标签扩展
本文深入探讨了日志过滤机制的设计与实现,以及如何通过扩展标签类型提升日志系统的灵活性和功能性。内容涵盖日志消息完成机制的三种方法比较、新增数值与布尔类型标签的实现、日志过滤逻辑的结合应用、性能优化策略,以及未来发展方向。通过这些改进,日志系统能更有效地支持复杂场景下的日志管理需求,助力软件开发效率与质量的提升。原创 2025-07-25 13:51:14 · 0 阅读 · 0 评论 -
17、日志系统中添加默认标签值的实现与优化
本文详细介绍了为日志系统添加默认标签值的实现与优化过程。通过测试驱动开发的方法,逐步实现了默认标签的配置、多标签支持以及相关函数的优化。文章涵盖代码设计、测试用例编写、工具函数改进等内容,并提供了代码结构、流程图以及最佳实践建议,旨在帮助开发者更好地理解和扩展日志系统的功能。原创 2025-07-24 14:43:27 · 25 阅读 · 0 评论 -
16、深入探索测试驱动开发:构建灵活日志库
本文深入探讨了如何使用测试驱动开发(TDD)方法构建一个灵活的日志库。通过逐步添加日志级别、标签管理、默认标签和日志过滤功能,展示了TDD如何帮助开发者创建高质量、易维护的代码。文章还讨论了测试漏洞的发现、其他测试相关思考以及未来可能的扩展方向,为构建强大而灵活的日志工具提供了实践指导。原创 2025-07-23 14:52:59 · 4 阅读 · 0 评论 -
15、C++ 日志库测试与功能开发实践
本文详细记录了一个C++日志库的开发与测试过程,从测试环境搭建、日志功能实现到后续优化拓展。内容涵盖日志消息记录、时间戳添加、流式日志构建、日志级别管理、文件分割策略及性能优化等方面,采用测试驱动开发(TDD)方式确保代码质量,并提供了完整的代码示例和实践建议。原创 2025-07-22 10:04:55 · 26 阅读 · 0 评论 -
14、使用 TDD 创建日志库
本文详细介绍了如何使用测试驱动开发(TDD)方法构建一个满足微服务开发者需求的日志库。通过从简单的日志记录功能开始,逐步增强功能,包括添加日期和时间信息、实现多线程安全、支持日志级别与过滤等,确保了日志库的实用性与可维护性。文章结合代码示例和测试用例,展示了TDD在实际项目中的应用价值。原创 2025-07-21 15:09:32 · 25 阅读 · 0 评论 -
13、如何编写优秀的测试用例
本文详细介绍了如何编写优秀的测试用例,涵盖了测试用例的基本要求、聚焦特定测试场景的分类(正常用例、边界用例、错误用例、非标准用例和故意误用用例)、避免重复测试、使用随机行为的注意事项,以及测试结果而非实现过程的原则。此外,还讨论了随机行为在测试中的应用场景,如随机渗透测试和模糊测试,并总结了编写测试用例的最佳实践。通过遵循这些方法和技巧,可以提升测试效率和代码质量,使软件更加健壮和可靠。原创 2025-07-20 12:19:45 · 23 阅读 · 0 评论 -
12、测试中的设置、拆解与优质测试要素
本文详细探讨了软件测试中的关键环节,包括测试套件的设置与拆解代码的编写,以及如何处理其中的错误和异常。同时,深入分析了优质测试用例应具备的要素,如易于理解、专注特定场景、可重复执行和贴近项目需求。通过示例代码和具体分析,帮助开发者提升测试质量与效率,确保软件的稳定性和可靠性。原创 2025-07-19 10:43:09 · 27 阅读 · 0 评论 -
11、提升多测试的测试设置与清理功能
本文介绍了如何提升多测试的测试设置与清理功能,包括单个测试和测试套件的设置与清理方法,以及优化后的测试执行流程。通过使用策略类、辅助函数和宏定义,实现了更高效、灵活的测试管理,提高了测试代码的可维护性和执行效率。同时,文章还详细描述了测试套件的应用场景和实现步骤,并给出了完整的代码示例和运行流程说明,帮助开发者构建稳定可靠的测试框架。原创 2025-07-18 12:48:48 · 0 阅读 · 0 评论 -
10、C++测试库的优化与测试设置和拆卸功能实现
本文探讨了C++测试库的优化方法以及测试设置与拆卸功能的实现。通过避免宏的使用、尝试lambda表达式、优化TEST和TEST_EX宏,以及采用策略类设计实现测试的设置和拆卸,测试代码变得更加清晰和易于维护。文章还展望了未来测试库的优化方向,并通过流程图和总结表格展示了关键实现要点。原创 2025-07-17 09:54:30 · 2 阅读 · 0 评论 -
9、深入探索 C++ 测试中的确认类型与改进方向
本文深入探讨了C++测试中的确认类型与改进方向,涵盖字符串字面量、浮点值比较的精度问题以及确认语句的编写建议。文章还讨论了使用C++20的source_location特性替代__LINE__宏的可能性,并探索了在测试中引入Lambda表达式的灵活性与优势。通过这些改进,旨在提升测试代码的质量、可维护性与扩展性。原创 2025-07-16 16:01:23 · 28 阅读 · 0 评论 -
8、扩展测试确认类型:从基础到高级的C++测试实战
本文深入探讨了C++测试框架的扩展与优化,从解决行号问题入手,逐步增加对long、long long及string等类型的确认测试,并深入分析了指针和字符串字面量的测试挑战。通过添加边界测试、组合测试及异常处理测试,提升测试覆盖率。同时,还提出了减少对象创建、并行测试及缓存结果等性能优化策略,使测试框架更加健壮和高效。原创 2025-07-15 10:06:19 · 26 阅读 · 0 评论 -
7、测试库增强与断言支持及更多确认类型添加
本文介绍了如何增强测试库以支持断言功能,并添加了多种确认类型,包括布尔值、整数、字符串字面量和浮点数的确认。通过创建自定义异常类、使用宏定义简化测试代码以及改进测试流程,使测试库能够更清晰地显示测试失败原因。同时强调了测试边缘情况和错误案例的重要性,不仅仅依赖代码覆盖率,确保代码的质量和稳定性。原创 2025-07-14 09:40:31 · 27 阅读 · 0 评论 -
6、测试驱动开发:从基础到确认功能的实现
本文介绍了测试驱动开发(TDD)的核心流程,并重点探讨了如何为测试库添加确认功能(confirmation)。通过实际代码示例和测试结果分析,文章展示了从基础测试构建到增强测试功能的完整过程,同时讨论了确认功能在边界条件测试、逻辑验证和接口测试中的应用场景。最后,文章展望了测试库的未来发展方向,包括更多类型的确认、测试报告优化和并行测试等。原创 2025-07-13 14:36:11 · 28 阅读 · 0 评论 -
5、测试增强与通过的实践探索
本文深入探讨了在测试驱动开发(TDD)中如何增强测试用例,以提高代码的可靠性和稳定性。文章详细分析了如何处理预期异常未抛出、预期失败测试用例以及预期失败但实际通过的情况,并提出了改进方案,包括定义新的异常类、引入预期失败原因设置方法和计数器等。通过实践和流程优化,确保测试用例的准确性和完整性,从而提升软件质量。原创 2025-07-12 10:22:54 · 2 阅读 · 0 评论 -
4、测试驱动开发:测试结果处理与TDD流程实践
本文详细介绍了测试驱动开发(TDD)中的测试结果处理机制与核心开发流程。内容涵盖如何通过改进测试框架输出清晰的测试结果总结、支持任意输出流,以及TDD的四大核心原则:构建失败优先、只实现通过测试所需的最小功能、持续增强测试用例、避免过度设计并及时重构。文章还通过一个计算器类的示例,演示了TDD流程的具体实践,并提供了完整的流程图与关键要点总结,帮助开发者提升代码质量与可维护性。原创 2025-07-11 15:43:10 · 0 阅读 · 0 评论 -
3、C++测试库的使用与扩展
本文详细介绍了如何构建并扩展一个简单的C++测试库,内容包括项目结构调整、测试结果报告改进、支持多个测试用例、测试结果总结与重定向等关键步骤。通过逐步优化,该测试库最终具备良好的可扩展性和实用性,适用于C++项目中的单元测试需求。原创 2025-07-10 09:54:19 · 26 阅读 · 0 评论 -
2、探索C++中测试驱动开发的起点
本文详细介绍了如何在C++中从零开始构建一个简单的测试驱动开发框架。内容涵盖测试函数的定义、仿函数的使用、宏封装、测试的自动注册机制,以及测试框架的优化与扩展,如测试结果的详细输出和测试分组与过滤。通过这些步骤,开发者可以构建一个灵活且实用的测试框架,提升代码质量和可维护性。原创 2025-07-09 16:00:54 · 27 阅读 · 0 评论 -
1、C++ 测试驱动开发:从入门到实践
本文详细介绍了测试驱动开发(TDD)在C++中的应用,从TDD的基本概念和优势入手,探讨了构建测试库、创建日志库以及扩展TDD库以支持复杂场景的技术细节。文章还通过实际案例展示了TDD的开发流程,并总结了最佳实践和未来趋势,帮助开发者编写更可靠、易于维护的C++代码。原创 2025-07-08 10:26:30 · 28 阅读 · 0 评论