基于PHP Laravel的示例:
class ServiceTest extends TestCase
{
public function testServiceExists()
{
$service = App::make('grid');
}
}
结果:
Sebastian Bergmann和贡献者的PHPUnit 5.5.4。
E 1 / 1(100%)
时间:123毫秒,内存:14.00MB
有1个错误:
1)ServiceTest :: testServiceExists ReflectionException:类网格 不存在
/home/supertrall/domains/md.local/laravel/vendor/laravel/framework/src/Illuminate/Container/Container.php:749 /home/supertrall/domains/md.local/laravel/vendor/laravel/framework/src/Illuminate/Container/Container.php:644 /home/supertrall/domains/md.local/laravel/vendor/laravel/framework/src/Illuminate/Foundation/Application.php:709 /home/supertrall/domains/md.local/laravel/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php:237 /home/supertrall/domains/md.local/laravel/tests/Grid/ServiceTest.php:20
错误!测试:1,断言:0,错误:1。
答案 0 :(得分:2)
在TDD中遇到这样的错误是件好事。这意味着您需要解决错误只是为了遇到另一个错误。
在TDD编码时,按wishful thinking进行编程。换句话说,在实现组件本身之前,您编写了一些使用组件的代码。这有助于发现您需要的功能和数据,并且通过此发现将引导您获得更简单实用的API。
尽管TDD概念不是很难学习,但是习惯TDD的测试优先开发方法既困难又耗时。您已走上正轨,只需阅读更多信息并进行更多测试即可熟悉该方法。
答案 1 :(得分:1)
你是正确的方式!
TDD是一种方法论。它需要一套学科,其中一个是红色,绿色,重构。它首先是编写测试,然后通过然后重构代码。是的,一个类应该存在也可能是一个测试!
有关at:
的一些信息