В моем тесте phpunit я require_onceapi_key.php, который, конечно, у меня есть в моем .gitignore (он содержит мои собственные ключи api).
<?php
namespace Domoticzapi;
use PHPUnit\Framework\TestCase;
require_once('api_key.php');
class ClientTest extends TestCase {
}
Scrutinizer жалуется на
PHP Warning: require_once(api_key.php): failed to open stream: No such file or directory in /home/scrutinizer/build/tests/Domoticzapi/ClientTest.php on line 6
Как я могу исключить эту проверку? Или есть лучший подход (кроме переменных среды, которые я не хочу использовать)?
Я попробую ... Спасибо, на данный момент я исключил всю папку / test
Есть ли конкретная причина, по которой вам нужны ключи api в ваших тестовых примерах?
Протестируйте код, не выполняя реальных вызовов, используйте фикстуры, поэтому вам не понадобятся ключи.
@Devon, потому что api, который я когда-то использую, сломан / изменен. Так что тестируйте модуль, чтобы проверить правильность значений. Другой путь в моей голове. Можно ли использовать в Scrutinizer разные ClassTest? Не могу найти четкие документы. @ LawrenceCherone
Правильный путь - написать еще одну тестовую единицу. Но Scrutinizer хочет провести тест, который мне не нужен. Я действительно открыл более точный вопрос: stackoverflow.com/questions/50937828/…






AFAIK, вам нужно установить свою тестовую команду в конфигурационном файле scrutinizer-ci для запуска только необходимого вам теста или предоставить новую конфигурацию phpunit без набора, который содержит те тесты, для которых нужен api_key.php
обратитесь к этому: Как запустить определенный набор тестов phpunit xml?https://scrutinizer-ci.com/docs/build/running_tests_in_parallel
Я задал еще один вопрос, точнее, по твоему пути. Не могу достичь своей цели. См .: stackoverflow.com/questions/50937828/…
Если вы перешли на
include_once, он не подведет. (или не выйдет из строя из-заrequire, если вам все еще нужно что-то оттуда, позже выйдет из строя)