我已经测试了身份验证,这一切都很好;但是,当我想测试表单提交时,它会抛出以下错误:
‘ErrorException’,消息’Undefined variable:errors’
当我调试时,我发现没有为PHPunit定义视图变量$errors.我正在测试的表单被抽象为部分视图,以便从CREATE / UPDATE引用它,但事实证明PHPunit无法处理部分视图.
我在评论@include(‘vIEw.name’)形式时测试了它,我正在测试它通过它的视图.
我的问题是,是否有任何解决方法.如何测试具有部分视图的视图?
例外:
Caused byexception 'ErrorException' with message 'Undefined variable: errors' in /Users/***/Developpement/***/storage/framework/vIEws/36f0b5638ab33 be6eca70d4986f07ad2:2Stack trace:#0 /Users/***/Developpement/***/storage/framework/vIEws/36f0b5638ab33 be6eca70d4986f07ad2(2): Illuminate\Foundation\bootstrap\HandleExceptions->handleError(8,'Undefined varia...','/Users/***/D...',2,Array)#1 /Users/***/Developpement/***/vendor/laravel/framework/src/Illumina te/VIEw/Engines/PHPEngine.PHP(42): include('/Users/***/D...')#2 /Users/***/Developpement/***/vendor/laravel/framework/src/Illumina te/VIEw/Engines/CompilerEngine.PHP(58): *** minate\VIEw\Engines\PHPEngine->evaluatePath('/Users/***/D...',Array)#3 /Users/***/Developpement/***/vendor/laravel/framework/src/Illumina te/VIEw/VIEw.PHP(138): Illuminate\VIEw\Engines\CompilerEngine- >get('/Users/***/D...',Array)
父视图
<div > {!! Form::open(['route' => 'admin.festivals.create.post','enctype' => 'multipart/form-data']) !!} <legend>Create</legend> <div > <a href=" {{route('admin.festivals.List')}}">Home</a> </div> // HERE IS THE liNE WHEN I COMMENT IT IT WORKS {{--@include('admin.festivals._form')--}} {!! Form::submit('Create',['class' => 'btn btn-primary col-md-2']) !!} {!! Form::close() !!}</div>
局部视图
<div ><label for="start_date">Start Date</label><div > {!! Form::datepicker('start_date',(isset($festival)) ? $festival->start_date : null) !!} {!! $errors->first('start_date','<span >:message</span>') !!}</div>解决方法 除了使用isset()进行检查之外,没有其他解决方法.单元测试旨在测试后端,而不是表单.
从wikipedia开始:
In procedural programming,a unit Could be an entire module,but it is more commonly an indivIDual function or procedure. In object-orIEnted programming,a unit is often an entire interface,such as a class,but Could be an indivIDual method.
如果要测试表单和用户界面的行为,请使用前端测试框架,例如selenium.
总结以上是内存溢出为你收集整理的测试在Laravel中具有局部视图的表单时,Phpunit会抛出错误全部内容,希望文章能够帮你解决测试在Laravel中具有局部视图的表单时,Phpunit会抛出错误所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)