首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

运行[Artisan::call(...)]时无输出且不工作或[shell_exec(...)]在phpunit测试中,但当不在phpunit中时,这是可以的

问题描述: 当在运行[Artisan::call(...)]时,没有输出且不工作,或者在phpunit测试中使用[shell_exec(...)]时,但当不在phpunit中时,这是可以的。

解决方案:

  1. 确保代码逻辑正确:首先,检查[Artisan::call(...)]或[shell_exec(...)]的参数是否正确,确保调用的命令或脚本是有效的,并且没有语法错误或逻辑错误。
  2. 检查权限设置:确保运行[Artisan::call(...)]或[shell_exec(...)]的用户具有足够的权限执行相关操作。特别是在使用[shell_exec(...)]时,需要确保PHP进程有足够的权限执行相关命令。
  3. 检查环境配置:确保运行[Artisan::call(...)]或[shell_exec(...)]的环境配置正确。例如,检查相关的环境变量、路径设置等是否正确配置。
  4. 检查错误日志:查看相关的错误日志,以了解是否有任何错误或异常信息。错误日志通常可以在服务器的日志文件中找到,例如Apache的错误日志或PHP的错误日志。
  5. 调试代码:在代码中添加调试语句,以便跟踪代码执行过程中的问题。可以使用var_dump()、print_r()等函数输出变量的值,或者使用日志记录工具记录代码执行过程中的关键信息。
  6. 更新相关依赖:确保使用的框架、库或工具的版本是最新的,并且与其他依赖项兼容。有时,旧版本的框架或库可能存在一些已知的问题或错误,更新到最新版本可能会解决问题。
  7. 咨询社区或论坛:如果以上方法都无法解决问题,可以向相关的开发社区或论坛寻求帮助。在这些社区中,有很多经验丰富的开发者可以提供帮助和建议。

腾讯云相关产品和产品介绍链接地址: 由于要求答案中不能提及亚马逊AWS、Azure、阿里云、华为云、天翼云、GoDaddy、Namecheap、Google等流行的一些云计算品牌商,所以无法提供腾讯云相关产品和产品介绍链接地址。但腾讯云作为一家知名的云计算品牌商,提供了丰富的云计算产品和解决方案,可以在腾讯云官方网站上查找相关信息。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

【Laravel系列7.9】测试

很神奇吧,工作十来年,没有经历过一个是使用过测试驱动开发公司,甚至连单元测试工作中都从来没写过。测试好处自然不用多说,道听途说也了解过测试驱动开发种种好处,也期望在后续工作能够应用上。...在这里,也希望大家尽量能找规模大一些,开发比较正规公司,类似的这种开发模式测试相关知识也能够学习到更多。 运行测试 Laravel 测试组件,主要也是依赖于 PHPUnit 单元测试组件。...vendor/bin/phpunit 不过它报告格式是原始 PHPUnit 格式, Laravel 框架,我们更推荐是使用是框架自带一个测试命令。...很明显就能看出,第一个测试方法应该是可以通过,而第二个方法则可能出现问题。那么我们就来运行一下 php artisan test 看看结果是怎样。...毕竟它帮我们进行了封装,大家只需要去建立测试类然后写测试用例方法就可以了。同时希望我也能够和你们一起实际项目工作中用起来。

1.2K10

掌握 Laravel 测试方法

不管你承认与否研发一款产品,软件测试对项目而言意义重大,然而是测试通常被我们视而不见。这篇文章我们主要研究 Laravel 框架测试方法。...单元测试和功能测试 如果您已经接触过 PHPUnit 框架,那么您应该知道,它支持两种类型特性 -- 「单元测试」和「功能测试」。 「单元测试目的是用于测试函数方法正确性。... Laravel 项目中运行 PHPUnit 测试用例,仅需项目更目录执行下面的命令。 $ phpunit 这个命令会运行项目中所有测试用例。...测试断言会以标准 PHPUnit 输出显示控制台。 总结 今天,我们探讨了 Laravel 内置测试组件 PHPUnit 测试用例实现方法。...本文仅涉及 PHPUnit 「单元测试」和「功能测试基础知识,工作我们还需要结合实际出发,对 PHPUnit 测试进行深入研究才行。

5.7K10

Laravel Bash 别名

例如,如果你使用 Git,你可能会在一天内运行很多次 git status,而为了节省时间和按键次数,你可以将 git status 命名为 gs,它自动继承和调用正确命令。...然而每个人都还是有一个不同快捷方式,例如 php artisan 命令别名会有「a」、「pa」「art」。...假设你开始项目里研究一个新功能(比如尝试使用别人开发包),这个过程你可能会添加一些新文件,折腾过后你可能会发现这个功能并不怎么好用。...然后你就可以通过运行「nah」命令来一口气删除这个过程你所做一切。 如何创建自己别名 对于那些也想尝试创建 bash 别名的人来说,这个过程很简单。...另外,要记得每次修改 bash_aliases文件之后,你都需要运行 source 命令重新启动终端,让更改内容得以生效。

