<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>软件测试 on 太一-懒人的备忘录</title>
        <link>https://blog.fenzoz.com/categories/%E8%BD%AF%E4%BB%B6%E6%B5%8B%E8%AF%95/</link>
        <description>Recent content in 软件测试 on 太一-懒人的备忘录</description>
        <generator>Hugo -- gohugo.io</generator>
        <language>zh-cn</language>
        <lastBuildDate>Thu, 11 Jun 2026 18:36:17 +0800</lastBuildDate><atom:link href="https://blog.fenzoz.com/categories/%E8%BD%AF%E4%BB%B6%E6%B5%8B%E8%AF%95/index.xml" rel="self" type="application/rss+xml" /><item>
            <title>软件测试面试题</title>
            <link>https://blog.fenzoz.com/p/%E8%BD%AF%E4%BB%B6%E6%B5%8B%E8%AF%95%E9%9D%A2%E8%AF%95%E9%A2%98/</link>
            <pubDate>Thu, 11 Jun 2026 18:36:17 +0800</pubDate>
            <guid>https://blog.fenzoz.com/p/%E8%BD%AF%E4%BB%B6%E6%B5%8B%E8%AF%95%E9%9D%A2%E8%AF%95%E9%A2%98/</guid>
            <description>&lt;h2 id=&#34;安全测试&#34;&gt;安全测试&#xA;&lt;/h2&gt;&lt;h3 id=&#34;接口防篡改如何测试&#34;&gt;接口防篡改如何测试&#xA;&lt;/h3&gt;&lt;ol&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;get 请求对params参数进行排序拼接后计算签名, 在burnsuit拦截请求后篡改params参数验证后台防篡改&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;post 请求对body(json/dataform)计算签名, 在burnsuit拦截请求后篡改body参数验证后台防篡改&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;h3 id=&#34;接口重放攻击如何防止的&#34;&gt;接口重放攻击如何防止的&#xA;&lt;/h3&gt;&lt;ol&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;api 请求会附带时间戳, 与后台服务的时间戳+-30S差异内允许请求&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;api 请求会附带一个UUID随机数, 60S内同一个UUID请求会被后台拒绝&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;h2 id=&#34;性能测试&#34;&gt;性能测试&#xA;&lt;/h2&gt;&lt;h3 id=&#34;tps与qps的区别&#34;&gt;TPS与QPS的区别&#xA;&lt;/h3&gt;&lt;ol&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;TPS-每秒事务数, 一个&amp;quot;事务&amp;quot;可以包含多个步骤和系统内部调用. 例如: 云上KMS关联, 动态机密的读取, IAM用户生成, SQL代理中执行SQL等.&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;QPS-每秒查询率, 每秒对资源或list数据的单一请求次数. 例如: 图片, 用户表, 授权关系等.&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;h2 id=&#34;nginx&#34;&gt;NGINX&#xA;&lt;/h2&gt;&lt;h3 id=&#34;ng-通过-sni-定位到是哪个服务之后-是怎么把数据返回的&#34;&gt;NG 通过 SNI 定位到是哪个服务之后, 是怎么把数据返回的&#xA;&lt;/h3&gt;&lt;ol&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;TCP 握手阶段 NGINX 读取到 SNI 信息, 使用对应SSL证书解密(socket A)&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;location 来确定走哪个配置&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;location 内部是 proxy_pass 情况下 ng 将自己作为客户端, 向 proxy_pass 建立新的 tcp 连接(socket B)&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;worker 进程中会将 socket A 与 socket B 建立绑定关系&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;nginx 将从 socket B 读取到的数据, 通过 SSL 证书加密后返回给用户&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;h2 id=&#34;tcpip-http&#34;&gt;TCP/IP, HTTP&#xA;&lt;/h2&gt;&lt;h3 id=&#34;http-11-版本中-pipelining-会有应用层队头阻塞问题-有什么解决办法&#34;&gt;HTTP 1.1 版本中 pipelining 会有应用层队头阻塞问题, 有什么解决办法&#xA;&lt;/h3&gt;&lt;ol&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;浏览器对单域名开启多个TCP连接&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;通过 Webpack 构建工具, 将零碎的文件合并成一个单一文件, 减少请求数&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;懒加载, 初始加载时仅加载小部分, 用户滚动页面时再发起真实的请求&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;h3 id=&#34;cookie-与-session&#34;&gt;Cookie 与 Session&#xA;&lt;/h3&gt;&lt;h4 id=&#34;cookie&#34;&gt;Cookie&#xA;&lt;/h4&gt;&lt;p&gt;存储于客户端, Cookie 中存储很多数据, 通过;号来间隔每个数据. 里面通常包含&lt;code&gt;JSESSIONID&lt;/code&gt; &lt;code&gt;token&lt;/code&gt; 个性化偏好设置, 指纹等&lt;/p&gt;&#xA;&lt;h4 id=&#34;session&#34;&gt;Session&#xA;&lt;/h4&gt;&lt;p&gt;存储于服务端, 可存储在内存, redis 或者 数据库中. 可存储用户身份与权限&lt;/p&gt;&#xA;&lt;h3 id=&#34;ipv6&#34;&gt;IPV6&#xA;&lt;/h3&gt;&lt;ol&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;长度为2的128次方&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;没有了IPV4的NAT技术&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;浏览器访问时需要http://[IPV6]&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;简写方式::&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;DNS的记录类型为AAAA&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;h2 id=&#34;jenkins&#34;&gt;Jenkins&#xA;&lt;/h2&gt;</description>
        </item></channel>
</rss>
