如何将StepObjects与Cests一起使用?

时间:2015-05-28 16:08:46

标签: codeception

如何使用带有Cest的StepObject?该文档仅提供带有Cept示例的StepObject。看来我需要用$ scenario实例化一个StepObject,但是提供测试的唯一参数是* Tester。

2 个答案:

答案 0 :(得分:2)

文档中的一点点:

  

Cest的每个公共方法(除了以_开头的那些方法)将作为测试执行,并将接收Actor类作为第一个参数, $ scenario变量作为第二个参数

您可以使用此$scenario参数在测试中创建一个StepObject,如下所示:

class AddTaskTest
{
    public function login(AcceptanceTester $I, $scenario)
    {
         $I = new AcceptanceTester\UserSteps($scenario);
         $I->login('test@example.com', 'password');
    }

    /**
     * @depends login
     */
    public function tryToAddATask(FunctionalTester $I)
    {
        /** Steps to create a task here after you've logged in **/
    }
}

答案 1 :(得分:0)

我尝试运行您给出的上述程序,输出显示为

Functional Tests (2) -------------------------
Before (suiteCest::before)
Scenario:
 PASSED

Try to test (suiteCest::tryToTest)
Scenario:
 PASSED

如果不打开浏览器,命令行会显示所有脚本都已通过。