【2013考研初试时间PHPUnit初试】教程文章相关的互联网学习教程文章

使用PHPUnit测试Slim 3路由时,$response-> getBody()为空【代码】

我使用以下方法在我的PHPUnit测试中调度Slim应用程序的路径:protected function dispatch($path, $method='GET', $data=array()) {// Prepare a mock environment$env = Environment::mock(array('REQUEST_URI' => $path,'REQUEST_METHOD' => $method,));// Prepare request and response objects$uri = Uri::createFromEnvironment($env);$headers = Headers::createFromEnvironment($env);$cookies = [];$serverParams = $env->...

Laravel 5.2 – 为foreach()提供的参数无效 – 使用phpunit【代码】

使用phpunit命令测试我的应用程序时出现上述错误.public function testProductCreationFailsWhenNameNotProvided() {$product = factory(\App\Product::class)->make(['name' => '']);$this->post(route('api.products.store'), $product->jsonSerialize())->seeJson(['name' => ['The name field is required.']]) /*line 86*/->assertResponseStatus(422); }完整的错误报告在这里:There was 1 error: 1) ExampleTest::testProdu...

PHPUnit,测试“表现得像……”

我有一系列PHPUnit测试来验证类“A类”.我有另一个类,“B类”,它扩展了A类. 有没有一种很好的方法可以测试“B类通过A类测试”,换句话说“B类表现得像A类”而不重复测试代码? 我可以测试扩展(使用instanceof),但这似乎是一个误导性的测试.我关心它的行为类似于A类,而不是它扩展到A类,对吗?还是错了?解决方法:只需为类B扩展A类的PHPUnit测试用例即可.

将PHPUnit测试打包为PHAR存档?【代码】

是否可以将PHPUnit测试打包为PHAR存档,并使用phpunit运行它们? 我用以下脚本创建了一个.phar:<?php $cPhar = new Phar('mytests-archive.phar', 0); $cPhar->addFile('mytest.php');$sStub = <<<ENDSTUB #! /usr/bin/php <?php Phar::mapPhar('mytest-archive.phar'); require 'phar://mytests-archive.phar/mytest.php'; __HALT_COMPILER(); ENDSTUB;$cPhar->setStub($sStub); $cPhar->compressFiles(Phar::GZ); $cPhar->stopBu...

PhpUnit忽略其XML配置文件中的* some *指令

在每一步都使用PHPUnit开发lib时,一切都很好.然后我在网上推了这个lib并删除了该文件夹. 过了一会儿,我克隆了一个新的存储库实例来继续开发,在克隆项目的根文件夹中运行完全相同的PHPUnit二进制文件(通过Composer全局安装)(因此,有效地,复制了原始条件),并注意到即使PHPUnit读取文件夹内的配置(它说是这样),它忽略了一些值,即使用颜色和目标只有tests文件夹.相反,它确实运行了我所有的测试并且它们都是成功的,但它为PHPUnit二进制文...

PHPUnit:我如何模拟这个文件创建?【代码】

我想使用vfsstream模拟文件的创建class MyClass{public function createFile($dirPath){$name = time() . "-RT";$file = $dirPath . '/' . $name . '.tmp';fopen($file, "w+");if (file_exists($file)) {return $name . '.tmp';} else {return '';}} }但是当我尝试测试文件创建时:$filename = $myClass->createFile(vfsStream::url('/var/www/app/web/exported/folder'));我收到一个错误:failed to open stream: “org\bovigo\vf...

PHPUnit Selenium Server – 更好/自定义错误处理?【代码】

