Solaris上对比测试BIND和Nominum两个DNS软件性能

构建企业级DNS系统(八)bind DNS解析性能测试及调优 详细介绍基于bind搭建的DNS系统的性能测试方法及性能调优方法。 阅读详情
 BIND,没什么说的了,自1983年Paul Mockapetris发明后,就成为Internet中DNS的事实上的标准,由ISC(Internet Software Consortium)负责维护,具体的开发由
Nominum(www.nominum.com)公司来完成,BIND 9.x是免费软件,为Solaris的标准配置,即便电信中也绝大多数采用BIND8.x/9.x。

但2002 年10月21日,对Internet的13台DNS根域名服务器的持续了一个小时的拒绝服务攻击,给人们敲响了警钟,采用新的算法,提升DNS性能,是一 种方法,Nominum出继续升级免费的BIND外,还开发了新算法的Nominum Foundation CNS DNS软件,有好事同事,改不了工程师的老毛病,好奇并对BIND和Nominum的性能进行了对比测试,分享如下:

1。准备机器:

采用Sun Fire V240服务器,1x 1GHz USIIIi, 512MB内存,4x 1000Base-T网口,装Solaris 10, Sun Studio 10, 联通到Internet外网。

v240:/# showrev
Hostname: v240
Hostid: 838af0bd
Release: 5.10
Kernel architecture: sun4u
Application architecture: sparc
Hardware provider: Sun_Microsystems
Domain:
Kernel version: SunOS 5.10 Generic_118822-08

v240:/# cd /opt/SUNWspro/bin
v240:/# ./version
Machine hardware:   sun4u
OS version:         5.10
Processor type:     sparc
...
Sun Studio 10
        Sun Studio 10 C Compiler
        Sun Studio 10 C++ Compiler
        Sun Studio 10 Tools.h++ 7.1
...

v240:/# which cc
/opt/SUNWspro/bin/cc

2。配DNS - DIND 9.2.4

配主机文件:

v240:/# vi /etc/hosts
#
# Internet host table
#
127.0.0.1       localhost
192.168.0.55    v240 v240.example.com loghost

打开DNS开关文件:

v240:/# cd vi /etc/nsswith.conf
...
hosts:      files  dns
...

配DNS client文件,DNS client指向网通和本机:

v240# vi /etc/resolv.conf
nameserver 192.168.0.55     //本机IP
nameserver 202.x.x.x            //xxDNS

配DNS服务器rndc 文件:

v240# vi /etc/rndc.conf
# Start of rndc.conf
key "rndc-key" {
        algorithm hmac-md5;
        secret "qb2cKV1j07PXbv//QQPytA==";
};

options {
        default-key "rndc-key";
        default-server 127.0.0.1;
        default-port 953;
};
# End of rndc.conf       

配DNS服务器named.conf文件:

v240# vi /etc/named.conf
key "rndc-key" {
       algorithm hmac-md5;
       secret "qb2cKV1j07PXbv//QQPytA==";
};

controls {
       inet 127.0.0.1 port 953
               allow { 127.0.0.1; } keys { "rndc-key"; };
};

options {
                  version "$Id, worldhello.net";
                  directory "/var/named";
                  pid-file  "named.pid";
                  allow-query { any; };
                  notify yes;
                  recursion yes;
          };
          zone "." in {
                  type hint;
                  file "db.cache";
          };
          zone "example.com" in {
                  type master;
                  file "db.example.com";
          };
          zone "0.168.192.in-addr.arpa" in {
                  type master;
                  file "db.0.168.192";
          };
          zone "0.0.127.in-addr.arpa" in {
                  type master;
                  file "db.local";
          };

配DNS服务器cache文件:

