如何选择在Laravel3.x中运行哪些PHPUnit测试?

我使用php artisan test来执行我的测试,但是现在我有太多的测试,我希望能够选择运行哪一个。我熟悉PHPUnit中的测试组,只是不知道如何将其应用于Laravel,因为PHPUnit.xml是在这里动态生成的 谢谢您可以将PHPUnit测试与分组。我想您也可以参考artisan的这一组: 您可以将@group放在测试类上,也可以只放在测试方法上。您可以在一个类/方法上放置多个组。这样您就可以组织它们。如果不修改几个Laravel的核心文件,就不可能做到这一点。 我非常需要这个功能,所

phpunit中的组/过滤器不执行特定的测试用例

我有一个套件,它调用多个套件和许多函数来记录、报告和执行,如果我尝试相同的“组或过滤器”模式,它将执行所有测试用例,而不执行选定的单个测试用例 编辑:我正在使用一个数组套件,如下所示 $suite->addTestSuite('adminSuite'); $suite->addTestSuite('staffSuite'); $suite->addTestSuite('merchantSuite'); // Run the test PHPUnit_TextUI_TestRu

Phpunit 如何从Codeception单元测试中获得调试输出?

我可能有点糊涂,但我不知道如何获得一点关于测试失败原因的信息 我做这个测试是为了检查我们没有任何新的没有测试的方法 //TEST ALL METHODS TESTED public function testAllMethodsTested() { $temp = $this->class_namespace.substr(__CLASS__, 0, -5); $class_methods = get_class_methods($temp); $test_meth

PHPUnit接受应用程序/json

