in a custom module setup a directory structure as such: tests/src/Unit/SkeletonTest.php Call the test and the php file anything you like, then the file contains the following (this is a most basic test obviously):
Run all the tests for a module with
../vendor/phpunit/phpunit/phpunit -c core/ ./modules/custom/entity_sync/
<?php
// @TODO Add namespace
namespace Drupal\Tests\entity_sync\Unit;
use Drupal\Tests\UnitTestCase;
use Drupal\enity_sync;
/**
* Skeleton functional test.
*
* @group testing_examples
*/
class SkeletonTest extends UnitTestCase {
public function testOneEqualsOne() {
$this--->assertEquals(
1, 1
);
}
}
also this functional test works after in the core directory renaming phpunit.xml.dist to phpunit.xml and then it should look like what is described in this article: https://www.drupal.org/docs/8/testing/phpunit-in-drupal-8/running-phpun…
<?php
namespace Drupal\Tests\hello_world\Functional;
use Drupal\Tests\BrowserTestBase;
/**
* Test basic functionality of My Module.
*
* @group hello_world
*/
class BasicTestCase extends BrowserTestBase {
/**
* {@inheritdoc}
*/
public static $modules = [
// Module(s) for core functionality.
'node',
'views',
// This custom module.
'hello_world',
];
/**
* {@inheritdoc}
*/
protected function setUp() {
// Make sure to complete the normal setup steps first.
parent::setUp();
// Set the front page to "node".
\Drupal::configFactory()
->getEditable('system.site')
->set('page.front', '/node')
->save(TRUE);
}
/**
* Make sure the site still works. For now just check the front page.
*/
public function testTheSiteStillWorks() {
// Load the front page.
$this->drupalGet('/hello/world');
// Confirm that the site didn't throw a server error or something else.
//$this->assertSession()->statusCodeEquals(200);
// Confirm that the front page contains the standard text.
$this->assertText('Saying Hello World in Drupal 8 is cool!');
}
}