Ошибка говорит все:
System.InvalidOperationException : unknown error: call function result missing 'value'
(Session info: chrome=65.0.3325.146)
(Driver info: chromedriver=2.33.506120
Ошибка явно жалуется на InvalidOperationException
. Основная проблема - совместимость версий между используемыми вами двоичными файлами следующим образом:
Поддерживает Chrome v60-62
- Вы используете chrome = 65.0
- Release Заметки ChromeDriver v2.37 ясно упоминают следующее:
Поддерживает Chrome v64-66
- Ваша версия Selenium Client нам неизвестна.
Таким образом, существует явное несоответствие между версией ChromeDriver ( v2 .33 ) и версия браузера Chrome ( v65.0 )
Решение
- Обновление Селен до уровней тока Версия 3.11.0 .
- Upgr ade ChromeDriver до Уровень ChromeDriver v2.37 .
- Храните версию Chrome между Chrome v64.x- 66.x . ( в соответствии с примечаниями к выпуску ChromeDriver v2.37 )
- Очистите ваше рабочее пространство Project через вашу IDE g20] и Восстановите ваш проект только с необходимыми зависимостями.
- Используйте инструмент CCleaner , чтобы стереть все операции с ОС до и после выполнения вашего test Suite .
- Если ваша версия Web Browser / Web Client слишком стар, то удалите ее с помощью Revo Uninstaller и установите последнюю версию GA и версию Web Browser / Web Client .
- Выполните свой
@Test
.
Просто откройте и закройте теги php: <?php $style = '...'; ?>
Рецепты Laravel предлагают простой, но эффективный способ сделать это, не включая теги php
{{--*/ $var = 'test' /*--}}
{{- -}} работает как комментарий к лезвию / и / возвращает эффект комментария в результате
<?php $var = 'test' ?>
Проблема в том, что она длиннее, чем теги php: - (
Следующий новый NewBladeCompiler будет использовать @{ }}
для принятия всех php-кодов, таких как назначение переменной, объявление класса и т. д., например. @{ $variable = 0; }}
будет скомпилирован в <?php $variable=0; ?>
<?php
use Illuminate\View\Compilers\BladeCompiler;
class NewBladeCompiler extends BladeCompiler
{
/**
* Get the echo methods in the proper order for compilation.
*
* @return array
*/
function getEchoMethods()
{
$methods = [
'compileRawEchos' => strlen(stripcslashes($this->rawTags[0])),
'compileEscapedEchos' => strlen(stripcslashes($this->escapedTags[0])),
'compileRegularEchos' => strlen(stripcslashes($this->contentTags[0])),
'compilePhpEchos' => strlen(stripcslashes("@{"))
];
uksort($methods, function ($method1, $method2) use ($methods) {
// Ensure the longest tags are processed first
if( $methods[$method1] > $methods[$method2] )
{
return -1;
}
if( $methods[$method1] < $methods[$method2] )
{
return 1;
}
// Otherwise give preference to raw tags (assuming they've overridden)
if( $method1 === 'compilePhpEchos' )
{
return -1;
}
if( $method2 === 'compilePhpEchos' )
{
return 1;
}
if( $method1 === 'compileRawEchos' )
{
return -1;
}
if( $method2 === 'compileRawEchos' )
{
return 1;
}
if( $method1 === 'compileEscapedEchos' )
{
return -1;
}
if( $method2 === 'compileEscapedEchos' )
{
return 1;
}
});
return $methods;
}
function compilePhpEchos( $value )
{
$pattern = sprintf('/(@)?%s\s*(.+?)\s*%s(\r?\n)?/s', "@{", "}}");
$callback = function ($matches) {
$whitespace = empty($matches[3]) ? '' : $matches[3] . $matches[3];
return $matches[1] ? substr($matches[0], 1) : '<?php ' . $matches[2] . ' ?>' . $whitespace;
};
return preg_replace_callback($pattern, $callback, $value);
}
}
?>