我已经用PHPUnit编写了测试,我想向服务器发送信息,以获得json响应 我试图用client->request方法作为第五个参数的第三个发送'accept'=>'application/json'头,但它不起作用 我的代码: class PostControllerTest extends WebTestCase { protected $client; public function setUp() { self::bootKernel();

PHPUnit测试添加操作-测试失败

CakePHP版本:3.5.17 PHPUnit:6.5.8 示例代码: 用户控制器添加操作。(编码哪些错误。) 客户端id功能。 public function add() { $user = $this->Users->newEntity(); if ($this->request->is('post')) { // Initialise the client id. if ($this->clientId(

PHPUnit挂在第三个testcase类的第一个测试上

运行Laravel 5.1 我有两个testcase类,每个类本身运行良好,但当我一起运行它们时,例如>phpunit没有过滤器,它将挂起最终testcase类的第一个测试。(我实现了自己的侦听器,这样我就可以看到哪些套件正在运行 它没有中断或只是停止,它只是位于命令行,我必须按ctrl C停止批处理文件。如果我删除第三个套件中的第一个测试用例,它将挂起到下一个测试 我输入了xml文件,并使用--stderr运行它,但没有效果。Follow up。我创建了一个新的测试类,在问题类之前运行,但这没

问题升级至phpunit 3.5.13

我已经使用phpunit一段时间了,从3.5.8开始,随后升级到3.5.10,现在是3.5.11 今天我想使用以下命令升级到3.5.13: > pear config-set temp_dir "C:\tmp" > pear config-set download_dir "C:\tmp" pear频道更新pear.phpunit.de 梨升级phpunit/phpunit 不幸的是,pear只升级了自己,但是phpunit的升级失败了,如下所示。是的,我处于管理员模式,因此授权不

Phpunit 使用相同的预期异常测试多个异常

除其他外,我正在尝试测试我的类的构造函数。它只需要一个必须是字符串的参数。所以我写了这个测试: class categoryTest extends PHPUnit_Framework_TestCase { public function testConstructor() { $this->setExpectedException('Exception', 'Unknown data type.'); $objCategory = new category(1);

phpunit——终端上的版本不返回任何内容

我是phpunit的新手,刚刚安装了它。为了在全球范围内访问它,我将它从MAMP PHP5.5.3 bin移动到 /usr/local/bin 那么现在,当我打字的时候 which phpunit 我明白了 但是当我打字的时候 phpunit --version 我什么也没得到,终端只是返回一个新的空行。 从我遵循的教程中,我应该得到如下内容: PHPUnit 3.6.12 by Sebastian Bergmann. 我错过什么了吗?谢谢尝试在没有参数的情况下运行phpunit。如果您

Phpunit Symfony2.3表单测试错误-选项不存在

我在Symfony2.3项目中进行表单测试,结果发现没有选项。 我不明白为什么会这样 AdminMessageBundle\Tests\Form\ServiceAlertTypeTest::testSubmitValidData with data set #0 (array(1, 'magic', '#2A8BCC', 'www', '23/12/14', 'text', 'all')) Symfony\Component\OptionsResolver\Exception\Invali

Phpunit 有什么工具可以帮助单元测试吗?

我正在使用phpunit。但是你知道它的困难,不可能模拟私有函数,访问私有变量,等等。有没有一个工具可以帮助我?将私有函数转换为公共函数,将静态方法转换为可模仿方法,等等,这些都不能直接回答您的问题,但使phpunit更容易的最佳“工具”是良好的代码设计。如果你不确定一个给定问题的好设计是什么,那么你已经在使用另一个可用的好工具——这个网站 您在问题中提到的导致困难的事情通常是困难的,因为代码的设计存在问题。如果很难测试,那么重构、使用和维护就很难了。测试在编码过程的早期向您展示了这一点,并允许

PHPUnit-使用数据提供程序忽略测试

我有两个测试的特点,每个测试都有一个单独的数据提供者: trait StringTest { /** * @dataProvider stringProvider */ public function testString($expression, $string) { //echo $name; $this->assertInternalType('string', $string, "Not a string."); $thi

Phpunit Laravel黄昏更改URL

我已经为Laravel安装了dusk,从一开始所有的测试都失败了。他们没有查看我想要的页面,而是返回404错误 为了找出测试试图进入的URL,而不是我想要的URL,我设置了一个自定义404页面,并在其中输入以下代码: $\u服务器['REQUEST\u URI'] 现在,测试返回它试图获取的URL,我发现它在URL的末尾添加了一个“/会话”,例如,如果我尝试检查: 'http://localhost/,DesiredCapabilities::chrome() 测试返回 在此服务器上找不到请求

Phpunit 使用postGraphQL进行Lighthouse测试在使用订阅时失败

我有一个laravel包,它使用GraphQL(Lighthouse)来扩展我的基础项目。在添加我的包和执行查询等操作时,一切正常 但是,由于我试图在测试文件中发出postGraphQL请求,其中给定的查询或变异使用@broadcast指令,因此请求失败,原因是: Add the SubscriptionServiceProvider to your config/app.php to enable subscriptions. 启动测试环境时,SubscriptionServiceProvi

如何模拟生成的类? PHPUnit版本| 9.1.5 PHP版本| 7.4.3

以前,当使用create方法测试工厂类时,我可以使用setMethods为一个尚不存在的类生成一个模拟,如下所示: $factoryStub = $this->getMockBuilder($baseClass . 'Factory') ->disableOriginalConstructor() ->setMethods(['create']) ->getMock(); 现在我看到

PHPUnit不返回到下一个测试用例

我有两个测试用例,一个返回一个值,下一个应该使用返回值 class GenerateAckFeedTest extends PHPUnit_Framework_TestCase { public function testThankyouAckFeedErrors() { $ackFeed = array(1,2,3); return $ackFeed; } /*** * @depends testCitiThanky

PHPUnit报告PHPUnit_框架_异常

我向bundle添加了一个简单的测试 按照手册中的建议,我尝试让PHPUnit加载以下配置: phpunit -c /app phpunit.xml如下所示: <?xml version="1.0" encoding="UTF-8"?> <!-- http://www.phpunit.de/manual/current/en/appendixes.configuration.html --> <phpunit backupGlobals

升级phpunit窗口

我想在我的windows服务器上安装PHPUnit 3.7。我按照各种说明操作,最终得到了phpunit3.4.1。当我尝试再次安装时,请使用: pear update channels pear install --alldeps phpunit/PHPUnit 我得到: phpunit/PHPUnit is already installed and is the same as the released version 3.4.15 install failed 我知道3.4.15不是

Phpunit 测试几个方法以正确验证传递的参数

我有几个方法采用相同的参数(user\u id)。在这些方法中,我测试传递的参数是否为有效的八位数整数。 是否有可能将(?)测试分组以测试传递参数的有效性 Class Hello{ public function test($user_id=0){ if (!preg_match('/^[0-9]{8}$/', $user_id)) return false; do stuff... } public function make($user_id=0){ if (!preg_match('/

PHPUnit分析预期的方法调用参数

有没有什么方法可以完全测试这个方法,因为我并没有直接将模型传递给它,而是希望我的经理为我创建它 public function giveAchievement(User $user, $achievementType) { $a2p = new Achievement2User(); $a2p->setUser($user); $a2p->setAchievement($this->em->getReference(AchievementManag

如何防止PHPUnit在Tests目录中运行PHP文件?

我有很多测试需要创建一个特定的模拟对象。下面是我所做的: namespace AppBundle\Tests\Services\Terminal; use Mockery\Adapter\Phpunit\MockeryTestCase; use AppBundle\Entity\Tunnel; class TunnelBasedTestCase extends MockeryTestCase { /** * * @var Tunnel */ pr

Phpunit CakePHP2的代码覆盖范围现在是;没有要为“生成覆盖范围的文件”;

我在CakePHP上的单元测试仍然在运行,但是代码覆盖率已经消失了。我得到的只是“没有要生成覆盖范围的文件” 我们的应用程序目前正在CakePHP 2.10.15上运行。我已经安装了PHPUnit 5.7。运行PHP7。我使用web runner进行测试和覆盖。我让XDebug 2.7.0beta1运行 我们最近的升级是否破坏了Cake和PHPUnit之间的某种连接?在应用程序文件夹中创建一个文件PHPUnit.xml: <?xml version="1.0" encoding="

如何在phpunit测试中伪造日期时间?

ssI使用Symfony的内核测试用例编写一个单元测试,并且必须测试一个功能,这只会在一天中的某个特定时间提前或延迟进行 所以当我让我的测试在中午运行时,当然什么也没发生。我怎样才能伪造我的系统时间,假装它有一个不同的时间,我的测试用例被触发 我试过使用Symfony的ClockMock类,但不起作用。 这是我的测试代码: use Symfony\Bridge\PhpUnit\ClockMock; use \DateTime; /** * testUserAchievedEarlyBird

为什么我的定制测试不是由PHPUnit启动的?

如中所述,您可以实现PHPUnit\Framework\Test来编写自定义测试 听起来不错,但是如何将这些测试作为测试套件的一部分来启动呢 给定以下测试目录: +tests/ |- NormalTestExtendingTestCaseTest.php |- CustomTestImplementingTest.php phpunit.xml 和我的phpunit.xml文件: <phpunit xmlns:xsi="http://www.w3.org/2001/XMLSc

PHPUnit报告的百分比:这是什么意思?

我正在做我的第一个项目,在这个项目中,我使用PHPUnit进行单元测试。事情一直进展顺利;但是,通过最近的测试,我开始获得以下输出: ................................................................. 65 / 76 ( 85%) ........... Time: 1 second, Memory: 30.50Mb OK (76 tests, 404 assertions) 我找不到任何关于“65/76(85%)是什么意思的

Phpunit slim3中的控制器单元测试

首先,我想说——我是PHP单元测试(phpunit)的新手。 在我的新项目(slim3框架)中,我想测试我的控制器,例如LoginController 我的想法是(单元测试方法) 创建登录控制器的实例 模拟控制器(DI)中的某些服务 执行响应请求的方法(在我的控制器方法中\uu invoke) 我的问题是关于\u invoke方法的参数。 在Slim3中,请求的可调用方法有两个第一个参数: RequestInterface$request和ResponseInterface$response

Phpunit 如何断言数组包含与预期regexp匹配的元素?

我试图断言一个数组至少包含一个与预期正则表达式匹配的元素,并且我正在尽可能多地照本宣科,尽可能少地重新发明轮子 理想情况下,我希望->断言($actualray,$someConstraintObject),其中$someConstraintObject是一个执行正确操作的PHPUnit\Framework\Constraint\Constraint实例™, 并且只由PHPUnit附带的约束组成,无需编写新的约束类 我考虑了一件不可能起作用的事情:由正则表达式约束构成的逻辑约束。为什么它不能工作

Phpunit 使用GOUTE/Symfony CssSelector组件按属性选择节点

我正在使用(Symfony功能测试组件的独立包)测试Wordpress主题: public function testDocumentHasBasicNodes(){ $this->assertEquals(1, $this->crawler->filter('title')->count(), 'document shall have a TITLE node'); $this->assertEquals(1, $this

PHPUnit在phpForm中不工作

我有以下测试文件,PHPUnit网站上的一个示例 <?php require_once 'PHPUnit/Autoload.php'; class StackTest extends PHPUnit_Framework_TestCase { public function testPushAndPop() { $stack = array(); $this->assertEquals(0, count($stack));

PHPUnit向山狮抛出错误

我已经按照这里描述的说明进行了操作 一切都很顺利,但当我执行以下命令时 phpunit --bootstrap src/autoload.php tests/MoneyTest 它抛出以下错误 PHPUnit 4.0.4 by Sebastian Bergmann. PHP Fatal error: Class 'SebastianBergmann\Money\Money' not found in /Users/myname/Sites/lab/unittesting/tests/Mon

Phpunit 如何为所有流行的CMS编写通用单元测试代码

我有一个为WP、Drupal、SMF、WP等制作的插件,现在我想为它们编写单元测试。那么,有没有办法为它们编写通用的单元测试代码,或者仅仅是基本代码,我不想分别为每个插件编写单元测试。如果不知道插件的实际功能,答案可能有点元 你应使用: 创建一个包含用于测试功能的所有方法原型的插件(即,如果您的插件格式化一篇文章,您将在该接口中有一个名为format\u post())的方法) 对于每个CRM,创建一个将实现该接口的类 在执行测试的文件中,为每个CRM测试类(实现定义format\u post

PHPunit说2个测试和2个断言,尽管我还没有编写一个测试函数

在类“Test\GroupControllerTest”中未找到任何测试 phar:///usr/local/bin/phpunit/phpunit/TextUI/Command.php:152 phar:///usr/local/bin/phpunit/phpunit/TextUI/Command.php:104 失败! 测试:2,断言:2,失败:1 正如您所看到的,PHPunit的输出表明类中没有测试,但我不理解为什么它在底层测试中说:2,断言:2,失败:1 有人能帮我理解吗?在执行的其他文

非cli PHPUnit-在php脚本中运行和收集结果

我尝试获取php单元测试文件夹的结果,但不使用CLI,而是使用php文件 我想在一个变量中得到答案(好的,通过了4个测试),这样我就可以决定脚本是否应该执行,最好的方法是什么?我不想使用批处理文件,我想在库本身内部强制执行测试 我从 需要一次“PHPUnit/Autoload.php” 当我把测试包括在内时,我不知道如何开始思考 有什么建议吗?您可以检查PHPUnits退出代码,0表示测试没有失败 要从php文件运行测试,然后检查退出代码,请尝试以下操作: //Composer installs

无法设置夹具(带dbunit的PHPunit)

试图为我的Phalcon测试设置夹具,但失败了。 你能找出我的实现出了什么问题吗 用法 法尔康7.2 Docker版本18.09.0-ce-beta1 docker compose 1.22.0版 pH6.5.8 dbunit 3.0.3 现状 使用“getConnection”函数连接到数据库成功 创建数据集(YAML类型) 创建getDataSet函数,但无法设置fixture和cleanup unitTestCase.php 回应 注 当我在getConnection中使用一个真正

php vcr将中断PHPUnit的自动加载

在PHPUnit引导文件中启用php vcr会中断类PHPUnit\Framework\ExceptionWrapper的自动加载 我试图将PHPUnit降级到7.x,但没有成功。从引导中移除VCR解决了ExceptionWrapper问题 这是我的引导文件的开头 require_once __DIR__ . '/../vendor/autoload.php'; use VCR\VCR; VCR::turnOn(); VCR::configure()->setMode('new_epi

Phpunit 如果测试失败,PHP将非常慢

运行PHPUnit时,如果没有错误,它将在aprox中运行。6秒,但如果出现错误,则可能需要3或4分钟…仅报告错误信息 我在Windows中运行PHP版本5.5.3和PHPUnit版本3.7.28 测试非常简单,即使是最简单的断言失败也会让测试报告花费很长时间 class MyTest extends PHPUnit_Framework_TestCase { public function someTest() { $this->assertEquals(true,

phpunit全局资源类型变量正在设置为0

我正在对一个遗留php项目进行单元测试。它的db connect是全局设置的,因此可以在整个项目中使用。对于phpunit测试,我引导创建db connect的文件,但是我的测试文件,即db connect的资源设置为int0,我不知道为什么 引导的xml配置: 我从中找到了可能重复的原因,这是因为phpunit的备份是通过序列化变量实现的,但资源类型不能序列化! <?xml version="1.0" encoding="UTF-8" ?> <phpunit bootstra

安装PHPUnit时连接失败

我在安装PHPUnit时遇到问题,使用pear通道发现时无法打开连接(网站pear.PHPUnit.de正常,我仍然正常使用通道信息或清除缓存)。我尝试了很多方法,但都失败了。 我希望得到你的帮助, 非常感谢大家,, 命令行:pear channel discover pear.phpunit.de 错误:…连接到'pear.phpunit.de:80'失败:连接尝试失败…因为连接的主机未能响应您不应该再为phpunit使用pear分发 现在安装它的唯一有效日期是。以下是关于如何做到这一

phpunit未生成覆盖率xml文件

以下是: phpunit“C:\xampp\htdocs\LaravelTest\tests\ExampleTest.php”--coverage xml“C:\Users\James\Documents\Test log” 没有为我创建xml文件 我也尝试过: phpunit“C:\xampp\htdocs\LaravelTest\tests\ExampleTest.php”--coverage xml“C:\Users\James\Documents\Test Logs\Test.xml”

PHPUnit-setUp()-它是否在每个测试用例之前和之后运行?

我仍然对PHPUnit中的setup()有点困惑 它是否在每个测试用例之前和之后运行 对于intance,我想在每次测试之前清理我的文章表,但我想保留我已经注入表中的测试数据。因为我只想在下次测试前清洗它 我的测试 namespace Test\Foo\Article; use Test\SuiteTest; use Foo\Article; class ArticleTest extends SuiteTest { protected static $Article; /

Phpunit Arcanist单元测试需要几分钟

我们有一个遗留的代码库,我们刚刚开始添加单元测试覆盖率。这意味着,虽然我们有大量的代码库(150万行,至少600个类,加上支持,模板文件),但在整个应用程序中我们只有一到两个单元测试。(悲伤但真实) 我的问题是,arcanist单元测试(使用arc单元或部分arc diff)运行需要超过四分钟。另一方面,PHPUnit只需要几秒钟 单元测试应该很短,特别是如果它只是在最近的差异上。我如何加快这些测试,或者,如果没有,看看arcanist正在尝试做什么(这样我就可以优化自己) 我最好的猜测是,这与

如何检查phpUnit 6中的异常和异常消息?

在phpunit5中,我们能够设置预期的类名,然后检查它的错误消息 $this->setExpectedException('Cake\Network\Exception\NotFoundException'); $this->assertEquals('Not Found', $this->_exception->getMessage()); 如何在PhpUnit 6中执行相同的操作 $this->expectException(NotFoundExceptio

Phpunit 什么会导致痛风驱动程序不遵循重定向?

我有一个PHPUnit-Mink测试,它确保一些HTTP重定向已经就位 这被缩减了,但测试本质上看起来像是,testRedirect()由@dataProvider提供: class Testbase extends BrowserTestCase { public static $browsers = [ [ 'driver' => 'goutte', ], ]; public function testRedirect($from, $to)

Phpunit Laravel 4在TestCase中未找到任何测试

我和phpunit有些问题。当我执行测试时,phpunit不会给我以下警告: 1) 警告 在类“Illumb\Foundation\Testing\TestCase”中未找到任何测试 2) 警告 在类“TestCase”中未找到任何测试 但是我想忽略这些文件,这样phpunit就不会尝试从它们运行测试 如何做到这一点?希望您现在已经找到了答案,但如果您还没有找到答案,这可能会有所帮助: 嗯-确保文件名和类名都匹配。对于 例如,没有文件名为BarTest.php的FooTest类 另外,您是否确定

PHPUnit根据参数改变模拟方法返回值

PHPUnit不允许我根据传入的参数指定返回值。以下给出了一个500错误: //模拟会话值 $container->get('session') ->method('get') ->with(SESSION_FILTER_MONTH) ->willReturn('2017-05'); $container->get('session') ->method('get') ->with(SESSION_FILTER_F

Phpunit 为mockry中的特定参数指定期望返回值的最短方法

我想创建一个Mock,其方法应该为特定参数返回true,为任何其他参数返回false 我可以通过以下方式实现这一目标: $this->myMock = Mockery::mock(MyClass::class); $this->myMock->shouldReceive('myMethod')->with('my-argument')->andReturn(true); $this->myMock->shouldReceive('myMethod')-&

Phpunit 于是,一个变种人逃走了。现在怎么办?

我第一次成功地进行了变异测试。我通常的测试框架是,但在撰写本文时,它与突变测试不兼容(尽管我相信这方面的工作正在进行,而且已经不远了)。我正在使用和,这两个似乎都不容易解决如何使用 我的测试套件产生了十个变种。九人死亡,一人逃脱。然而,我不知道需要改进代码或测试的哪一部分来杀死最终的变种 您如何获得关于什么代码允许突变体逃逸的信息?我在中找不到的内容中找到了:结果保存在infection.log中 日志文件如下所示: Escaped mutants: ================ 1)

在PHPUnit和PHP7+中模仿跺脚;是给错了吗;未定义的属性:Mock_Stomp_5872f424::$u phpunit_invocationMocker";

我使用的是带有php:7.4-fpm和pecl-stomp-2.0.2扩展的停靠环境。我已经从php:5.6-fpm迁移了我的代码。我正在为下面的“StompTest.php”文件运行phpunit,但得到了下面的错误/警告。我也降级到了stomp-2.0.0和stomp-2.0.1,但运气不好 StompTest.php <?php class StompTest extends \PHPUnit\Framework\TestCase { private $stomp;

上一页   1   2    3   4   5   6  ... 下一页 最后一页 共 16 页