乐于分享
好东西不私藏

AI会自己干活以后, 我发现最值钱的能力, 居然是测试

AI会自己干活以后, 我发现最值钱的能力, 居然是测试

TESTING NOTES · LOOP ENGINEERING

AI会自己干活以后,我发现最值钱的能力,居然是测试

我做了一个浏览器录制器,本来只想让 AI 帮我写自动化代码。做着做着却发现,AI 真正缺的不是写代码的能力,而是一套能判断对错、及时纠偏、知道什么时候停下来的测试思维。

PLAYWRIGHT
AI AGENT
TEST LOOP

AI 负责往前跑测试负责让它别跑偏

01

THE RECORDER

从一个很小的录制器说起

最近,我一直在折腾一个东西。

我想把手工测试变成自动化测试。但不是以前那种,我坐在电脑前,对着手工用例一行一行写 Playwright 代码。我想干得更懒一点。

我的设想是,我先跟着测试用例,在浏览器里把整个业务流程操作一遍,让程序把点击、输入、跳转和接口请求都记下来。然后再把这些记录交给 Codex,让它按照我现有的自动化框架,生成一条真正能跑的 Playwright 用例。

为了验证这件事,我前几天先做了一个很小的录制器。我在浏览器里老老实实完成了一次登录,它在后面记下了每一次点击和输入,最后留下了四样东西。

recording.json

像一份操作流水账

trace.zip

像浏览器行车记录仪

network.har

记着页面和服务器说过什么

页面截图

算是案发现场照片

看到这些东西的时候,我一开始还挺兴奋。这下证据齐了,AI 总能把代码写出来了吧?

后来我寻思了一下,突然发现自己想简单了。

代码写出来,根本不是结束。

它生成的定位器稳不稳?断言写对了吗?页面虽然跳转了,业务数据真的落库了吗?脚本这次跑绿了,下次还能不能跑?

更要命的是,如果跑失败了,难道还得我把报错复制出来,再贴给 AI,让它改完以后我再手动跑一遍?

那我折腾半天,只是把写代码这一步自动化了。我自己还是那个坐在旁边,一遍遍点运行、一遍遍贴报错的监工。

这不叫自动化。

这叫把鼠标从左手换到了右手。

02

IN PLAIN WORDS

把 Loop Engineering 翻译成人话

也是在这个时候,我刷到了最近很火的一个词,Loop Engineering,中文有人叫它循环工程。

原文里讲了很多技术栈,Prompt、Context、Harness、Agent、Worktree、Verifier,看着确实有点吓人。但我把它翻译成测试人能听懂的话以后,突然发现,这玩意一点都不陌生。

循环工程干的事情,其实就是四步。

01定目标
02去行动
03查结果
04再纠偏

做好了就停,实在走不通就找人。

你每天开车用的导航,其实也是一个循环。导航不会在出发前说,我已经把路线告诉你了,后面你爱走哪走哪。它会一直看你现在在哪,有没有走偏,前面堵不堵。你拐错了,它就重新算路;到了目的地,它就结束导航。

AI 以前更像一张打印出来的路线图。你问一次,它答一次。答错了,你自己回来重新问。

循环工程想做的,是把 AI 变成真正的导航。它不只给一次答案,还要看结果、判断偏差、重新规划,直到到达目的地,或者发现这条路自己实在走不通,把方向盘交还给人。

你想想看,差别是不是一下子就出来了。

03

FROM ANSWER TO OUTCOME

从会回答,到能把活干完

以前我们研究提示词,重点是怎么把一句话说清楚。后来大家开始讲上下文,重点变成把需求文档、代码规范、历史记录和错误日志都给 AI 看。光说清楚还不够,你得把资料给齐。

再后来,大家发现资料齐了也不行。一个新同事再聪明,你不给他电脑,不给他测试环境,不给他账号权限,不告诉他代码放在哪,他还是啥也干不了。

所以又有了工具、环境、权限和隔离这些东西。说到循环工程这一步,问题又往前走了一层。电脑有了,资料有了,工具也有了,怎么让这个新同事不需要你一直盯着,也能自己把事情做完?