v240# vi /var/named/db.cache
.                        3600000      NS    D.ROOT-SERVERS.NET.
D.ROOT-SERVERS.NET.      3600000      A     128.8.10.90
;
; formerly NS.NASA.GOV
;
.                        3600000      NS    E.ROOT-SERVERS.NET.
E.ROOT-SERVERS.NET.      3600000      A     192.203.230.10
;
; formerly NS.ISC.ORG
;
.                        3600000      NS    F.ROOT-SERVERS.NET.
F.ROOT-SERVERS.NET.      3600000      A     192.5.5.241
;
; formerly NS.NIC.DDN.MIL
;
.                        3600000      NS    G.ROOT-SERVERS.NET.
G.ROOT-SERVERS.NET.      3600000      A     192.112.36.4
;
; formerly AOS.ARL.ARMY.MIL
;
.                        3600000      NS    H.ROOT-SERVERS.NET.
H.ROOT-SERVERS.NET.      3600000      A     128.63.2.53
;
; formerly NIC.NORDU.NET
;
.                        3600000      NS    I.ROOT-SERVERS.NET.
I.ROOT-SERVERS.NET.      3600000      A     192.36.148.17
;
; temporarily housed at NSI (InterNIC)
;
.                        3600000      NS    J.ROOT-SERVERS.NET.
J.ROOT-SERVERS.NET.      3600000      A     198.41.0.10
;
; housed in LINX, operated by RIPE NCC
;
.                        3600000      NS    K.ROOT-SERVERS.NET.
K.ROOT-SERVERS.NET.      3600000      A     193.0.14.129
;
; temporarily housed at ISI (IANA)
;
.                        3600000      NS    L.ROOT-SERVERS.NET.
L.ROOT-SERVERS.NET.      3600000      A     198.32.64.12
;
; housed in Japan, operated by WIDE
;
.                        3600000      NS    M.ROOT-SERVERS.NET.
M.ROOT-SERVERS.NET.      3600000      A     202.12.27.33

配DNS服务器本机文件:

