tfrommen / testable-code
2016年Nuremberg WordCamp上关于“如何(不)编写可测试代码”的演讲示例代码。
dev-master
2017-01-22 14:02 UTC
Requires
- php: >=5.4.0
Requires (Dev)
- antecedent/patchwork: 1.3.*
- brain/monkey: ^1.4.0
- mockery/mockery: ^0.9.7
- phpunit/phpunit: ~4.8|~5.1
- dev-master
- dev-php/insane-complexity
- dev-js/eval-expressions
- dev-php/creating-intermediary-objects
- dev-js/incomplete-initialization
- dev-php/calling-static-methods
- dev-js/breaking-the-law-of-demeter
- dev-php/using-unresettable-singletons
- dev-js/global-state
- dev-php/creating-real-objects-2
- dev-php/creating-real-objects
- dev-js/leaving-the-context
- dev-php/terminating-the-execution
- dev-js/no-feedback
This package is auto-updated.
Last update: 2024-09-15 15:10:03 UTC
README
此仓库包含2016年Nuremberg WordCamp相应演讲的示例代码。
单元测试示例
演讲的第一部分是关于单元测试。在简要总结之后,您可以查看几个单元测试示例。此仓库包括所展示的PHP单元测试的完整和完整文档版本,以及相应的JavaScript单元测试。
运行测试
您想亲自运行测试?请按以下步骤操作
JavaScript
为了运行JavaScript测试,您必须首先安装所需的npm包。
使用 Yarn
$ yarn && yarn run test
使用 npm
$ npm i && npm run test
PHP
为了运行PHP测试,您必须首先安装所需的Composer包。
$ composer install && vendor/bin/phpunit
不良实践
演讲的第二部分和主要内容是关于难以测试或根本无法测试的代码示例。与单元测试示例一样,此仓库还包含不良实践PHP代码和JavaScript代码示例。
仅展示不良(即难以测试)的代码并不会带来任何好处,因此此仓库还包含代码的改进版本。对于每个代码示例,您都可以找到相应的拉取请求。通过diff视图,您可以轻松比较原始代码和改进后的代码。
如果您愿意,可以分支此仓库,并尝试编写可能的测试。
更新日志
更新日志.
许可证
版权所有 (c) 2016 Thorsten Frommen
此代码根据MIT许可证授权。