WebAPI中写单元测试
摘要:首次在WebAPI中写单元测试 xUnit 这次我使用的是xUnit测试框架,而不是VS自带的MSTest框架。在添加新建项目时选择xUnit测试项目就行了。 目前只体验到了一个差别,即xUnit可以使用特性向测试方法传参,而不用在测试方法中一个赋值语句一个个去定义参数,这是比较方便的。 单元测试有
阅读全文
代码风格
摘要:屎山代码风格指南(避免被优化&&避免被接盘) 欢迎补充!!! 序言 良好的代码结构:Bad 👎🏻 使用有意义的变量和函数名,遵循命名规范,使代码易于理解。 组织代码,使用适当的文件和文件夹结构,保持模块化。 避免全局变量的滥用,尽量使用局部作用域。 单一职责原则:Bad 👎🏻 每个函数或模块
阅读全文
SonarQube
摘要:SonarQube 关于代码质量度量和分析的一些总结 最近团队做CMMI3认证,这期间涉及到了代码质量度量。花了点时间做了总结,分享给大家。 先看一张整体的图,然后逐个指标展开说明。 一、单元测试覆盖率 单元测试覆盖率(Coverage)是一个度量单元测试覆盖了多少代码的指标。它是一种衡量测试质量的
阅读全文
SonarLint and SonarQube
摘要:SonarQube系列-架构与外部集成 合集 - DevOps工具链(6) 1.SonarQube系列-架构与外部集成09-10 2.SonarQube之采购选型参考2022-02-213.SonarQube系列-认证&授权的配置09-254.【Jenkins系列】-Pipeline语法全集04-0
阅读全文
测试驱动开发(TDD)、行为驱动开发(BDD)和验收测试驱动开发(ATDD)
摘要:TDD、BDD、ATDD都是什么、有什么区别?(上) 软件开发是一个迭代过程,包括编写、测试和改进代码,直到满足需求。测试驱动开发(TDD)、行为驱动开发(BDD)和验收测试驱动开发(ATDD)是支持该过程的三种方法。TDD、BDD和ATDD都是软件开发中用于测试和确保质量的方法。虽然它们都以提高软
阅读全文
JMeter测试.Net5.0,.Net6.0框架下无数据处理的并发
摘要:使用JMeter测试.Net5.0,.Net6.0框架下无数据处理的并发情况 1. 安装JMeter及使用 1.1下载JMeter 登录官方网站找到下载链接进行下载:https://jmeter.apache.org/download_jmeter.cgi 1.2配置环境变量 配置JMeter环境变
阅读全文
高并发性能指标
摘要:秒懂QPS、TPS、PV、UV、GMV、IP、RPS 发布于2021-03-30 09:50:44阅读 1.4K0 QPS、TPS、PV、UV、GMV、IP、RPS等各种名词,外行看起来很牛X,实际上每个程序员都是必懂知识点。下面我来一一解释一下。 QPS Queries Per Second,每秒
阅读全文
几次事故引起----项目质量保障
摘要:从几次事故引起的对项目质量保障的思考 近期发生了几件事故,第一件是封禁设备的事故,在后台有张页面,只要输入指定的设备号,就能禁止在该手机上登录。 问题就出在这个输入框,因为这个输入框什么也不填,点击按钮,也能发起禁用的接口。 有些用户记录中,设备号是空的,那么这些记录就会被命中,从而导致这些用户的账
阅读全文
结构体数组使用StructLinq
摘要:.NET性能优化-为结构体数组使用StructLinq 前言 本系列的主要目的是告诉大家在遇到性能问题时,有哪些方案可以去优化;并不是要求大家一开始就使用这些方案来提升性能。在之前几篇文章中,有很多网友就有一些非此即彼的观念,在实际中,处处都是开发效率和性能之间取舍的艺术。《计算机编程艺术》一书中提
阅读全文
存储用户密码加密算法
摘要:存储用户密码应该使用什么加密算法? 概述 编程开发中,像用户登录注册这种功能很常见,那么对于用户密码处理,我们该选择什么样的加密算法呢?在这种场景下,算法需要满足下面两个条件: 算法需不可逆,这样才能有效防止密码泄露。 算法需相对慢,可以动态调整计算成本,缓慢是应对暴力破解有效方式。 目前来看有这么
阅读全文
第一个单元测试
摘要:单元测试(一):我的第一个单元测试 一.创建项目并在被测试项目中编写代码 分别建立两个类库项目:被测试项目(Demo)和 测试项目(命名规范:在被项目项目后添加.Tests Demo.Tests) 在Demo中添加如下代码: 1 namespace Demo 2 { 3 public class F
阅读全文
基准测试github.com/BrennanConroy/BlogPost60Bench
摘要:【译】ASP.NET Core 6 中的性能改进 原文 | Brennan Conroy 翻译 | 郑子铭 受到 Stephen Toub 关于 .NET 性能的博文的启发,我们正在写一篇类似的文章来强调 6.0 中对 ASP.NET Core 所做的性能改进。 基准设置 我们将在整个示例中使用 B
阅读全文
慢查询雪崩-不加这条索引十几秒执行完的查询和更新操作,加了索引只要几毫秒
摘要:容易引起雪崩的两个处理 背景 先介绍标题《容易引起雪崩的两个处理》的第一个处理:慢查询。上周在测试环境遇到一个慢查询问题,虽然是测试环境,但是现象还是很让人担忧的:“在大量执行update操作”“已经执行1个多小时”“负载200多,基本上库都卡死了”。把库都要搞挂了,细思极恐啊。于是,这个事件处理的
阅读全文
sonarqube C# Opencover来生成单元测试覆盖报告文档
摘要:sonarqube C# 单元测试覆盖率一栏总是0%解决办法 一、什么叫单元测试(unit testing)? 是指对软件中的最小可测试单元进行检查和验证。对于单元测试中单元的含义,一般来说,要根据实际情况去判定其具体含义,如C语言中单元指一个函 数,Java里单元指一个类,图形化的软件中可以指一个
阅读全文
用StyleCop规范团队代码
摘要:https://marketplace.visualstudio.com/items?itemName=vs-publisher-599079.CodeFormatter 前言 编码风格,每个人都是有不同的特点,风格各异,而且一个人在不同的时期,编码风格的差异也可能是非常大的,好比学生时代,刚工作的
阅读全文
负载测试/压力测试工具 NBomber
摘要:开源的负载测试/压力测试工具 NBomber 负载测试和压力测试对于确保 web 应用的性能和可缩放性非常重要。 尽管它们的某些测试是相同的,但目标不同。 负载测试:测试应用是否可以在特定情况下处理指定的用户负载,同时仍满足响应目标。 应用在正常状态下运行。 压力测试:在极端条件下(通常为长时间)运
阅读全文
祖传屎山代码
摘要:面对祖传屎山代码应该采用的5个正确姿势 1. 这世界上全是祖传代码 有的代码传了四五年,有的传了十几年,还有的传了二十多年! 做Java的同学,你能想象得到只用JSP做的系统吗? 我遇到过, 6000多行的JSP充当Controller, 有个程序员某一次在JSP中加代码太多了,直接导致无法编译了。
阅读全文
单元测试误区
摘要:单元测试布道之一:定义、分类与策略 目录 在开始之前 什么是单元测试 测试的分类 单元测试的定义 单元测试与其他测试的区别 单元测试的必要性 测试金字塔 代码的可测试性 未决行为/非确定性 直接依赖于实现 全局变量/单例模式 静态方法/函数 复杂继承 高耦合代码 私有方法 单元测试策略 单元测试误区
阅读全文
Use NDepend to Measure How SOLID Your Code Is - NDepend
摘要:Use NDepend to Measure How SOLID Your Code Is - NDepend 使用NDepend衡量代码的SOLID程度 SOLID是面向对象的软件开发中的5条准则,也是开发人员可以提升自己代码质量的准则。那么如何衡量自己的代码是否符合SOLID准则呢?NDepen
阅读全文
抓Dump
摘要:.NET程序崩溃了怎么抓 Dump ? 我总结了三种方案 一:背景 1. 讲故事 最近几天接到了几个crash的求助,可能这几个朋友没玩过怎么去生成dump,只能手把手教,感觉也不是一个办法,所以有必要总结一下,后续再有朋友咨询的话,我就可以把这篇文章丢过去了😏😏😏,好了,我大概总结了下面三种
阅读全文