乐于分享
好东西不私藏

什么是软件测试?

什么是软件测试?

软件测试从入门到精通 · 第01篇


如果你问一个刚入行的测试新人:“软件测试是做什么的?”十有八九你会听到这样的回答——“找bug的”。

这个回答错了吗?不能说全错,但它大大低估了软件测试的深度和广度。就像一个医生被简单定义为“开药的人”,虽然日常工作的确有这个环节,但医生的真正价值在于诊断、预防和保障健康,而不是等病发了再抓两把药片。

这篇文章,我们就来重新认识软件测试——它到底是什么、为什么存在、在软件工程中扮演什么角色,以及一个测试工程师真实的一天是什么样的。


一、软件测试的定义:远比“找bug”复杂

国际标准ISO/IEC/IEEE 29119-1:2022(其前身可追溯到IEEE Std 829)对软件测试的定义是:

软件测试是使用人工或自动手段来运行或测定某个系统的过程,其目的在于检验它是否满足规定的需求,或是弄清预期结果与实际结果之间的差别。

该定义虽源自早期标准,但核心思想在现行的ISO/IEC/IEEE 29119系列标准中得以延续和扩展。

这里面藏了三个关键信息。

第一,满足规定的需求。 测试首先要回答的问题是:软件做到了它承诺要做的事吗?登录功能能不能正常登录?支付接口能不能成功扣款?商品列表能不能按价格排序?这些都是规定的需求,白纸黑字写在需求文档里。一个登录按钮点下去10秒才有反应,可能没有错,但用户一定会骂娘——这就是测试的第二个层面。

第二,预期结果与实际结果的差别。 需求文档不会写“登录按钮点击后必须在500毫秒内响应”,但用户有这个预期。测试需要发现的不只是功能缺失和逻辑错误,还有体验缺陷、性能瓶颈、安全隐患、兼容问题——这些往往不会明确写在需求里,但它们同样会让产品失败。

第三,人工或自动手段。 很多人以为测试就是手工点点点,那只是测试的一小部分。现代测试已经高度依赖自动化工具、脚本、框架和平台,自动化测试已经在很多团队中占据了一半以上的测试工作量。

所以一个更贴近现实的定义是:软件测试是贯穿整个软件生命周期的一系列质量保障活动,包括验证(检查是否做对了产品)和确认(检查是否做了正确的产品),目的是以最小的成本提供足够的信息,让决策者能够判断软件的质量水平,并做出是否发布的决定。

这个定义很长,但请记住最核心的三个字:提供信息。测试的本质不是修bug,不是找bug,而是为决策提供信息。项目能不能上线?还有哪些风险?质量趋势是在变好还是变差?这些问题的答案,都来自测试。


二、测试与调试:必须区分的一对概念

很多初学者会把“测试”和“调试”混为一谈,这是两个完全不同的活动,做的人不同、目的不同、时机也不同。

维度

测试

调试

执行者

测试工程师(或自动化脚本)

开发工程师

目的

发现缺陷、评估质量

定位缺陷根因、修复代码

时机

贯穿整个开发周期

缺陷被发现之后

产出

测试报告、缺陷单、质量评估

代码修复、补丁

性质

破坏性(试图让软件出错)

建设性(试图让软件变好)

有一个经典比喻:测试像是体检,告诉你哪里有问题;调试像是治疗,把问题修复。体检医生不需要会做手术,但体检医生必须知道该查什么、怎么查、查出来的结果代表什么。

这个区分之所以重要,是因为很多公司把测试和调试混在一起做,让测试工程师既找bug又修bug,或者让开发工程师自测自修。前者模糊了岗位边界,后者则是职业道德上的灰色地带——自己写的代码自己测,潜意识里会回避那些可能出错的场景。


三、软件测试为什么存在?几个不得不面对的现实

有人可能会问:开发工程师也是人,也很专业,为什么不能让他们自己把代码写好、把bug消灭在萌芽状态?答案是:在足够复杂的系统中,缺陷是不可避免的。 这是由几个客观现实决定的。

现实一:人脑无法穷举

一个简单的登录页面,有两个输入框(用户名、密码)和一个按钮。你猜猜这个页面有多少种可能的输入组合?

用户名可以是空、1个字符、50个字符、包含特殊符号、包含SQL注入语句、包含emoji、包含空格、包含中文、纯数字、纯字母……密码同理。再加上记住密码复选框的两种状态,忘记密码链接的点击行为,不同浏览器的渲染差异……组合数轻松达到数万甚至数十万。

