Lesson 13 - PHP testing - Creating Selenium acceptance tests
In the previous lesson, Introduction to acceptance tests in PHP and creating GUI, we prepared a web application that we're going to cover with acceptance tests today. To do it, we're going to use the Selenium test framework with chromedriver. The Selenium client is integrated in the Codeception PHP framework just like PHPUnit was. We've already installed it into the project, so nothing is stopping us from adding acceptance tests. Let's do it!
Cest. vs Cept
CodeCeption supports 2 formats for writing acceptance tests - "Cest" and "Cept".
They work similarly and the main difference is, that the first one is object-oriented and the second is procedural. Their default templates are as follows:
Cest
<?php class FormCest { public function _before(AcceptanceTester $I) { } public function _after(AcceptanceTester $I) { } // tests public function tryToTest(AcceptanceTester $I) { } }
As you can see, a "Cest" acceptance test, is very similar to a PHPUnit test. One class method per each test. We get the object with the available methods to control the browser as a method parameter. In addition, the methods which are called before and after each test are prepared there, as in unit tests.
Cept
<?php $I = new AcceptanceTester($scenario); $I->wantTo('perform actions and see result');
The "Cept" acceptance test code template seems to be
...End of the preview...
Continue further
You've come here and that's great! We believe that the first lessons showed you something new and useful
Do you want to continue the course? Go to the premium section.
Buy this course
Before buying this article, you have to buy the previous one
This article is licensed: Premium III, by buying this article, you agree with the terms of use.
- Unlimited and permanent access to individual lessons.
- High quality IT knowledge.
- Skills to help you get your dream and well-paid job.
Article description
Requested article covers this content:
In this tutorial, we'll cover a simple calculator in PHP with acceptance tests in the Codeception framework and run them using the Selenium server.
You gain credits by supporting our network. This is done by sending a helpful amount of money to support the site, or by creating content for the network.