据我了解,开箱即用的Codeception会根据单位,功能或接受等类型将所有测试放在其中的一个文件夹中。对于大型项目,虽然很容易失控。我试图弄清楚如何建立这样的结构:
- functional
- Module1
- Applications
- ApplicationType1Cept.php
- ApplicationType2Cept.php
- Accounts
- AccountType1Cept.php
- AccountType2Cept.php
当我这样做时:
codecept.phar generate:cept functional AccountType1Cept
它会将新文件放在功能文件夹的根目录中。我尝试过这样的事情:
codecept.phar generate:cept functional/Module1/Applications AccountType1Cept
但这不起作用。我怀疑它与套件有关,但不确定。
如何在更有条理的结构中获得生成(和执行)测试的代码?
答案 0 :(得分:0)
我正在研究类似的东西,但在Windows上。 现在我使用Composer将Codeception安装为全局:
composer global require "codeception/codeception=2.0.*"
composer global require "codeception/specify=*"
composer global require "codeception/verify=*"
这允许我切换到像你这样的特定文件夹" / Module1 / Applications /"然后直接发出命令,例如:
a)设置测试目录:
codecept bootstrap
b)通过以下方式创建测试:
codecept generate:cept functional AccountType1Cept
如果您愿意,可以从主目录中进行,但是您首先要告诉Codeception这个名称,然后使用" -c"用于指示您要在后面的目录中执行命令的选项,然后是目标目录。在你的情况下(使用Linux),它将是:
codecept.phar generate:cept functional AccountType1Cept -c ~/Module1/Applications
但对我来说打字太多,只需切换到目标文件夹并在那里发出所有命令就更容易了: - )
更多信息: http://codeception.com/docs/07-AdvancedUsage#Running-from-different-folders
答案 1 :(得分:0)
我有类似的需求。 你需要做的是这样的事情:
codecept.phar generate:cept functional "Application\ApplicationType1Cept"
codecept.phar generate:cept functional "Account\AccountType1Cept"
这会在您想要的文件夹中创建测试文件,并将它们命名为。
答案 2 :(得分:0)
我这样做时没有任何特定的套件配置(版本3.1.2)。例如:如果您创建这样的目录结构:
codecept.phar run unit
将找到您的考试。