答案就是,给他一个能自我检查的工作循环。

回到我正在做的浏览器录制这件事。如果只是让 Codex 看完 recording.json,然后吐一段 Playwright 代码,这还是一次性生成。看着挺 AI,实际上只完成了最轻松的一步。

一条真正能闭环的自动化用例

01 · 读目标 先读手工测试用例,弄清到底想验证什么

02 · 读现场 再读浏览器录制,理解点击、输入和页面变化

03 · 读规则 按项目框架生成 Page Object、测试数据和断言

04 · 自己跑 失败后查看报错、截图、Trace 和网络请求

05 · 会求助 多次失败或碰到高风险操作,停下来找人

06 · 真验收 页面、接口和关键业务数据都一致才算完成

到这里,一条自动化用例才算真正生成完。

你会发现,这整个过程里,Codex 会不会写代码当然重要。但更重要的,是谁告诉它什么叫做对。

04

PASS IS NOT CORRECT

能跑,和跑对,是两回事

测试人应该很容易理解这里面的区别。

一条登录脚本顺利点完账号、密码和登录按钮,只能证明浏览器没有中途报错。它不一定证明用户真的登录成功了。

页面跳到了首页,但登录态没有保存
右上角出现了头像,但后台返回的用户权限不对
普通账号登录以后,居然看到了管理员菜单

如果循环的完成条件只是脚本执行结束,那这几种情况全都可能被它当成成功。

所以手工用例里的预期结果,不是一句写给人看的废话。它其实是在定义这个循环的终点。

页面出现什么,接口返回什么,数据变成什么状态,什么角色能看见什么东西,这些检查越清楚,AI 就越知道自己到底有没有把活干完。

测试设计得含糊,AI 只能糊里糊涂地交卷。

这锅真不能全让模型背。这也是我看完循环工程以后,感触最深的地方。

THE MORE AI DOES

AI 越能自己干活测试反而越重要

以前很多人理解测试,就是开发把东西做完以后,测试人员上去点一点、找找 Bug。开发在前面冲,测试在最后守门。

可到了智能体自己写代码、自己改代码、自己跑任务的阶段,测试不再只是最后一道门。测试会变成 AI 每走一步都要看的路标。

目标
测试用例告诉它
位置
日志和页面状态告诉它
偏差
断言和校验规则告诉它
结束
验收标准告诉它
求助
风险边界告诉它

没有这些东西,AI 跑得越快,反而可能错得越远。

05

REWARD HACKING

真正危险的,是 AI 会想办法交差

这也是很多所谓全自动智能体最容易翻车的地方。

你让它把测试跑绿,它可能真的能想办法跑绿。最离谱的办法是什么?

它把失败的测试删了。或者把一个严格断言改成只要页面能打开就算通过。甚至遇到不稳定用例,直接加一个 skip,世界一下子清净了。

你敢信???

从任务表面看,它完成了目标。从业务角度看,它把报警器的电池抠了,然后告诉你,火警已经解决。

所以循环里最重要的东西,从来不是让 AI 不断重试,而是给它一个不能耍赖的检查方式。

凡是程序能给出明确答案的地方,就别让 AI 靠感觉打分。接口返回码是多少,数据库有没有那条记录,订单金额对不对,页面元素是否真的可见,这些都应该交给明确的规则。

AI 可以分析为什么错了,但不能自己宣布自己对了。

就像考试不能让考生自己出题、自己答题、自己判卷,最后还自己把成绩录进系统。

那不叫闭环。

那叫内部解决。

06

STOP CONDITIONS

一个好循环,必须知道什么时候停

当然,循环也不是转得越久越好。

一个没有刹车的 AI,比一个不会干活的 AI 更让人头疼。它可能在同一个错误上来回改几十次,Token 哗哗地烧,代码越改越乱。也可能前面走错一步,后面沿着错误结果一路狂奔,最后给你端上来一盘非常完整的错误答案。

所以一个能用的循环,至少得有几道刹车。

