- 博客(256)
- 收藏
- 关注
原创 Appium原理深度解析
统一的WebDriver协议:保持与Selenium API的一致性客户端-服务器架构:通过HTTP协议进行通信平台特定驱动:将标准命令转换为原生自动化框架调用无需修改应用:利用各平台官方的测试框架跨平台支持:统一的API支持Android和iOS更有效地调试自动化脚本优化测试性能和稳定性解决复杂的设备和平台兼容性问题根据项目需求选择合适的自动化策略。
2025-11-13 21:18:12
461
原创 Selenium原理深度解析
客户端-服务器架构:基于HTTP协议的远程控制浏览器驱动桥梁:将标准化命令转换为浏览器原生API调用事件模拟机制:通过浏览器API模拟真实用户交互异步通信模型:支持并行执行和分布式测试标准化协议:W3C WebDriver协议确保跨浏览器一致性更有效地调试自动化脚本优化测试性能和稳定性设计更健壮的测试框架解决复杂的浏览器兼容性问题。
2025-11-13 20:57:41
454
原创 区块链安全测试
好的,区块链安全测试是一个系统性的工程,需要结合传统软件测试方法和区块链特有的安全考量。我将为您提供一个完整的区块链安全测试框架。通过这个完整的区块链安全测试框架,您可以系统地识别、分类和修复智能合约中的安全漏洞,确保项目的安全性和可靠性。
2025-11-01 18:22:06
1069
1
原创 EVM(以太坊虚拟机)
理解 EVM 不仅是学习智能合约开发的基础,更是理解整个区块链技术栈的核心。它作为区块链领域的"标准运行时",将继续在可预见的未来扮演关键角色。进行一次极其深入和全面的解析。这将是理解智能合约如何执行的核心。指其他区块链也实现了 EVM,允许以太坊的智能合约和工具。哈希, 时间戳, Number。更新Storage & 余额。LIFO, 1024深度。余额 & Nonce。操作码 Opcode。EVM 三大存储组件。存储 Storage。Gas消耗 & 退款。
2025-11-01 18:17:34
872
原创 Hardhat
通过掌握 Hardhat,您可以构建专业级的区块链开发工作流,确保代码质量和开发效率。Hardhat 是一个专业的以太坊开发环境,专门为智能合约开发设计。指南,涵盖从基础概念到高级用法的所有内容。
2025-11-01 18:13:31
335
原创 区块链测试
好的,区块链测试是一个系统性的工程,需要结合传统软件测试方法和区块链特有的测试策略。我将为您提供一个完整的区块链测试指南。通过系统化的测试策略,可以确保智能合约的安全性、可靠性和性能。
2025-11-01 18:08:45
1046
原创 Playwright 使用手册
Playwright 是一个现代化的 Web 测试和自动化框架,支持 Chromium、Firefox 和 WebKit 浏览器。本手册将介绍 Playwright 的核心概念和常用功能。
2025-10-13 10:49:25
391
原创 深入解析Pytest 底层源码
Pytest 的底层架构是一个基于 pluggy钩子机制的微内核架构。其核心流程是一个固定的链条,链条上的每个环节都通过钩子向外暴露,允许插件介入。这种设计使得 Pytest 极其灵活和强大。启动: 解析配置,加载所有插件(包括核心插件)。收集: 遍历文件系统,发现测试用例,并生成Item对象。执行: 对每个Item,依次执行setup->call->teardown协议。报告: 在整个过程中,通过不同的钩子收集信息,最终生成报告。
2025-09-24 18:00:21
435
原创 Python Poetry 完整指南
✅ 统一的依赖管理✅ 自动的虚拟环境管理✅ 简单的包发布流程✅ 清晰的依赖解析✅ 多环境支持使用 Poetry 可以显著提高 Python 项目的开发效率和代码质量。
2025-09-21 17:11:09
437
原创 Pytest如何进行插件开发
构思功能:明确你的插件要解决什么问题。选择正确的 Hook:查阅文档,找到介入测试生命周期的最佳钩子。搭建项目结构:创建包和文件。编写核心逻辑:在插件模块中实现 hook 函数和 fixture。注册入口点:在中声明。以可编辑模式安装并测试:使用。(可选) 为插件写测试:使用pytesterfixture。(可选) 打包发布:与全世界分享你的成果。从修改开始,逐步深入到编写完整的独立插件,是学习 Pytest 插件开发的最佳路径。
2025-09-18 10:38:10
1020
原创 Vue3高阶组件(HOC)开发完全指南
高阶组件(Higher-Order Component)是 React 生态中的核心模式,在 Vue 中同样可以实现类似的逻辑复用能力。
2025-05-08 20:43:06
647
原创 Vue3透传 Attributes($attrs)深度解析
父组件传递给子组件,但未被props或emits声明的属性包括:class和style普通 HTML 属性(如iddata-*原生 DOM 事件监听器(如@click。
2025-05-08 20:35:20
1045
原创 Vue3组件通信:Props & Emits 详解
- 父组件 -->-- 子组件 --></script>单向数据流Props 向下,Events 向上不要直接修改 Props明确接口为 Props 和 Emits 定义清晰的类型添加必要的验证逻辑适度抽象当 Props 超过 5 个时考虑重构组件复杂通信使用状态管理(Pinia)性能优化大对象 Props 使用shallowRef频繁变化的 Props 考虑防抖文档化## 组件 API### Props| 名称 | 类型 | 默认值 | 说明 |
2025-05-08 18:02:20
840
原创 React 的 `useState` 详解
命名规范:使用的命名约定最小化状态:避免存储可计算的值不可变更新:总是返回新对象/数组而非修改原值复杂逻辑抽离:当状态逻辑复杂时考虑使用useReduceruseState是 React 函数组件的基石,掌握它的正确用法是构建可靠 React 应用的关键。
2025-05-08 09:10:39
293
原创 React 高效开发全面指南
组件设计原则单一职责高内聚低耦合受控与非受控组件区分状态管理黄金法则本地状态用useState全局状态用 Zustand/Redux服务端状态用 SWR/React Query性能优化要点避免不必要的渲染合理使用 memoization代码分割按需加载TypeScript 集成size?onClick?// 组件实现React 官方博客React RFCsReact 状态管理库基准。
2025-05-08 09:07:54
657
原创 Vue3的 `v-model` 全面指南
- 父组件 --><template>-- 子组件 -->})</script>问题:自定义组件中使用 v-model 时值不更新解决:确保正确触发事件。
2025-05-08 08:47:58
625
原创 Vue3的Provide/Inject 机制详解
Provide/Inject 是 Vue 3 中用于的重要 API,特别适合解决"prop 逐级透传"的问题。
2025-05-08 08:42:45
936
原创 script setup详解
是 Vue 3 组合式 API 的,通过编译时的魔法,让代码变得更简洁直观,同时保留了完整的 Composition API 能力。
2025-05-08 08:22:34
481
原创 Vue 中 `watch` 的使用场景详解
使用watch需要响应数据变化执行异步操作时需要监听复杂数据结构的深层变化时需要协调多个数据源的变化时需要在路由参数变化但组件复用时重新获取数据需要实现副作用逻辑(如DOM操作、本地存储等)对于简单的数据派生,优先考虑使用computed;对于用户交互触发的逻辑,优先考虑使用事件处理程序。
2025-05-06 09:21:54
633
原创 浮动(float)布局详解
浮动(float)是CSS中一种传统的布局方式,虽然现代布局更推荐使用Flexbox或Grid,但理解浮动仍然很重要,特别是在维护旧代码时。
2025-05-06 09:19:58
674
原创 依赖注入(Dependency Injection)详解
依赖注入(DI)是一种重要的设计模式,用于管理代码之间的依赖关系,提高可测试性和可维护性。在前端框架如Vue/Angular中广泛应用。
2025-05-06 09:19:01
466
原创 Vue3 `setup` 函数全面解析
number</script>}>()</script>更好的逻辑组织:按功能而非选项组织代码更好的类型推断:TypeScript 支持更完善更小的生产包:模板编译优化更好的性能:没有this代理开销更好的代码复用:易于提取组合式函数。
2025-05-06 09:18:13
605
原创 Vue 中的 `export default` 详解
/ 方式1: 使用 defineComponent// 组件选项})// 方式2: 直接标注类型msg?: stringprops: {// ...customOption: 'some value', // 自定义选项// ...
2025-05-06 09:15:40
1207
原创 Vue模板语法全面指南
Vue 的模板语法是基于 HTML 的扩展,允许你声明式地将组件实例的数据绑定到 DOM。以下是 Vue 3 模板语法的详细解析。原始 HTML2. 属性绑定基本属性绑定布尔属性动态属性名3. 条件渲染v-if / v-else-if / v-elsev-showv-if vs v-show:带索引的 v-for遍历对象5. 事件处理内联事件方法事件处理器事件修饰符6. 表单绑定基本表单绑定多选框单选按钮下拉选择7. 动态组件8.
2025-05-06 09:14:39
444
原创 Vue3响应式数据:`reactive()` 与 `ref()` 深度对比
fill:#333;color:#333;color:#333;fill:none;基本类型引用类型是否需要响应式数据数据类型使用 ref是否需要重新赋值使用 reactive通过 .value 访问直接访问属性掌握reactive()和ref()的区别与适用场景,能够帮助你更高效地组织 Vue 3 应用的响应式数据。组件状态管理优先考虑reactive独立的基本类型值或需要灵活替换的对象使用ref组合式函数返回通常使用ref以便于解构使用。
2025-05-06 09:13:39
1141
原创 Yarn包管理工具使用指南
Yarn 是一个快速、可靠、安全的 JavaScript 包管理工具,是 npm 的替代品。以下是 Yarn 的详细使用说明。
2025-05-06 08:27:38
480
原创 Vue3实战指南
Vue 3 是当前流行的前端框架之一,具有更好的性能、更小的体积和更优秀的组合式API。下面我将介绍Vue 3的核心概念和实战技巧。
2025-05-06 08:25:04
1116
原创 Scrapy-下载器中间件(Downloader Middlewares) 深度解析
下载器中间件是Scrapy引擎和下载器之间的处理钩子,用于全局修改请求和响应。
2025-05-05 20:40:01
935
1
原创 项目管道(Item Pipeline) 深度解析
项目管道(Item Pipeline)是Scrapy框架中处理爬取数据的核心组件,负责对爬虫提取的Item进行后续处理。
2025-05-05 20:36:32
920
网络安全领域的HTTP Header安全配置实践与防护机制解析
2025-03-25
接口自动化测试中的动态参数、加密和签名处理方案详解
2025-03-25
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