定制 jord-jd/phantomjs-laravel-testing 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

jord-jd/phantomjs-laravel-testing

最新稳定版本:v1.0.0

Composer 安装命令:

composer require --dev jord-jd/phantomjs-laravel-testing

包简介

PhantomJS Laravel Testing

README 文档

README

The PhantomJS Laravel Testing package allows you to easily test your Laravel application's JavaScript functionality. It makes use of the PhantomJS headless browser to emulate how a real use would interact with your pages. If you have done regular Laravel testing, you'll be happy to know that this package attempts to match its syntax as much as possible.

💡 NOTE: If you're starting a new project, I recommend using Laravel Dusk instead. PhantomJS development is being suspended and will likely not receive any future updates.

Features

  • Identical syntax to standard Laravel testing code where possible
  • PhantomJS-powered headless browser allows full functionality testing, including JavaScript & AJAX
  • Makes use of database transactions to prevent testing having permanent effects on the database
  • Optional auto-start of PhantomJS if a phantomjs binary is available

Requirements

  • Laravel 8.x
  • PHP 7.4+
  • A PhantomJS binary available in PATH or via PHANTOMJS_BIN (only needed if you use PhantomJSTestCase)

Installation

  1. Install via composer require jord-jd/phantomjs-laravel-testing.
  2. Add global middleware \JordJD\PhantomJSLaravelTesting\Http\Middleware\GlobalMiddleware::class to app/Http/Kernel.php middleware array.

Usage

Simply change your test classes to extend PhantomJSTestCase instead of TestCase, then run your unit tests as you normally do. PhantomJS will automatically be started up when required.

By default, PhantomJSTestCase will try:

  • PHANTOMJS_BIN (full path to phantomjs)
  • vendor/bin/phantomjs
  • phantomjs in PATH

Set PJS_LT_DISABLE_AUTOSTART=1 to disable auto-start.

An example test case is shown below.

<?php

use JordJD\PhantomJSLaravelTesting\Objects\PhantomJSTestCase;

class ExampleTestCase extends PhantomJSTestCase
{
    public function testGoogleShowsImFeelingLucky()
    {
    
        $this->visit('https://google.co.uk/');
        $this->see('I\'m Feeling Lucky');
    }

    public function testGoogleShowsImFeelingDucky()
    {
        $this->visit('https://google.co.uk/');
        $this->see('I\'m Feeling Ducky');
    }
}

统计信息

  • 总下载量: 0
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 4
  • 点击次数: 3
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 4
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: LGPL-3.0-only
  • 更新时间: 2026-02-14