woo*_*ate 11 php unit-testing codeception
我正在使用Codeception进行一些API测试.我们的想法是确保每个API调用都返回所需格式的预期响应代码和JSON对象.
我遇到的问题是我需要使用不同的URL,具体取决于服务器localhost,测试服务器还是生产服务器.
我无法使用值,$_SERVER['SERVER_NAME']因为测试不是通过Web浏览器运行的.
在http://codeception.com/docs/07-AdvancedUsage#Environments中,他们解释了可以通过修改配置文件来设置某些环境.该文档没有解释如何修改配置文件以在您自己的单元测试中使用它.
我还想设置一些环境,如local,test,production然后,我的单元测试类里面,才知道什么URLs用.每个环境都有不同的URL.
我已经阅读了文档但我无法找到方法.
你知道如何实现我的需求吗?
hid*_*dro 11
确保您的代码版本至少为1.8,因为环境仅支持1.8.
下面是我们的代码设置api.suite.yml,使用PhpBrowser和REST模块指定,用于BDD和API测试:
...
env:
local:
modules:
config:
PhpBrowser:
url: http://local.example.com/
REST:
url: http://local.example.com/v1/
integration:
modules:
config:
PhpBrowser:
url: http://integration.example.com/
REST:
url: http://integration.example.com/v1/
staging:
modules:
config:
PhpBrowser:
url: http://staging.example.com/
REST:
url: http://staging.example.com/v1/
Run Code Online (Sandbox Code Playgroud)
运行codecept命令时,需要提供一个--env选项来指定测试应使用的环境.
| 归档时间: |
|
| 查看次数: |
3482 次 |
| 最近记录: |