1.8K20

Laravel API教程:如何构建和测试RESTful API

可以将资源表示多个数据模型根本不在数据库中表示),并且模型完全不受用户限制。最后,您将以适合您应用程序方式来决定如何构建资源和模型。...::class); } } 这样,我们可以简单地运行$ php artisan db:seed,它将在run()方法运行所有被调用类。...204: 内容。一个动作执行成功,没有内容返回。 206:部分内容。您必须返回分页资源列表很有用。 400: 错误请求。无法通过验证请求标准选项。...使用它将使我们测试快速运行,但是权衡是一些迁移(migration )命令(例如约束)该特定设置中将无法正常工作。...我建议您在开始获取迁移错误时,测试离开SQLite,或者您希望使用更强大测试,而不是执行运行。 我们还将在每次测试之前运行migrations 。

20.3K20

PHPUnit 手册【笔记】

2.生成输出很长而难以阅读PHPUnit将对其进行分割,并在每个差异附近提供少数几行上下文信息 三、命令行测试执行器 1.对于每个测试运行,PHPUint命令行工具输出一个字符来指示进展:...【.】测试成功输出 【F】测试方法运行过程中一个断言失败输出 【E】测试方法运行过程中产生一个错误时输出 【R】测试被标记为有风险输出 【S】测试被跳过时输出 【I】测试被标记为不完整未实现时输出...phpunit.xml.dist存在于当前工作目录并且未使用--configuration,将自动从此文件读取配置 /5_1test/phpunit.xml 六、有风险测试 1.PHPUnit...API,底层数据库内容被隐藏在对象结构之下,这个对象结构也可以用其他非数据库数据源来实现 2.预期内容可以用诸如XML、YAML、CSV文件或者PHP数组等方式来表达 3.测试,数据库断言工作流由三个步骤组成...仅一个类性状所有方法全部已覆盖PHP_CodeCoverage才将其视为已覆盖 4.Opcode覆盖率(Opcode Coverage)按函数方法对应每条opcode在运行测试套件是否执行到进行计量

1.7K40

创建并运行一个新 Laravel 项目

Composer,指定 NPM 包版本 .editorconfig:用于不同 IDE 编辑器维护代码风格一致性 3、配置 Laravel 应用一些核心配置,比如数据库、队列、邮件等,都位于...这些配置文件都会返回一个数组,数组每个值都可以通过配置键获取(配置键以配置文件名为前缀,以「.」号分隔数组层级),例如,如果你 config/services.php 定义了如下配置: // config...env() 辅助函数传入键名 SPARKPOST_SECRET 来获取,这样做有两个好处:一是将敏感信息存放到版本控制系统(如 Git、Svn)之外,提高了系统安全性;此外还可以方便我们不同环境...5、测试 Laravel 开箱提供了基于 PHPUnit 进行单元测试和功能测试功能,并且为我们做好了基础配置(phpunit.xml)和示例代码(位于 tests 目录下),由于本节并没有编写任何代码...,所以可以通过以下命令运行示例测试: .

6.8K30

PHPUnit入门基础教程

PHPUnit是PHP语言单元测试框架、工具,xunit单元测试工具系列成员之一,可以单独运行在Linuxwindows系统下面,也可以集成到zend studio等IDE工具。...2、直接使用phpunit命令来运行测类文件: ..    2个测试方法都运行成功 OK  包括2个测试方法,4个断言 .    测试成功输出。...F   测试方法运行过程中一个断言失败输出。 E   测试方法运行过程中产生一个错误时输出。 R   测试被标记为有风险输出。 S   测试被跳过时输出。...I   测试被标记为不完整未实现时输出zend studio中使用PHPUnit框架 1.为需要进行单元测试项目添加phpunitLibrary。...类) 待测试Demo类: 右键点击项目->New->PHPUnit Test Case,新建测试用例类(也可以直接新建普通PHP File): 可以选择要测函数: 完成后,自动生成PHPUnit

1.5K40

PHPUnit简介及使用

在编写测试用例,要遵守如下phpunit规则: 1 一般地,测试用例可以扩展PHPUnit\Framework\TestCase类,这样就可以使用象setUp(),tearDown()等方法了...3 一个测试用例所有的测试方法,命名都应该以test+测试方法名去命名,如testDoesLikeWaffles(),要注意是该方法必须是声明为public类型。...SetUp方法是每个测试用例运行前进行一些初始化工作,而tearDown则在每个测试用例运行后进行一些比如资源释放等工作。...接下来我们运行这个单元测试命令行下输入代码:     phpunit /path/to/tests/ConnectTest.php     即可,可以看到测试顺利通过的话,会输出以下结果: PHPUnit...默认情况下,phpunit是会运行测试用例所有测试方法