我有没有办法让PHPUnit在出错后继续?例如,我有一个大型测试套件(400个步骤),我宁愿如果说,找不到元素,它也不会阻止我的脚本继续运行.解决方法:有一种更好的方法可以做到这一点.您可以重载一个方法:runTest(),而不是重载每个断言*()方法.它适用于每个断言,并且可以捕获异常:abstract class AMyTestCase extends PHPUnit_Framework_TestCase {public function runTest(){try {parent::runTest();}catch ( MyCustomException $Exc ...

当单独运行时,PHPUnit报告同一测试的不同代码覆盖率%【代码】

首先,让我说我已经经历了Reaching 100% Code Coverage with PHPUnitSO以及How to get 100% Code Coverage with PHPUnitSO.我无法借助其中任何一个解决问题. 我的问题是,与运行整个测试套件时相比,PHPUnit在隔离运行时报告了相同测试的不同代码覆盖率%.因此,当我使用phpunit test / src / artax / UsesRequestTraitTest仅运行相关的特定测试时,我得到以下覆盖: 但是,如果我使用phpunit运行我的全套测试而没有指定特定的测试,我会收...

使用OS X Lion获取代码和phpunit在MAMP上工作【代码】

运行: > MAMP 2.0.5> PHP 5.3.6(与MAMP捆绑在一起)> Mac OS X Lion 10.7.2 我的目标是让Codeception测试框架在我的MAMP项目中工作和使用.我正在关注如何安装它的the instructions here. 梨安装并正常工作.我可以使用以下命令安装Codeception:$pear channel-discover codeception.com/pear $pear install codeception/Codeception在我尝试运行codecept命令时安装后,出现以下错误:Warning: require_once(Codeception/autoload.php...

为什么PHPUnit显示出一些不被覆盖的近似花括号?【代码】

我正在使用PHPUnit 3.6.7,PHP_CodeCoverage 1.1.1和Xdebug 2.1.2.当我让PHPUnit将我的代码覆盖率统计信息写入三叶草样式的XML文件时,它偶尔会显示一个紧密的大括号,因为它没有被测试覆盖. 我在网上看到很多关于PHPUnit何时“达到”接近大括号的讨论,但我不明白发生了什么的一般概念.例如,我在这里的一行没有覆盖:if (is_array($foo)) {foreach ($foo as $bar) {if (property_exists($bar, 'baz')) {return $bar;}} } // this lin...

麻烦包括PHPUnit【代码】

我想开始为我的代码编写测试,所以我使用以下命令安装了最新的PHPUnitwget http://pear.phpunit.de/get/phpunit.phar chmod +x phpunit.phar mv phpunit.phar /usr/local/bin/phpunithttp://phpunit.de/manual/3.8/en/installation.html 然后我将/usr/local/bin添加到我的php.ini include路径,看起来像这样 include_path =“.:/ Applications / MAMP / bin / php / php5.4.10 / lib / php:/usr/local/bin” 但是当我访问/my-app/t...

Selenium服务器 – PHPUnit无法连接【代码】

我试着为PHP Unit& amp; Selenium服务器.我有一个难以置信的问题,我不知道为什么. 我使用的是最新的Selenium stand服务器2.42.2.当我运行服务器时,它显示:root@test:/home/jakub# java -jar /usr/local/bin/selenium-server-standalone-2.42.2.jar Jun 30, 2014 4:32:53 PM org.openqa.grid.selenium.GridLauncher main INFO: Launching a standalone server 16:32:53.398 INFO - Java: Oracle Corporation 24.51-b03 16:32:53.39...

PHPUnit存根:来自map的默认返回值【代码】

我已经阅读了PHPUnit手册,通过以下示例,方法调用doSomething(‘a’,’b’,’c’)将返回d并且方法调用doSomething(‘e’,’f’,’g’ )将返回h.<?php require_once 'SomeClass.php';class StubTest extends PHPUnit_Framework_TestCase {public function testReturnValueMapStub(){// Create a stub for the SomeClass class.$stub = $this->getMockBuilder('SomeClass')->getMock();// Create a map of arguments to return values...

PhpStorm 2016.3.3没有找到PHPUnit 6.0的测试类.*【代码】

我想在PhpStorm中运行PHPUnit 6.0.*测试.但是当我想要执行单个类的测试时,它会向我显示以下错误:“未指定测试类或无效”.我用Composer加载了PHPUnit.这里是composer.json的内容:{"require": {"phpunit/phpunit": "6.0.0"} }在命令行中运行测试正在运行.输出:/usr/bin/php7.1 /path/to/project/vendor/phpunit/phpunit/phpunit --no-configuration MyTestTest /path/to/project/Tests/MyTestTest.php PHPUnit 6.0.0 by Sebastian...

phpunit – 假api响应或连接到服务的真实响应?

我在服务类中创建了一些方法,使用API?? POST请求通过Guzzle连接到外部服务/提供者. 我喜欢使用phpunit进行测试 – 我应该使用假的HTTP Json响应而不连接服务,还是应该连接到服务以获得服务的真实响应?解决方法:测试中的一个共同原则是“不要嘲笑你不拥有的东西”.模拟这些API调用会使您的测试不太可靠,并且会给您一种虚假的安全感,因为您可能会得到误报. 例如,当API意外地引入了重大更改时,您的测试将是绿色的,一旦您部署到生产中...

PHPUNIT - 相关标签