没有人能在开发的时候就考虑到所有这些情况。开发者的注意力在“正常路径”上——输入正确的用户名和密码,点击登录,跳转到首页。但真实用户的行为远比“正常路径”丰富和诡异。

现实二:确认偏误是人的本能

心理学家早就证明,人天生倾向于寻找支持自己观点的证据,而忽略相反的证据。一个开发工程师花了三天写了一个模块,他的潜意识已经认定我写的是对的。让他自己来测,他会无意识地选择那些证明自己正确的测试数据,而绕开那些可能出问题的边界值。

这不是职业道德问题,这是人性。独立测试存在的价值之一,就是提供一双没有作者偏见的眼睛。

现实三:软件复杂度在指数级增长

一个典型的电商系统可能包含上百个微服务、数十个外部依赖、多种数据库、缓存层、消息队列、CDN……任何一个环节的异常都可能导致最终用户体验受损。在这种复杂度下,人肉保证质量已经不可能,必须有系统化的测试策略。

现实四:修复成本随时间指数增长

这是软件工程中最广为人知的一条规律:缺陷发现得越晚,修复成本越高。

需求阶段发现一个逻辑漏洞,改一下文档就行,成本接近于零。开发阶段发现,改几行代码。测试阶段发现,需要重现、提单、分配、修复、回归。而如果到了生产环境才被发现——除了上述所有成本,还要加上用户投诉、数据修复、紧急发布、公关危机,甚至法律诉讼。

所以测试不是在浪费开发的时间,恰恰相反,测试在省时间——把该花的代价花在早期,避免后期付出百倍千倍的代价。


四、测试的本质价值:从找bug到质量信息服务

现代软件测试的价值早已超越了“找bug”这简单的几个字

测试提供的是一种质量信息服务。它的客户是项目经理、产品经理、技术负责人和高层管理者,这些人是决策者,他们需要回答:

  • 这个版本质量够不够好,能上线吗?

  • 如果强行上线,最大的风险点在哪里?

  • 质量趋势是在变好还是变差?团队是在进步还是退步?

  • 自动化覆盖够不够?下一个迭代应该补哪一块?

测试工程师的职责不是替决策者做决定,而是提供足够准确、足够全面、足够及时的信息,让决策者能够做出明智的判断。

一个优秀的测试工程师,他的价值不是体现在发现了一个隐藏很深的bug,而是体现在当PM问能不能上线时,他能拿出一份让所有人信服的质量评估报告。


五、软件测试在整个生命周期中的位置

很多人以为测试是开发完成之后才做的事,这是最大的误解。测试活动贯穿整个软件生命周期。

需求阶段

测试工程师应该在需求评审时就介入。他的任务是:

  • 检查需求的可测试性(一个模糊的需求无法被测试,比如“系统应该很快”——多快算快?)。

  • 识别需求中的矛盾和遗漏(需求A说用户可以删除订单,需求B说所有订单必须保留审计记录——矛盾)。

  • 从用户视角提出场景补充(产品经理从功能角度思考,测试从用户误操作角度思考)。

设计阶段

在技术方案评审时,测试工程师关注:

  • 架构设计是否有单点故障风险?

  • 接口设计是否考虑了异常情况?

  • 数据迁移方案是否有回滚机制?

  • 第三方依赖的不可用场景有没有降级方案?

编码阶段

开发和测试应该是并行的。开发在写代码,测试在写用例。这期间测试的核心产出是测试用例集和自动化脚本。

测试阶段

这是大多数人认知中的测试:执行用例、提交bug、回归验证。但这只是测试工作中的一环,不是全部。

发布阶段

测试工程师参与发布评审,确认所有阻塞性bug已关闭、回归通过、性能达标、安全扫描无高危漏洞。

运维阶段

上线后,测试工程师持续关注线上质量——用户反馈、监控告警、事故复盘,并把线上问题转化为测试用例的补充。


六、测试工程师真实的一天

为了让你对测试工作有一个更具体的印象,我来描述一个中级测试工程师真实的一天。

09:00 — 站会。 团队成员围在一起,每人用一两分钟同步昨天做了什么、今天计划做什么、有没有阻塞。测试工程师说:“昨天完成了用户模块的用例评审,今天开始写自动化脚本,阻塞项是测试环境还在部署中。”

09:30 — 用例设计。 产品经理扔过来一个新需求:商品列表页增加按销量排序功能。测试工程师开始拆解需求:销量的口径是什么?是下单量还是付款量?是最近7天还是累计?排序算法是什么?销量相同的情况下次级排序是什么?问题越问越细,产品经理当场补充了三个需求遗漏点。