v240# vi /var/named/db.local
$TTL 5h
0.0.127.in-addr.arpa. IN SOA example.com. root.example.com. (
                1999062801      ;serial number (yyymmmdd##)
                10800           ;refresh every 3 hours
                3600            ;retry every 1 hours
                604800          ;expore after a week
                86400 )         ;TTL of 1 day
; Name servers
0.0.127.in-addr.arpa.           IN NS v240.example.com.
1                               IN PTR localhost

配DNS服务器本彧文件:

v240# vi /var/named/db.example.com
$TTL 5h
example.com. IN SOA example.com. root.example.com. (
                1999062804      ;serial number (yyymmmdd##)
                10800           ;refresh every 3 hours
                3600            ;retry every 1 hours
                604800          ;expore after a week
                86400 )         ;TTL of 1 day
; Name servers
example.com.              IN NS v240.example.com.
; Addresses
localhost                 IN A 127.0.0.1
v240.example.com.         IN A 192.168.0.55

v20z                      IN A 192.168.0.50

配DNS服务器反向文件:

v240# vi /var/named/db.0.168.192
$TTL 5h
0.168.192.in-addr.arpa. IN SOA example.com. root.example.com. (
                1999070501      ;serial number (yyymmmdd##)
                10800           ;refresh every 3 hours
                3600            ;retry every 1 hours
                604800          ;expore after a week
                86400   )       ;TTL of 1 day
; Name servers
1.1.10.in-addr.arpa.                 IN NS v240.example.com.

55                                   IN PTR v240.example.com.
50      

启动DNS服务:

v240# svcs -a |grep dns
disabled       18:11:53 svc:/network/dns/server:default
online         18:12:42 svc:/network/dns/client:default


v240# svcs -a |grep dns
v240# svcadm enable svc:/network/dns/server:default

试验DNS解析:

v240# bslookup

(可用www.sohu.com等)

v240# dig @202.106.0.20

; <<>;>; DiG 9.2.4 <<>;>; @202.106.0.20
;; global options:  printcmd
;; Got answer:
;; ->;>;HEADER<<- opcode: QUERY, status: NOERROR, id: 83
;; flags: qr rd ra; QUERY: 1, ANSWER: 13, AUTHORITY: 0, ADDITIONAL: 13

;; QUESTION SECTION:
;.                              IN      NS

;; ANSWER SECTION:
.                       86440   IN      NS      B.ROOT-SERVERS.NET.
.                       86440   IN      NS      C.ROOT-SERVERS.NET.
....


3。安装queryperf测试程序:

解queryperf包:

v240# gzcat queryperf-nominum-2.1.tar.gz |tar xvf -
x queryperf-nominum-2.1, 0 bytes, 0磁带块
x queryperf-nominum-2.1/input, 0 bytes, 0磁带块
x queryperf-nominum-2.1/input/sample.0, 101 bytes, 1磁带块
x queryperf-nominum-2.1/input/sample.1, 304 bytes, 1磁带块
...

编译:

v240# ./configure
checking for gcc... gcc
checking for C compiler default output... a.out
checking whether the C compiler works... yes
...

v240# make
gcc  -DPACKAGE_NAME=/"/" -DPACKAGE_TARNAME=/"/" -DPACKAGE_VERSION=/"/" -DPACKAGE_STRING=/"/" -DPACKAGE_BUGREPORT=/"/" -DHAVE_LIBSOCKET=1 -DHAVE_LIBNS
L=1 -DHAVE_GETADDRINFO=1 -DHAVE_GETNAMEINFO=1 -c queryperf.c
gcc  -DPACKAGE_NAME=/"/" -DPACKAGE_TARNAME=/"/" -DPACKAGE_VERSION=/"/" -DPACKAGE_STRING=/"/" -DPACKAGE_BUGREPORT=/"/" -DHAVE_LIBSOCKET=1 -DHAVE_LIBNS
L=1 -DHAVE_GETADDRINFO=1 -DHAVE_GETNAMEINFO=1  queryperf.o  -lnsl -lsocket -lresolv -lm -o queryperf
...


4。测试BIND 9.2.4

编辑包含测试域名的test文件(>; 30000个测试域名):

v240# vi test
www.sina.com.cn A
www.sohu.com    A
www.sun.com     A
...
(more than 30000)

向Sun Fire V240发出带30000测试域名的请求:
v240:/# ./queryperf -d test -s 192.168.0.55

DNS Query Performance Testing Tool

Nominum Version 2.1

Version: $Id: queryperf.c,v 1.20 2005/03/08 19:10:03 gson Exp $

[Status] Processing input data
[Status] Sending queries (beginning with 192.168.0.55)
[Timeout] Query timed out: msg id 1
[Timeout] Query timed out: msg id 3
[...
Warning: Received a response with an unexpected (maybe timed out) id: 28
[Status] Testing complete

Statistics:

  Parse input file:     once
  Ended due to:         reaching end of file

  Queries sent:         33000 queries
  Queries completed:    32980 queries
  Queries lost:         20 queries

  Percentage completed:  99.94%
  Percentage lost:        0.06%

  Started at:           Fri Jul  8 14:48:36 2005
  Finished at:          Fri Jul  8 14:48:53 2005
  Ran for:              17.379295 seconds

  Queries per second:   1897.660406 qps

即Sun Fire V240(1x 1Ghz USIIIi, 512MB内存),在此测试环境下,处理 DNS请求1897.7个每秒,丢失率0.06%。


5。安装Nominum Foundation CNS DNS软件

修改配置并卸载BIND DNS服务:


v240:/# pkill -9 named

v240:/# svcadm disable svc:/network/dns/server:default

v240:/# vi /etc/resolv.conf
nameserver 192.168.0.20 //本机IP

解Nominum Foundation CNS包:

v240:/# uncompress cns-1.5.3.2e-2-2005.10.01-solaris-10-sparc.tar.Z
v240:/# tar xvf cns-1.5.3.2e-2-2005.10.01-solaris-10-sparc.tar

安装Nominum Foundation CNS:

v240:/# pkgadd -d nomutils-2.0.27.0.1-sol10-sparc
v240:/# pkgadd -d cns-1.5.3.2.2-sol10-sparc
v240:/# pkgadd -d nomnanny-2.0.27.0.1-sol10-sparc
v240:/# pkgadd -d nomsdk-2.0.27.1.1-sol10-sparc
v240:/# pkgadd -d snmpproxy-1.0.3.3.3-sol10-sparc
(回答都是yes)

启动Nominum Foundation CNS DNS服务:

v240:/# /etc/init.d/cns start

6。测试DNS - Nominum Foundation CNS

测试域名同BIND 9.2.4

10 或 100个并发,向Sun Fire V240发大于30000个DNS请求:

v240:/# ./queryperf -d test -s v240 -q 10

DNS Query Performance Testing Tool

Nominum Version 2.1

Version: $Id: queryperf.c,v 1.20 2005/03/08 19:10:03 gson Exp $

[Status] Processing input data
[Status] Sending queries (beginning with 192.168.0.55)
[Status] Testing complete

Statistics:

  Parse input file:     once
  Ended due to:         reaching end of file

  Queries sent:         33000 queries
  Queries completed:    33000 queries
  Queries lost:         0 queries

  Percentage completed: 100.00%
  Percentage lost:        0.00%

  Started at:           Fri Jul  8 15:41:28 2005
  Finished at:          Fri Jul  8 15:41:32 2005
  Ran for:              4.336514 seconds

  Queries per second:   7609.799023 qps

即Sun Fire V240(1x 1Ghz USIIIi, 512MB内存),在此测试环境下,处理 DNS请求7609.8个每秒,无丢失0.00%。

性能提高:

7609.8个每秒 / 1897.7个每秒 = 4.01 倍
(Sun Fire V20z, 1x 1.6GHz AMD Opteron, 20354 qps)



7。结论

Nominum是 BIND和Nominum Foundation CNS的开发者,真的就在1个CPU,512MB内存的小服务器上, DNS性能能相差4倍的吗?测试数值显示的是这样,但测试方法有何不妥之处呢?我自己有点疑问,请点评。

如真是这样,常见省级DNS处理约4000qps, 岂不1个CPU就搞定啦?但电信常配Sun Fire V890服务器,8x双core,性能能否就说是16x倍呢?
EPICS电机支持(asynMotor) 阅读详情

相关推荐

优雅谈大模型:“System2”与“System 1”

研究人员探索了三种System 2方法——RaR、S2A 和 BSM,这些方法已经成功提炼到新的LLM,这个新的模型与System 1相比,产生了更好的结果,而且成本低于System 2。然而这种方法是有局限性,只能适用于特定的任务。

鲁班模锤 5162

DNS故障分析优化

DNS 解析时快时慢,该怎么办,看完此篇博客,你便有了清晰的答案!

今夜不设防,让我们猎个痛快! 8436

【GAMES201学习笔记】物质点法入门

《GAMES201》 学习笔记

捕鱼维的个人小站 9201

dnsperf测试dns性能

dnsperf和resperf是由Nominum/Akamai(2006-2018年)和DNS-OARC(自2019年起)开发的免费工具,这些工具可以简化获取域名服务(DNS)精确延迟和吞吐量指标的过程。这些工具易于使用,能够模拟典型的互联网场景,因此网络运营商可以基准测试他们的命名和寻址基础设施,并为升级做好规划。最新版本的dnsperf和resperf支持包含IPv6查询的测试文件。dnsperf会自行调整DNS查询负载以模拟网络条件。

lldhsds的专栏 3733

在 AS ABAP 7.40 SP05 里把 HANA 存储过程纳入 ABAP 生命周期:AMDP 实战示例与踩坑笔记

文章摘要:AMDP(ABAP Managed Database Procedures)是SAP推出的框架,用于在ABAP中管理数据库端的存储过程或函数,特别适用于HANA数据库。它通过将数据库语言(如SQLScript)嵌入ABAP方法,实现数据处理逻辑的"下推"(code pushdown),减少应用层与数据库间的数据传输。AMDP适用于需要数据库特有能力或大规模数据处理的场景,但应优先考虑Open SQL或ABAP CDS等更简单的方案。开发时需注意数据库类型检查、参数前缀(:)等语

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 225

KNN算法

其原理是在给定的数据集中,根据某个距离度量方法,将测试数据与已知数据集中的所有数据进行距离计算,然后选取K个距离最近的数据作为测试数据的邻居,根据邻居的类别进行投票,将测试数据分类到得票最多的类别中。总之,KNN算法是一种简单而有效的分类方法,它不需要对数据进行训练,可以适用于多种数据类型和应用场景,并且可以通过调整K值或距离阈值等参数来控制算法的复杂度和性能。,KNN算法需要找到K个距离测试样本最近的训练样本,计算它们的类别,并将测试样本归入到得票最多的类别中。则取值为1,否则为0,表示邻居中属于类别。

优快云XXCQ的博客 2632

iphone如何查看dns延迟_Linux或macOS用DNSPerf测DNS的服务器性能

普通用户建议尝试下修改家里的DNS地址为DNSPod DNS+ 用了好几年了,比较稳定,没有挟持。119.29.29.29182.254.116.116这两个看看DNSPerf是由Nominum开发的免费工具,可以简单地收集域名服务DNS的准确延迟和吞吐量指标。这些工具易于使用,并可模拟典型的互联网,因此网络运营商可以对其命名和寻址基础设施进行基准测试,DNSPerf可以自我调整DNS查询负载,以...

weixin_39862871的博客 838

多出来的那一截:Java 堆外内存 OOM 的来源分账、分流排查与治理解析

Java进程的RES常比-Xmx多出一截,堆却平稳。本文把堆外内存拆成直接缓冲区、Unsafe、JNI本地库、线程栈、元空间与文件映射六类,用JDK 8与17的六组实验对照RSS、NMT、BufferPool三本账:clear()不释放内存;MaxDirectMemorySize默认约等于堆上限且只管直接缓冲区;禁用显式GC会让申请线程退避半秒后失败;未关闭的Deflater零GC下让RSS涨1GB;Netty池内泄漏GC救不回。最后给出定性、对账、定位的排查路线与预算、编码、监控三层治理。

曾经“等你生日那天”都遥远得像未来,如今却可欢愉的挥手说“下个十年见” 14万+

BlackHole开发日记-尝试引入缓存,出现问题

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_34400525的博客 150

RAGFlow 系列教程 第14课:GraphRAG -- 知识图谱增强检索

RAGFlow v0.25.0深度解读了GraphRAG技术,通过构建知识图谱解决传统RAG在多跳推理问题上的局限。系统支持General GraphRAG和Light GraphRAG两种实现,包含四阶段构建流程:实体关系抽取、实体消解、社区检测和图持久化。核心代码位于rag/graphrag目录,采用LLM驱动的抽取机制,结合编辑距离和LLM确认的实体消解策略,以及Leiden社区检测算法。KGSearch模块通过多信号融合检索(实体+关系+N-hop+社区)实现高效查询。该系统将非结构化文本转化为可推

weixin_43674738的博客 101

嵌套学习 (Nested Learning, NL):赋予AI持续学习能力的革命性范式

嵌套学习(Nested Learning, NL)的核心哲学在于彻底颠覆传统深度学习中将模型架构(Architecture)与优化算法(Optimization)视为两个独立组件的“扁平化”视角 。传统方法通常将神经网络的结构设计和其训练过程分离开来,模型架构是预先定义好的静态蓝图,而优化算法(如SGD、Adam)则是一个外部的、统一的规则引擎,负责在训练期间调整模型参数 。这种分离的视角隐藏了模型内部不同组件之间复杂的梯度流和动态更新过程,将整个学习系统视为一个单一层次的优化问题。然而,嵌套学习范式提出,

步子哥的博客 489

【故障处理】solaris10 /nfs/status服务absent

故障现象:富士通M5000主机重启后无法开启nfs服务,该主机无法作为nfs server提供服务,检查SMF服务后,发现svc:/network/nfs/status:default服务absent(服务丢失,在系统中无法发现): bash-3.00# svcs -xv         svc:/network/nfs/nlockmgr:default (NFS lock manager

知行合一 1978

【Codex】Codex安装+DeepSeek API接入;无需登录,手把手带你使用codex

好多人使用codex时都卡在验证码登录那一步,今天就来介绍一种方法,不需要登录ChatGPT的账号,自然也就不需要手机验证码了;接入DeepSeek的api,一样可以丝滑使用codex;记录从零开始安装使用codex以及DeepSeek API接入的整个过程。不需要登录openAI;

AnChenliang_1002的博客 3542

dns 性能测试 dnsperf

1. dnsperf    dnsperf--测试dns服务器的工具 2. 主页    http://www.nominum.com/resources/measurement-tools 3. 下载    ftp://ftp.nominum.com/pub/nominum/dnsperf/2.0.0.0/dnsperf-src-2.0.0.0-1.tar.gz

JoJo-追求卓越~ 1万+

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

solaris 10 + bind-9.5.0-P2 安装过程

硬件环境 sun u 10    系统环境 solaris 10                   bind  9.5.0 P2     前一阵子,单位老版本DNS总是出现cpu使用率过高,无法响应请求的现象。初步分析为bind 版本比较低,有病毒或恶意攻击利用老版本漏洞所致。   升级安装过程:   一 solaris 10 安装   solaris 10 的安装

zzzxxbird的专栏 2389

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

DNS服务部署的那点事儿之DNS压力测试

#刚才发博文提示大于15万字儿,写不开了,单独开篇博文来补充一下Bind压力测试bind有专门的工具可以将配置文件的数据放入到数据库中,对于bind来讲,最常见的压力测试软件是querypery,此工具是bind源码包自带的一个工具,但安装完bind之后很有可能官方的包并没有给我们提供由此我们不得不去自己编译安装它1.安装queryperf可以在www.isc.org 下载bind10-1.1.0...

weixin_34015336的博客 419

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

DNS BIND 压力测试 - queryperf

当我们把DNS服务器配置好后,我们肯定会想测试一下DNS服务器的性能如何,上线后如果请求数够多服务器还能否响应?于是,我们可以使用软件模拟环境,对DNS服务器作评估性的测试。在bind中,有一款自带的压力测试软件,queryperf。使用这款软件可以对DNS服务器作请求测试,并且使用方法简单,我们可以使用queryperf测试多次,取一个平均值,这样就算结果不准确,也不会和实际情况相差太大。

任何技能都是从模仿开始,逐步升华。 1万+

npm cache server

1、安装依赖

冰禹的博客 1010

DNS服务器性能测试工具--queryperf --说明文档

1.该工具所在目录 bind-9.2.2/contrib/queryperf(不知道BIND 8或BIND4是否带有该工具) 2.简介 该工具原本设计是用来测试权威DNS服务器的,但是也可以使用该工具来测试只缓存DNS服务器。我大概看了一下说明文档,简要介绍一下(建议阅读原文)。 1)测试环境: 建议在不同的机器上运行queryperf和DNS...

weixin_34075268的博客 545

模型之外的那套装置:用 AI harness 完成一个三端同步应用

AI harness 指模型之外、让模型能持续产出可交付软件的全部工程装置。本文把它称作"支架"。它由五层构成:输入层规定模型读什么,反馈层规定模型怎么知道自己错了,观测层把界面与设备状态变成可读事实,记忆层让跨会话不失真,边界层规定哪些动作不许模型自行作出。支架的价值在六天里可以直接计量。

Leo的Matrix 180

密码存储不是 MD5 加盐:PBKDF2、scrypt、参数升级与安全验证实战

本文通过实战演示密码存储的正确做法:摒弃MD5加盐,采用PBKDF2与scrypt等高成本密钥派生函数,结合随机盐、版本化记录与严格解析,确保离线破解成本可控。模块实现安全验证、参数校验、透明升级与统一错误处理,强调算法选择需兼顾安全性与可维护性,提供教学级密码存储方案,助力构建可迁移、可审计的认证边界。

此人很懒,什么都没有写~~ 237

DNS 不是把域名翻译成 IP:递归解析、TTL 缓存、CNAME 与报文排错实战

本文通过离线Python实验,拆解DNS递归解析、缓存机制与报文结构,揭示“DNS不是全局映射表”的本质。重点解析递归器角色、TTL衰减、CNAME链处理、负缓存隔离及修改记录延迟生效等核心问题,结合实战排错案例,阐明缓存层级、事务匹配、截断处理与安全边界,强调从应用到权威的逐层排查逻辑,实现可复现、可验证的DNS教学系统。

此人很懒,什么都没有写~~ 351

附录一源码阅读路线与断点索引

本索引固定于Boot 3.5.7与Framework 6.2.12。先选择要解释的现象,再打开对应源码。表中观察对象是逻辑名称,不保证在所有重载中都是同名局部变量。抽象接口和注解用于阅读契约,不提供可执行方法体断点。

weixin_45476869的博客 161

软件测试用例模板怎么写:从用例设计到执行记录的全套指南

测试用例是测试工作的核心产出,它决定测试覆盖了多少、漏掉了什么。但大多数人的测试用例写得像流水账——只有正常路径,没有异常场景;只有操作步骤,没有预期结果;只有功能测试,没有非功能测试。本文拆解测试用例的标准结构,说明每个字段的含义和写法,给出覆盖功能测试、性能测试、安全测试的完整用例范例,并列出测试用例设计的五个高频遗漏点。

wuwangzhiduoshao的博客 152

【鸿蒙专题与实战】测试体系:单元测试、组件测试与 UI 测试

本文系统讲解鸿蒙开发中的三层测试实践:底层单元测试(用Hypium框架,优先覆盖纯函数、边界与异常)、中层ViewModel逻辑、顶层仅测3-5条关键UI路径。强调测试应“越往下写得越多”,因单元测试快且成本低,而UI测试慢易出错。通过实例说明断言拆分提升定位效率,结合覆盖率报告(hvigorwtest --coverage)发现盲区,核心是“用覆盖率找漏测,而非追求数字”。附五步落地清单:建测试文件、按优先级补用例、精简UI测试、生成报告、定位未覆盖行。下一篇将开启实战项目:从需求到上架全流程。

信息安全领域优质创作者|操作系统领域专家 190

MCP实战06:传输实战、测试与部署

你的 MCP Server 写完了,怎么确认它真的能被宿主正确调用?这课给传输层实战三件套:MCP Inspector 可视化调试、协议级自动化测试(pytest 断言 JSON-RPC 报文结构)、stdio/HTTP 双传输部署。测试不是可选项——工具描述错一个字段宿主就调不对,你能给 Server 建起自己的回归测试。

Blockbuster-drug 778
上一篇: Linux必学的网络操作命令
下一篇: linux_把可执行程序做成一个服务
max415
博客等级 码龄22年 16粉丝 38原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值