OpenServer + PHPUnit

Обсуждение общих вопросов связанных с программой
userfor
Сообщения: 2
Зарегистрирован:
31 мар 2013, 14:19

userfor » 28 сен 2013, 08:41

Simel писал(а):Здравствуйте, все делал как было сказанно выше. Пишу phpunit --v выдает ошибку.
Прилагаю изображение.Если есть знающий человек как это исправить, помогите. Если надо символический заплачу, тк давно уже не могу разобратся в чем может быть дело.
Консоль
Изображение
php.ini
Изображение
Присоединяюсь. Где искать проблему? Подскажите...
Аватара пользователя
Redee
Сообщения: 218
Зарегистрирован:
28 июн 2013, 15:43

Redee » 04 окт 2013, 20:19

ща проверимс )
с виду ошибка на лицо, как всегда вездесущая донастройка в pear на windows

чето сразу не прокатывает, посмотрю еще

одно из возможных решений юзать cygwin (юникс среда для виндовс)

пути надо по другому прописывать, немного поковыряю с php функциями для удобности (относительных универсальных путей подгрузки)

Добавлено спустя 30 минут 8 секунд:
такс продвигаемся, ушли с первой ошибки )
делаем так >
e:\OpenServer\modules\php\PHP-5.4.17\PEAR\PHPUnit\Autoload.php
/*
// оригинал > подгрузка для unix подобных систем
require_once 'File/Iterator/Autoload.php';
require_once 'PHP/CodeCoverage/Autoload.php';
require_once 'PHP/Timer/Autoload.php';
require_once 'PHPUnit/Framework/MockObject/Autoload.php';
require_once 'Text/Template/Autoload.php';
*/
// подгрузка для windows
require_once '/../File/Iterator/Autoload.php';
require_once '/../PHP/CodeCoverage/Autoload.php';
require_once '/../PHP/Timer/Autoload.php';
require_once '/../PHPUnit/Framework/MockObject/Autoload.php';
require_once '/../Text/Template/Autoload.php';
Добавлено спустя 1 минуту 15 секунд:
труляля очередная неверная подгрузка в другом пакете )))
доделаю через некоторое время )

Добавлено спустя 1 час 39 минут 10 секунд:
в e:\OpenServer\modules\php\PHP-5.4.17\PEAR\PHP\CodeCoverage\Autoload.php >
/*
// оригинал > подгрузка для unix подобных систем
require_once 'File/Iterator/Autoload.php';
require_once 'PHP/Token/Stream/Autoload.php';
require_once 'Text/Template/Autoload.php';
*/
// подгрузка для windows
require_once '/../../File/Iterator/Autoload.php';
require_once '/../../PHP/Token/Stream/Autoload.php';
require_once '/../../Text/Template/Autoload.php';
Добавлено спустя 15 минут 47 секунд:
возможно вылезет еще такого рода ошибки где-то и надо будет в соответ. местах поправить также по выше описанному принципу (/../ - перейти на уровень выше)
Изображение
Последний раз редактировалось Redee 07 окт 2013, 22:37, всего редактировалось 2 раза.
userfor
Сообщения: 2
Зарегистрирован:
31 мар 2013, 14:19

userfor » 06 окт 2013, 09:51

О, спасибо, попробую в ближайшее время.
Может pear и phpunit сразу установить в openserver, как в xampp?
Аватара пользователя
Redee
Сообщения: 218
Зарегистрирован:
28 июн 2013, 15:43

Redee » 06 окт 2013, 20:51

как по мне - это лишнее, кто-то использует, а многие НЕ используют
кому надо и будет юзать пускай по гайдам ставят и настраивают
так как эти плюшки делаются под юниксы (убунты, дебианы, майнты и т.д.), под форточки релизов нет
так что ставим и допиливаем, как бы нам этого не хотелось делать
Simel
Сообщения: 3
Зарегистрирован:
14 сен 2013, 21:25
Откуда: Europe

Simel » 06 окт 2013, 22:22

Большое человеческое спасибо! Все заработало.
PS. А вот при создание теста, используя SkeletonGenerator в NetBeans, выдает ошибку.
Ошибка
Warning: require(SebastianBergmann/PHPUnit/SkeletonGenerator/autoload.php): failed to open stream: No such file or directory in C:\OpenServer\modules\php\PHP-5.4.17\PEAR\phpunit-skelgen on line 41

Fatal error: require(): Failed opening required 'SebastianBergmann/PHPUnit/SkeletonGenerator/autoload.php' (include_path='.;C:\php\pear') in C:\OpenServer\modules\php\PHP-5.4.17\PEAR\phpunit-skelgen on line 41
Файл autoload.php находится в C:\OpenServer\modules\php\PHP-5.4.17\PEAR\pear\SebastianBergmann\PHPUnit\SkeletonGenerator\autoload.php

Autoload.php содержит в себе такие строки. Пробывал, как сказанно выше, к сожалению не вышло.
/* require_once 'ezc/Base/base.php'; */
require_once dirname(__FILE__) . '\..\..\..\ezc\Base\base.php';

spl_autoload_register(array('ezcBase', 'autoload'));

/* require_once 'Text/Template/Autoload.php'; */
require_once dirname(__FILE__) . '\..\..\..\Text\Template\Autoload.php';

spl_autoload_register(
    function($class) {
        static $classes = null;
        if ($classes === null) {
            $classes = array(
              'sebastianbergmann\\phpunit\\skeletongenerator\\abstractgenerator' => '/AbstractGenerator.php',
              'sebastianbergmann\\phpunit\\skeletongenerator\\classgenerator' => '/ClassGenerator.php',
              'sebastianbergmann\\phpunit\\skeletongenerator\\command' => '/Command.php',
              'sebastianbergmann\\phpunit\\skeletongenerator\\testgenerator' => '/TestGenerator.php',
              'sebastianbergmann\\phpunit\\skeletongenerator\\version' => '/Version.php'
            );
        }
        $cn = strtolower($class);
        if (isset($classes[$cn])) {
            require __DIR__ . $classes[$cn];
        }
    }
);
Не подскажите решение ?
Аватара пользователя
Redee
Сообщения: 218
Зарегистрирован:
28 июн 2013, 15:43

Redee » 07 окт 2013, 22:25

Пожалуйста :)
e:\OpenServer\modules\php\PHP-5.4.17\phpunit-skelgen >
	// оригинал
	// require 'SebastianBergmann/PHPUnit/SkeletonGenerator/autoload.php';
	// правка >
	require 'PEAR/SebastianBergmann/PHPUnit/SkeletonGenerator/autoload.php';
e:\OpenServer\modules\php\PHP-5.4.17\PEAR\SebastianBergmann\PHPUnit\SkeletonGenerator\autoload.php >
// оригинал
// require_once 'ezc/Base/base.php';
// правка >
require_once '/../../../ezc/Base/base.php';

spl_autoload_register(array('ezcBase', 'autoload'));

// оригинал
// require_once 'Text/Template/Autoload.php';
// правка >
require_once '/../../../Text/Template/Autoload.php';
Изображение
Simel
Сообщения: 3
Зарегистрирован:
14 сен 2013, 21:25
Откуда: Europe

Simel » 08 окт 2013, 22:25

Спасибо, все заработало. Будем изучать возможности phpunit :D
Аватара пользователя
Максим
Сообщения: 5392
Зарегистрирован:
11 дек 2010, 20:29
Контактная информация:

Максим » 01 ноя 2013, 20:17

Господи, какой ужас. Тему закрываю. В новой версии Open Server всё будет ставиться на дважды два, будут инструкции в Руководстве.
Закрыто