11:00 — 自动化脚本编写。 昨天评审通过的用例有30条,其中12条适合做自动化回归。测试工程师打开IDE,用Python+Selenium封装页面对象,写用例脚本。写的过程中发现页面有一个隐藏的DOM元素会导致元素定位失败,顺手提了一个优化建议给前端。

12:00 — 午饭。

14:00 — 测试执行。 测试环境终于部署好了。测试工程师按照用例执行新功能的手工测试,发现排序结果偶尔会出现重复商品。截图、录屏、查日志,确认是个后端排序算法在相同销量时没处理好的bug。打开禅道,认真地写了一个缺陷单。

16:00 — 缺陷评审。 产品、开发、测试三方围在一起过一遍当前的bug列表。有些bug被评估为下一版修复,有些被标记为设计如此不是bug,剩下的是本周必须修的。测试工程师需要在评审中清晰地说明每个bug的影响范围和严重程度。

17:00 — 回归测试。 开发修了三个bug,测试工程师跑一遍相关的回归用例确保修旧bug没引入新bug,然后把bug单状态改为已关闭。

18:00 — 整理日报。 写一份简短的测试日报:今天完成了什么、发现了什么问题、有什么风险需要关注。

这一天没有惊天动地的大事,但每一步都在为产品的最终质量添砖加瓦。


七、测试工程师的核心能力模型

从上面的一天可以看出,测试工程师需要的不只是会点点点。以下是一个测试工程师的核心能力模型:

硬技能

  • 需求分析能力:能从一份需求文档中拆解出测试点,发现模糊和矛盾之处。

  • 测试设计能力:能用等价类、边界值、判定表、场景法等设计出高效且完整的用例。

  • 缺陷管理能力:能写出让开发无法拒绝的bug单,能推动缺陷的闭环。

  • 工具使用能力:至少掌握一种抓包工具、一种数据库查询工具、一种接口测试工具。

  • 编程能力:能用至少一门语言写自动化脚本(推荐Python)。

  • 环境管理能力:能自己搭建测试环境、查看日志、定位问题。

软技能

  • 沟通能力:能把技术问题用产品经理听得懂的话讲清楚,能把质量风险用管理者关心的方式呈现。

  • 好奇心:看到一个功能,会忍不住想如果我这样操作会怎样?——这是测试的天赋。

  • 耐心和细心:重复执行50遍同一组用例而不漏掉任何一个步骤,这是基本功。

  • 批判性思维:不轻信应该没问题,要用事实和数据说话。

  • 持续学习:技术栈更新很快,今天的主流工具明天可能就被替代,学习能力是最核心的竞争力。


八、写在最后

如果你正在考虑转行做测试,或者在犹豫要不要把测试作为职业方向,我想对你说几句话。

第一,软件测试不是写不了代码才去做的备胎选择。一个优秀的测试工程师需要的能力组合——技术深度、业务理解、用户视角、沟通技巧——一点都不比开发简单。只是它需要的深度方向和开发不一样:开发深在“造”,测试深在“破”。

第二,自动化是趋势,但它不会消灭手工测试。自动化做的是“已知的已知”,手工测试做的是“未知的未知”。机器擅长重复执行人类设计好的检查步骤,但不擅长即兴探索和直觉判断。优秀的测试工程师两者都会。

第三,测试的天花板不低。从测试工程师到测试开发,到测试架构师,到质量负责人,每上升一级,对综合能力的要求都是指数级增长。这不是一条一眼望到头的职业道路。

下一篇文章,我们会深入探讨软件质量模型——ISO 25010的八个质量特性和测试七大基本原则。这是整个测试理论的基石,搞懂了它,后面学什么都会事半功倍。