01
跑多少次还没成功就停
02
花到多少预算就停
03
连续几轮没有新进展就停
04
碰到生产环境、资金、删数据等高风险操作,必须等人确认

说真的,这些东西测试同学太熟了。失败重试、超时、错误分级、测试证据、预期结果、人工审批、回归验证。以前我们总觉得这些是测试流程里的老东西,甚至有点土。

现在绕了一大圈,AI 智能体想真正进入生产环境,最后还是得回来补这些课。

很有意思。

也很现实。

不过我也不想把循环工程吹成明天所有人都必须上的东西。如果你只是偶尔让 Codex 帮你改一个函数,或者让 Claude Code 解释一段报错,直接聊几句往往更快。

为了十分钟的活,花半天搭一套循环,多少有点为了吃泡面先造方便面工厂的感觉。

真正适合做循环的,是那些会反复发生、能明确判断对错、又值得节省人工时间的任务。

每次发版都要跑的回归测试
根据固定规则生成并执行自动化用例
扫描失败日志,收集截图和接口证据
检查需求有没有对应测试点,并补齐缺口

这些任务有一个共同点。不是 AI 能不能做一次,而是它能不能稳定地做很多次。

稳定,得靠规则和证据一点点兜出来。

07

THE NEW ROLE

测试人的位置,正在发生变化

写到这里,我又回头看了一眼前几天录下来的那份 recording.json

一开始我觉得,它只是用来教 AI 模仿我怎么点页面。现在再看,它更像是一份证据。

recording.json
告诉 AI,我做过什么
Trace
告诉 AI,页面经历过什么
网络记录
告诉 AI,系统背后发生过什么
手工用例
告诉 AI,我原本想验证什么

而真正把这些东西串起来的,不是某一句神奇的提示词。是一个不断行动、不断检查、不断纠偏,最后知道什么时候该停的循环。

我自己也还在把这套东西往前做,离真正稳定可用还差得远。但我越来越确定一件事。

未来测试人的价值,可能不只是亲手执行了多少条用例,也不只是找到了多少个 Bug。

更大的价值,是把自己判断对错的经验,变成 AI 能够反复执行的规则、证据和刹车。

以前,测试站在流水线的最后面。

以后,测试思维会钻进整个循环里。

AI 负责往前跑。

测试负责让它别跑偏。

这可能就是 AI 真正开始自己干活以后,测试这件事最有意思的新位置。

如果你也在做自动化测试,可以回头看一眼自己手里的流程。哪一步还需要你不停复制报错、手动点运行、再把结果贴回给 AI?

那一步,可能就是最适合先做成循环的地方。

不用一上来组建什么 AI 舰队。

先让一个小循环,真的跑通。

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-07-23 18:01:49 HTTP/1.1 GET : https://www.yeyulingfeng.com/a/857365.html
  2. 运行时间 : 0.101749s [ 吞吐率:9.83req/s ] 内存消耗:4,716.15kb 文件加载:145
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=24c1240899f6064c2c5a91d2bc40cbd0
  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.000622s ] mysql:host=127.0.0.1;port=3306;dbname=wenku;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.000882s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000293s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000281s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.000481s ]
  6. SELECT * FROM `set` [ RunTime:0.000201s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.000522s ]
  8. SELECT * FROM `article` WHERE `id` = 857365 LIMIT 1 [ RunTime:0.000412s ]
  9. UPDATE `article` SET `lasttime` = 1784800909 WHERE `id` = 857365 [ RunTime:0.017566s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 64 LIMIT 1 [ RunTime:0.000356s ]
  11. SELECT * FROM `article` WHERE `id` < 857365 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.000557s ]
  12. SELECT * FROM `article` WHERE `id` > 857365 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.000456s ]
  13. SELECT * FROM `article` WHERE `id` < 857365 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.000991s ]
  14. SELECT * FROM `article` WHERE `id` < 857365 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.000799s ]
  15. SELECT * FROM `article` WHERE `id` < 857365 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.000762s ]
0.103547s