发布于2026-07-04 阅读(0)
扫一扫,手机访问
在 Linux 上用 ThinkPHP 做自动化测试,拆开来看其实就几个环节,一步步搭好就行。下面把整个流程串起来说清楚,从环境准备到持续集成,都有对应的做法。

先把 ThinkPHP 框架装上
在 Linux 服务器上,确保已经装好了 PHP 和 Composer,然后直接用 Composer 创建项目就行:
composer create-project topthink/think=版本号 项目目录
版本号根据实际需要指定,官方文档里都有说明。
安装测试工具 PHPUnit
ThinkPHP 原生支持 PHPUnit,所以第二步就是把它加到项目里。同样用 Composer:
composer require --dev phpunit/phpunit
加上 --dev 参数,保证它只在开发环境下出现,线上不会多出来。
动手写测试用例
在项目根目录下新建 tests 文件夹,然后按规矩写测试类。举个例子,如果你有个 Calculator 类,那就创建一个 CalculatorTest.php:
use PHPUnit\Framework\TestCase;
class CalculatorTest extends TestCase
{
public function testAdd()
{
$calculator = new \app\index\Calculator();
$this->assertEquals(4, $calculator->add(2, 2));
}
}
命名规范、继承 TestCase,这些 PHPUnit 的老规矩都照着来就行。
配置一下 PHPUnit
在项目根目录创建一个 phpunit.xml 文件,可以指定测试目录、测试套件、覆盖度设置等。比如:
./tests/
有这份文件,跑测试时就不用手动指定参数了。
运行测试
打开终端,进到项目目录,敲下面这条命令:
./vendor/bin/phpunit
如果你全局装过 PHPUnit,直接 phpunit 也行。命令一执行,测试就开始跑了。
看测试结果
PHPUnit 会输出每个测试用例的通过/失败状态,失败时还会给出详细的错误信息和堆栈跟踪。绿条通过,红条失败,一目了然。这时候根据日志去修代码就行。
集成到 CI 中,实现自动触发
每次提交代码都手动跑测试太累,可以把它挂到持续集成系统里,比如 Jenkins、Tra vis CI、GitLab CI/CD 等。在 CI 配置里加上 ./vendor/bin/phpunit 这一步,提交即触发,自动出报告。
Web 界面自动化?Selenium 也能上
如果应用涉及浏览器交互,可以引入 Selenium。先装好 Selenium 服务器,然后在 ThinkPHP 项目里用 Composer 拉取 facebook/webdriver 包:
composer require --dev facebook/webdriver
之后写测试脚本模拟用户点击、输入、跳转等操作,和 PHPUnit 结合使用,覆盖前端逻辑。
以上就是一套比较完整的流程。实际操作中还会遇到版本兼容、路径配置之类的小细节,但大方向不变。想更深入的话,建议翻翻 ThinkPHP 官方文档和 PHPUnit 手册,那边有最新的变动说明。
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
正版软件
正版软件
正版软件
正版软件
正版软件
1
2
3
7
8