本文为《软件测试从入门到精通》系列第01篇,共计42篇,持续更新中。

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-05-27 20:49:14 HTTP/1.1 GET : https://www.yeyulingfeng.com/a/663623.html
  2. 运行时间 : 0.084116s [ 吞吐率:11.89req/s ] 内存消耗:4,916.37kb 文件加载:145
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=8551618b8c9940ec730159795714716e
  1. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/public/index.php ( 0.79 KB )
  2. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/autoload.php ( 0.17 KB )
  3. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/composer/autoload_real.php ( 2.49 KB )
  4. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/composer/platform_check.php ( 0.90 KB )
  5. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/composer/ClassLoader.php ( 14.03 KB )
  6. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/composer/autoload_static.php ( 6.05 KB )
  7. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/helper.php ( 8.34 KB )
  8. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-validate/src/helper.php ( 2.19 KB )
  9. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/ralouphie/getallheaders/src/getallheaders.php ( 1.60 KB )
  10. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/helper.php ( 1.47 KB )
  11. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/stubs/load_stubs.php ( 0.16 KB )
  12. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Exception.php ( 1.69 KB )
  13. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-container/src/Facade.php ( 2.71 KB )
  14. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/deprecation-contracts/function.php ( 0.99 KB )
  15. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/polyfill-mbstring/bootstrap.php ( 8.26 KB )
  16. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/polyfill-mbstring/bootstrap80.php ( 9.78 KB )
  17. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/var-dumper/Resources/functions/dump.php ( 1.49 KB )
  18. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-dumper/src/helper.php ( 0.18 KB )
  19. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/var-dumper/VarDumper.php ( 4.30 KB )
  20. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/guzzlehttp/guzzle/src/functions_include.php ( 0.16 KB )
  21. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/guzzlehttp/guzzle/src/functions.php ( 5.54 KB )
  22. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/App.php ( 15.30 KB )
  23. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-container/src/Container.php ( 15.76 KB )
  24. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/psr/container/src/ContainerInterface.php ( 1.02 KB )
  25. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/provider.php ( 0.19 KB )
  26. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Http.php ( 6.04 KB )
  27. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/helper/Str.php ( 7.29 KB )
  28. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Env.php ( 4.68 KB )
  29. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/common.php ( 0.03 KB )
  30. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/helper.php ( 18.78 KB )
  31. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Config.php ( 5.54 KB )
  32. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/alipay.php ( 3.59 KB )
  33. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/facade/Env.php ( 1.67 KB )
  34. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/app.php ( 0.95 KB )
  35. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/cache.php ( 0.78 KB )
  36. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/console.php ( 0.23 KB )
  37. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/cookie.php ( 0.56 KB )
  38. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/database.php ( 2.48 KB )
  39. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/filesystem.php ( 0.61 KB )
  40. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/lang.php ( 0.91 KB )
  41. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/log.php ( 1.35 KB )
  42. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/middleware.php ( 0.19 KB )
  43. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/route.php ( 1.89 KB )
  44. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/session.php ( 0.57 KB )
  45. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/trace.php ( 0.34 KB )
  46. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/view.php ( 0.82 KB )
  47. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/event.php ( 0.25 KB )
  48. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Event.php ( 7.67 KB )
  49. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/service.php ( 0.13 KB )
  50. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/AppService.php ( 0.26 KB )
  51. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Service.php ( 1.64 KB )
  52. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Lang.php ( 7.35 KB )
  53. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/lang/zh-cn.php ( 13.70 KB )
  54. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/initializer/Error.php ( 3.31 KB )
  55. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/initializer/RegisterService.php ( 1.33 KB )
  56. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/services.php ( 0.14 KB )
  57. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/service/PaginatorService.php ( 1.52 KB )
  58. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/service/ValidateService.php ( 0.99 KB )
  59. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/service/ModelService.php ( 2.04 KB )
  60. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-trace/src/Service.php ( 0.77 KB )
  61. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Middleware.php ( 6.72 KB )
  62. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/initializer/BootService.php ( 0.77 KB )
  63. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/Paginator.php ( 11.86 KB )
  64. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-validate/src/Validate.php ( 63.20 KB )
  65. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/Model.php ( 23.55 KB )
  66. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/Attribute.php ( 21.05 KB )
  67. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/AutoWriteData.php ( 4.21 KB )
  68. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/Conversion.php ( 6.44 KB )
  69. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/DbConnect.php ( 5.16 KB )
  70. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/ModelEvent.php ( 2.33 KB )
  71. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/RelationShip.php ( 28.29 KB )
  72. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/contract/Arrayable.php ( 0.09 KB )
  73. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/contract/Jsonable.php ( 0.13 KB )
  74. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/contract/Modelable.php ( 0.09 KB )
  75. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Db.php ( 2.88 KB )
  76. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/DbManager.php ( 8.52 KB )
  77. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Log.php ( 6.28 KB )
  78. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Manager.php ( 3.92 KB )
  79. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/psr/log/src/LoggerTrait.php ( 2.69 KB )
  80. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/psr/log/src/LoggerInterface.php ( 2.71 KB )
  81. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Cache.php ( 4.92 KB )
  82. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/psr/simple-cache/src/CacheInterface.php ( 4.71 KB )
  83. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/helper/Arr.php ( 16.63 KB )
  84. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/cache/driver/File.php ( 7.84 KB )
  85. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/cache/Driver.php ( 9.03 KB )
  86. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/contract/CacheHandlerInterface.php ( 1.99 KB )
  87. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/Request.php ( 0.09 KB )
  88. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Request.php ( 55.78 KB )
  89. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/middleware.php ( 0.25 KB )
  90. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Pipeline.php ( 2.61 KB )
  91. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-trace/src/TraceDebug.php ( 3.40 KB )
  92. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/middleware/SessionInit.php ( 1.94 KB )
  93. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Session.php ( 1.80 KB )
  94. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/session/driver/File.php ( 6.27 KB )
  95. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/contract/SessionHandlerInterface.php ( 0.87 KB )
  96. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/session/Store.php ( 7.12 KB )
  97. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Route.php ( 23.73 KB )
  98. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/RuleName.php ( 5.75 KB )
  99. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/Domain.php ( 2.53 KB )
  100. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/RuleGroup.php ( 22.43 KB )
  101. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/Rule.php ( 26.95 KB )
  102. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/RuleItem.php ( 9.78 KB )
  103. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/route/app.php ( 3.94 KB )
  104. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/facade/Route.php ( 4.70 KB )
  105. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/dispatch/Controller.php ( 4.74 KB )
  106. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/Dispatch.php ( 10.44 KB )
  107. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/controller/Index.php ( 9.87 KB )
  108. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/BaseController.php ( 2.05 KB )
  109. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/facade/Db.php ( 0.93 KB )
  110. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/connector/Mysql.php ( 5.44 KB )
  111. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/PDOConnection.php ( 52.47 KB )
  112. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/Connection.php ( 8.39 KB )
  113. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/ConnectionInterface.php ( 4.57 KB )
  114. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/builder/Mysql.php ( 16.58 KB )
  115. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/Builder.php ( 24.06 KB )
  116. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/BaseBuilder.php ( 27.50 KB )
  117. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/Query.php ( 15.71 KB )
  118. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/BaseQuery.php ( 45.13 KB )
  119. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/TimeFieldQuery.php ( 7.43 KB )
  120. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/AggregateQuery.php ( 3.26 KB )
  121. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/ModelRelationQuery.php ( 20.07 KB )
  122. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/ParamsBind.php ( 3.66 KB )
  123. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/ResultOperation.php ( 7.01 KB )
  124. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/WhereQuery.php ( 19.37 KB )
  125. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/JoinAndViewQuery.php ( 7.11 KB )
  126. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/TableFieldInfo.php ( 2.63 KB )
  127. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/Transaction.php ( 2.77 KB )
  128. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/log/driver/File.php ( 5.96 KB )
  129. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/contract/LogHandlerInterface.php ( 0.86 KB )
  130. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/log/Channel.php ( 3.89 KB )
  131. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/event/LogRecord.php ( 1.02 KB )
  132. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/Collection.php ( 16.47 KB )
  133. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/facade/View.php ( 1.70 KB )
  134. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/View.php ( 4.39 KB )
  135. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/controller/Es.php ( 3.30 KB )
  136. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Response.php ( 8.81 KB )
  137. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/response/View.php ( 3.29 KB )
  138. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Cookie.php ( 6.06 KB )
  139. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-view/src/Think.php ( 8.38 KB )
  140. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/contract/TemplateHandlerInterface.php ( 1.60 KB )
  141. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-template/src/Template.php ( 46.61 KB )
  142. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-template/src/template/driver/File.php ( 2.41 KB )
  143. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-template/src/template/contract/DriverInterface.php ( 0.86 KB )
  144. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/runtime/temp/c935550e3e8a3a4c27dd94e439343fdf.php ( 31.50 KB )
  145. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-trace/src/Html.php ( 4.42 KB )
  1. CONNECT:[ UseTime:0.000518s ] mysql:host=127.0.0.1;port=3306;dbname=wenku;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.000735s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000316s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000319s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.000501s ]
  6. SELECT * FROM `set` [ RunTime:0.000237s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.000564s ]
  8. SELECT * FROM `article` WHERE `id` = 663623 LIMIT 1 [ RunTime:0.000483s ]
  9. UPDATE `article` SET `lasttime` = 1779886154 WHERE `id` = 663623 [ RunTime:0.001923s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 64 LIMIT 1 [ RunTime:0.000236s ]
  11. SELECT * FROM `article` WHERE `id` < 663623 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.000470s ]
  12. SELECT * FROM `article` WHERE `id` > 663623 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.000411s ]
  13. SELECT * FROM `article` WHERE `id` < 663623 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.000858s ]
  14. SELECT * FROM `article` WHERE `id` < 663623 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.001118s ]
  15. SELECT * FROM `article` WHERE `id` < 663623 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.000984s ]
0.085824s