摘要: 前言 个人练手项目,从零开始集成常用功能。 地址:https://github.com/WillardHan/WebApiTest/tree/master 详细 目前已集成: Docker Compose / Kubernetes (Linux) Swagger (接口文档) AutoMapper 阅读全文
posted @ 2021-02-19 17:26 willardzmh 阅读(288) 评论(0) 推荐(0) 编辑
摘要: 背景 从后端测试的角度来看前端测试; 后端测试 黑盒测试:自动化接口测试,不关心内部实现,只关心入参出参,出于用户角度来测试完整功能;(自动化接口测试) 白盒测试:代码层单元测试,关心内部实现,聚焦核心方法,出于开发角度来测试部分核心功能;(上一篇单元测试) 前端测试 黑盒测试:(本篇实现) 白盒测 阅读全文
posted @ 2024-03-04 13:20 willardzmh 阅读(7) 评论(0) 推荐(0) 编辑
摘要: 背景和目的 为了提高系统稳定性,通常我们有两方面的计划: 黑盒测试:自动化测试,以接口来主体,通过控制入参的形式,检验出参,来模拟用户在线上的实际业务;(可以覆盖绝大部分的业务) 白盒测试:单元测试,以关键逻辑方法为主体,通过控制入参的形式,检验数据变化,站在开发的角度上来模拟实际调用(可以覆盖复杂 阅读全文
posted @ 2023-12-29 15:58 willardzmh 阅读(73) 评论(0) 推荐(0) 编辑
摘要: 背景 DotNetCore CAP(以下简称cap) 通常运用在分布式事务的场景,主要解决的是不同程序之间远程调用的事务一致性;举例:程序X负责订单相关的接口,程序Y负责商品相关的接口,两者独立部署,数据库也是独立的,当用户下订单时,需要去调程序X的下订单接口,创建后,再去调程序Y的扣减用商品库存的 阅读全文
posted @ 2022-10-24 19:26 willardzmh 阅读(655) 评论(0) 推荐(0) 编辑
摘要: 前言 前后端采用不同的开发语言,作为后端开发为主的开发人员,了解两种语言的不同点更有助于快速了解和熟悉前端的开发; 本编主要是做后端linq和前端es6的对比,了解linq在后端的操作,如何在前端也实现同样的操作; 详细内容:以下方法,首字母大写是后端方法,首字母是小写是前端方法 1)后端 Wher 阅读全文
posted @ 2022-08-29 20:30 willardzmh 阅读(157) 评论(0) 推荐(0) 编辑
摘要: VSCode和WebStorm的一键运行 前提: 前端跑的最终命令是npm run dev,可根据实际需要跑的命令来修改内容。 1)VS Code: 第一步:新建运行配置 选中任意一个,新建完成后把该文件的内容清空; 第二步:拷贝以下配置(全覆盖){ // Use IntelliSense to l 阅读全文
posted @ 2021-12-28 11:12 willardzmh 阅读(396) 评论(0) 推荐(0) 编辑
摘要: Web端 1)使用浏览器缓存常用的基础设置数据;2)使用CDN保存图片、文件等静态资源;3)合并http请求;4)秒杀时可在前端做随机算法来达到流量控制,比如只有1/10会往后端发请求; 服务器端 1)分布式缓存缓存热点数据;2)使用合理的IOC生命周期来及时释放资源;3)使用MQ来达到削峰的目的; 阅读全文
posted @ 2021-07-04 09:58 willardzmh 阅读(280) 评论(0) 推荐(0) 编辑
摘要: 前言 众所周知,自己遇到的问题自己解决,但是自己不知道的问题就需要去网上搜索,免得去求助他人,浪费他人时间,自己也能得到更多学习。然而国内.net社区总体而言不如国外的(语言本身也是国外团队开发的),所以如何使用浏览器搜索程序中报错的解决方法变得很重要。 详细步骤 第一步:让Visual Studi 阅读全文
posted @ 2021-06-03 18:34 willardzmh 阅读(140) 评论(0) 推荐(0) 编辑
摘要: 背景 本地环境:VS2019 + Docker Compose启动并调试程序; 问题:F5启动的时候,时不时会出现如下报错,笔者尝试以下几种路径去寻找问题点; 1)网页浏览时有些api无法访问; 2)docker ps :该api的容器是正常启动的; 3)docker logs containeri 阅读全文
posted @ 2021-05-12 10:27 willardzmh 阅读(156) 评论(0) 推荐(0) 编辑
摘要: var refAssembyNames = Assembly.GetExecutingAssembly().GetReferencedAssemblies(); foreach (var asslembyNames in refAssembyNames) { Assembly.Load(asslem 阅读全文
posted @ 2021-02-25 10:21 willardzmh 阅读(1578) 评论(0) 推荐(0) 编辑