Bezdepbonusu7Программирование: статьи и ответы

Вопрос

Как я могу заставить Codeception выводить сравнения массивов в формате PHPUnit?

Автор вопроса: CJ DennisОтветов: 1

Когда я использую PHPUnit, и он терпит неудачу, потому что два массива не равны, он сравнивает каждый элемент в массивах по одному. Однако, когда я использую Codeception (который использует PHPUnit для своих модульных тестов), он показывает мне, что весь массив отличается, что менее полезно. Как я могу заставить Codeception выводить сравнение для массивов так же, как это делает PHPUnit? Кажется, в документации Codeception ничего об этом нет.

Дамп PHPUnit:

C:\server\Apache24\htdocs\localhost\public_html\codeception_vs_phpunit>phpunit tests\BasicTest.php
PHPUnit 4.3.4 by Sebastian Bergmann.

F

Time: 141 ms, Memory: 3.75Mb

There was 1 failure:

1) BasicTest::testFoo
Failed asserting that two arrays are equal.
--- Expected
+++ Actual
@@ @@
 Array (
     0 => 0
     1 => 1
     2 => 2
     3 => 3
-    4 => 4
+    4 => 42
     5 => 5
     6 => 6
     7 => 7
     8 => 8
     9 => 9
 )

C:\server\Apache24\htdocs\localhost\public_html\codeception_vs_phpunit\tests\BasicTest.php:33

FAILURES!
Tests: 1, Assertions: 1, Failures: 1.

Дамп кода:

C:\server\Apache24\htdocs\localhost\public_html\codeception_vs_phpunit>codecept run
Codeception PHP Testing Framework v2.2.1
Powered by PHPUnit 4.8.26 by Sebastian Bergmann and contributors.

Acceptance Tests (0) ---------------------------------------
------------------------------------------------------------

Functional Tests (0) ---------------------------------------
------------------------------------------------------------

Unit Tests (1) ---------------------------------------------
x BasicTest: Foo
------------------------------------------------------------


Time: 1.57 seconds, Memory: 11.00MB

There was 1 failure:

---------
1) BasicTest: Foo
 Test  tests\unit\BasicTest.php:testFoo
Failed asserting that two arrays are equal. ( -Expected | +Actual )
- Array (
-     0 => 0
-     1 => 1
-     2 => 2
-     3 => 3
-     4 => 4
-     5 => 5
-     6 => 6
-     7 => 7
-     8 => 8
-     9 => 9
- )
+ Array (
+     0 => 0
+     1 => 1
+     2 => 2
+     3 => 3
+     4 => 42
+     5 => 5
+     6 => 6
+     7 => 7
+     8 => 8
+     9 => 9
+ )

#1  C:\server\Apache24\htdocs\localhost\public_html\codeception_vs_phpunit\tests\unit\BasicTest.php:34
#2  BasicTest->testFoo
#3  C:\usr\bin\codecept.phar:7

FAILURES!
Tests: 1, Assertions: 1, Failures: 1.

phpunitcodeception

Ответы

Ответ 1 · Naktibalda

Обновление до Codeception 2.2.2

https://github.com/Codeception/Codeception/blob/2.2/CHANGELOG.md#222

  • Улучшенные сообщения о различиях в ошибках от @k0pernikus

Перевод вопроса и ответов сообщества Stack Overflow, лицензия CC BY-SA. Оригинал на Stack Overflow.

Похожие материалы