1.4K10

自动化测试:六个值得参考 Laravel 开源项目

同时这段逻辑是所有的测试 —— 一些抽象 "魔术" 正在执行所有的工作。   我不是说这是坏事 —— 十分确定他在内在东西里工作很好。他只是不容易先学习和遵循。...\n", Artisan::output());   }   调用 artisan 命令并断言其输出 —— 非常有趣。我确定他有效,这是非标准方式。  5....PHPMap 有一个测试组件,使人联想到 Laracasts 测试驱动 Laravel 课程 讲述标准。这是 Feature/FavoritesTest.php 例子。  ...Timegrid 最大贡献者是 Ariel Vallese,同时他测试方面做了非常好工作。 ?  ...总体结论   在看过所有这些不同项目之后(以及由于各种原因未提及),以下是我对自己关于测试主要要求:   不在 单元 "" 功能 做选择, —— 大多数项目两者兼具,或者更多类型测试

1.9K30

Travis CI 持续集成服务构建 Composer 类库简明教程

Travis CI 持续集成服务构建 Composer 类库简明教程 项目开发过程,编码工作只是软件开发整个过程一小部分环节,更多我们需要去构建和测试我们项目,以确保项目的健壮和稳定性。...要知道我们在编写软件,编码仅仅是软件开发过程中一小部分工作内容;一个可靠项目还需要对其进行测试,使用 Travis CI 这类持续构建服务,可以简化测试工作并保证项目的质量。...项目中,究竟何时才需要使用单元测试技术呢? 一个很简单判断标准就是,当你想在项目中使用类似 var_dump 函数打印输出内容,一个更好方式就是将输出替换成单元测试。.../vendor/bin/phpunit -c phpunit.xml language 和 php: language 用于配置项目采用编程语言; php 用于指出项目使用 PHP 开发选择使用.../vendor/bin/phpunit -c phpunit.xml 进行单元测试我们配置可以将 script 配置简写成:./vendor/bin/phpunit

1.2K10

【译】现代化PHP开发--TDD

这是关于改变思维方式,因为我们应该专注于API输入和输出,而不是代码细节。此阶段结果是成功创建了红色测试。 绿灯阶段: 绿灯阶段,这就是编写最快代码以通过测试全部。...在这个阶段,我们不应该花费太多时间使代码简洁重构。尽管我们所有人都想编写最漂亮代码,这并不是当前阶段任务。此阶段结果是绿色测试。 重构阶段: 重构阶段,我们专注于使代码简洁。...因此,重构是修改任何代码后立即运行测试自然方法。 TDD 单元测试 TDD使我们可以测试驱动开发周期。PHP中使用TDD,显然,我们需要定义将要进行测试类型。...composer require phpunit / phpunit 默认情况下,PHPUnitbin文件将放置vendor / bin文件夹,因此我们可以直接从项目的根文件夹运行vendor...这是我们要测试类,因此要确保将其包括在内。 行7:每次测试运行之前调用setUp()。请记住,它在每次测试之前运行,这意味着,如果您有另一个测试函数,它也将在进行测试之前运行setUp()。

99120

使用PHPUnit进行单元测试并生成代码覆盖率报告方法

这是一个非常简单测试用例类,可以看到,执行了共3个测试用例,共3个断言,共1个失败,可以参照PHPUnit手册学习更多高级用法。...这样我们就对业务代码App\Example做单元测试,并且获得我们单元测试代码覆盖率,现在自然是百分之百,因为我测试用例已经访问了App\Example所有方法,没有遗漏,开发则能体现出你测试用力对业务代码测试完善性...这需要理解 PHPUnit 执行测试用例工作流程。 我们没有办法不同测试方法通过某成员属性来传递数据,因为每个测试方法执行都是新建一个测试类对象,然后调用相应测试方法。...()//断言前/后调用 运行测试,每个测试类大致就是如下执行步骤 #测试类基境构建 setUpBeforeClass #new一个测试类对象 #第一个测试用例 setUp assertPreConditions...#测试类基境解构 tearDownAfterClass 所以我们可以测试类构建使用setUpBeforeClass创建一个 App\Example 对象作为测试静态成员变量(tearDownAfterClass

1.6K31

PHPUnit 单元测试都不会 PHPer 没法写出高质量代码

单元测试软件开发过程要进行最低级别的测试活动,软件独立单元将在与程序其他部分相隔离情况下进行测试。...更容易 发现平时无法走到异常分支 ,而这个分支处理逻辑可能人工测试需要经历很多步骤才能走到,省时间 最近在工作也尝试着为开发功能写单元测试,切实意识到了单元测试好处,需求里边有一个比较复杂时间推算逻辑...断言 想要更加细致了解断言的话,这里推荐一篇博客:https://www.jianshu.com/p/9b8c88deed6a 软件测试特别是单元测试,必用一个功能就是“断言”(Assert)...phpunit,给出 TestCase 基类即有两个方法, setUp 和 setDown 分别用于为每个单元测试创建测试对象和清理测试对象 数据供给器 对同一类情况进行测试,通常可以用数据供给器传入不同入参和相应预期返回值...phpunit # 运行某个分组单元测试 phpunit --group GroupA # 运行指定测试所有测试用例 phpunit tests/xxxxTest.php # 运行所有测试满足

1.2K10

不会Phpunit单元测试PHPer写不出高质量代码

PHP,最小单元可以引用函数类。需要验证是每个函数,每个类函数都符合我们期望。...单元测试是什么意思 它可以减少一些细节错误发生,如错误报告是否没有错误,输入参数和结果是否符合要求等。 便于今后改造和维护。...实际工作,有很多情况需要制作一个版本函数,但是内部细节需要在上线后进行调整。如果有一个单元测试,那么更改它会更放心,改进单元测试过程也是进一步理解需求过程。...phpunit,给出 TestCase 基类即有两个方法, setUp 和 setDown 分别用于为每个单元测试创建测试对象和清理测试对象 数据供给器 对同一类情况进行测试,通常可以用数据供给器传入不同入参和相应预期返回值...phpunit # 运行某个分组单元测试 phpunit --group GroupA # 运行指定测试所有测试用例 phpunit tests/xxxxTest.php # 运行所有测试满足

1.3K20

看吧,这就是现代化 PHP 该有的样子

Github 还整合了其他几个工具,并且你应该开始使用它们。持续化集成过程,这些工具可以为你生成数据,跑测试,跑任务,在你工作为你做各种各样事情。...正如官网展示PHPUnit 是一个面向程序员PHP测试框架 PHPUnit 是一个实例 xUnit 架构单元测试框架 所以,PHPUnit 是一个为你项目生成统一测试框架,它会提供一些函数去测试代码并且有漂亮结果输出...只要几次点击,就可以将你 Github 项目集成到 Travis CI 之后你每次将代码推送到仓库,它会运行你创建 PHPUnit 和 Behat 文件,并告诉你最近功能是否已经准备,没有,...除此之外,你可以使用 Travis CI 将你代码部署到生产环境运行。 通过一个明确定义工作流程来完成工作流程是非常好,Travis CI 可以帮助我们完成这个工作。...试着建立代码提交之前运行 phpcs 和 phpcbf 习惯,这将会保证你所有的代码都符合编码规范,如果有人喜欢你工具(工程)并且想贡献代码,他们阅读你代码将不会有任何阻碍。

1.5K60

phpunit-单元测试神器

我们开发时候,测试是必不可少东西,那么有个好测试工具才能让你测试效率提升,现在就介绍下最近我发现单元测试工具-phpunit吧. phpunit phpunit是php 轻量级单元测试框架...我们知道了断言 断言是编程术语,表示为一些布尔表达式,程序员相信程序某个特定点该表达式值为真 例如上面的api接口,正确调用时一定会输出"hello world",断言它将会输出hello world...,如果没有输出该结果则代表断言出错 phpunit,还有其他断言方法,例如: 布尔类型 方法名 含义 参数 返回值 assertTrue 断言为真 assertFalse 断言为假 NULL...这个已知状态称为测试 基境(fixture)。 例如在User测试,我们每次都需要new User进行测试user类,其实我们完全可以使用基镜: <?...当你项目有改动时候,都可以直接运行测试用例,来测试改动是否影响了其他地方,非常方便 本文为仙士可原创文章,转载无需和我联系,请注明来自仙士可博客www.php20.cn 上一篇:

1.5K10

用于检查和改进代码PHP代码质量工具

潜入之前最后一件事:本文中介绍工具分析格式化您代码,我不会谈论测试。 安装代码质量工具 安装此处描述工具总是有多种方法。...您也可以通过替换上面命令行选项来创建 html xml 输出 text 。 在此示例,我们使用 cleancode 规则集,您显然可以更改它创建自己规则集。 您想要在文件输出错误吗?...PHPUnit和CRAP指标 Github上 文档 本文不涉及单元测试。我假设您知道测试代码单元远比本文中任何内容更重要。 PHPUnit可以显示一个非常有趣信息: CRAP 指标。...前往CRAP中心旅程 请记住:代码覆盖率并不意味着您代码经过了充分测试这是我将为另一篇文章保留完全不同主题。...更深入地检查您PHP代码 我使用以下工具来确保我工作项目朝着正确方向发展。他们可以帮助您了解全局。 您需要处理未知(遗留)应用程序时,它们也可以成为真正生命救星。

2.7K20
领券