Skip to content
Snippets Groups Projects
Commit 80eea403 authored by Vadim Justus's avatar Vadim Justus
Browse files

TDMET-5 Introduce automated testing with TD internal CI system

parent 3ff3ea2d
Branches
Tags
1 merge request!42TDMET-5 Introduce automated testing with TD internal CI system
Pipeline #20005 failed
include:
- remote: 'https://gitlab.met.tdintern.de/met-public/gitlab-ci-templates/-/raw/master/module/stages.yml'
- remote: 'https://gitlab.met.tdintern.de/met-public/gitlab-ci-templates/-/raw/master/module/merge-request/2.4.4/static-tests.yml'
- remote: 'https://gitlab.met.tdintern.de/met-public/gitlab-ci-templates/-/raw/master/module/merge-request/2.4.4/unit-tests.yml'
- remote: 'https://gitlab.met.tdintern.de/met-public/gitlab-ci-templates/-/raw/master/module/merge-request/2.4.4/integration-tests.yml'
- remote: 'https://gitlab.met.tdintern.de/met-public/gitlab-ci-templates/-/raw/master/module/merge-request/2.4.4/semver-tests.yml'
- remote: 'https://gitlab.met.tdintern.de/met-public/gitlab-ci-templates/-/raw/master/module/nightly-build/2.4/unit-tests.yml'
- remote: 'https://gitlab.met.tdintern.de/met-public/gitlab-ci-templates/-/raw/master/module/nightly-build/2.4/static-tests.yml'
- remote: 'https://gitlab.met.tdintern.de/met-public/gitlab-ci-templates/-/raw/master/module/nightly-build/2.4/integration-tests.yml'
#variables:
# SEMVER_ALLOWED_CHANGE_LEVEL: 3
addons:
apt:
sources:
- mysql-8.0-trusty
packages:
- mysql-server
- mysql-client
- rabbitmq-server
services:
- mysql
- rabbitmq
- elasticsearch
language: php
php:
- 7.4
- 8.1
env:
matrix:
- MAGENTO_VERSION=2.4
before_install:
- composer self-update --1
- git clone --depth=50 --branch=$MAGENTO_VERSION https://github.com/magento/magento2.git /tmp/magento
- mysql -uroot -e 'SET @@global.sql_mode = NO_ENGINE_SUBSTITUTION; CREATE DATABASE magento_integration_tests;'
- mv $(pwd)/install-config-mysql.travis.$MAGENTO_VERSION.php /tmp/magento/dev/tests/integration/etc/install-config-mysql.php
- mkdir -p /tmp/magento/app/code/Firegento
- cp -R $(pwd) /tmp/magento/app/code/Firegento/ContentProvisioning
install:
- cd /tmp/magento
- composer install --no-interaction
- composer require --dev mikey179/vfsstream
script:
- php /tmp/magento/vendor/bin/phpunit -c /tmp/magento/app/code/Firegento/ContentProvisioning/Test/Integration/phpunit.travis.xml
...@@ -2,16 +2,11 @@ ...@@ -2,16 +2,11 @@
This module was developed during a Magento Hackathon organized by FireGento e.V. (https://firegento.com/). This module was developed during a Magento Hackathon organized by FireGento e.V. (https://firegento.com/).
## Supported versions matrix > **ℹ️ Maintenance**
>
Only the latest patch versions of the following Magento versions are covered by test automation. > This module is maintained by [TechDivision](https://www.techdivision.com/). Therefore, there we created a mirror repository, which allow us
> to run automated quality checks on our internal infrastructure for this module. Please see https://gitlab.met.tdintern.de/techdivision-public/m2-content-provisioning
### "develop" branch > for details. Please feel free to contact us, if you have questions regarding the repository structure or mirroring.
| PHP | Magento 2.4 |
|:---: |:---:|
| 7.4 | [![Build Status](https://travis-matrix-badges.herokuapp.com/repos/magento-hackathon/m2-content-provisioning/branches/develop/1)](https://travis-ci.org/magento-hackathon/m2-content-provisioning) |
| 8.1 | [![Build Status](https://travis-matrix-badges.herokuapp.com/repos/magento-hackathon/m2-content-provisioning/branches/develop/2)](https://travis-ci.org/magento-hackathon/m2-content-provisioning) |
## The idea behind this module ## The idea behind this module
......
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<!--
/**
* Copyright (c) 2022 TechDivision GmbH
* All rights reserved
*
* This product includes proprietary software developed at TechDivision GmbH, Germany
* For more information see http://www.techdivision.com/
*
* To obtain a valid license for using this software please contact us at
* license@techdivision.com
*
* @copyright Copyright (c) 2022 TechDivision GmbH (http://www.techdivision.com)
* @author Vadim Justus <v.justus@techdivision.com>
* @link http://www.techdivision.com/
*/
-->
<phpunit xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" <phpunit xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="http://schema.phpunit.de/6.2/phpunit.xsd" xsi:noNamespaceSchemaLocation="http://schema.phpunit.de/9.5/phpunit.xsd"
colors="true" colors="true"
columns="max" columns="max"
beStrictAboutTestsThatDoNotTestAnything="false" beStrictAboutTestsThatDoNotTestAnything="false"
...@@ -26,7 +42,7 @@ ...@@ -26,7 +42,7 @@
<!-- Semicolon-separated 'glob' patterns, that match global XML configuration files --> <!-- Semicolon-separated 'glob' patterns, that match global XML configuration files -->
<const name="TESTS_GLOBAL_CONFIG_DIR" value="../../../app/etc"/> <const name="TESTS_GLOBAL_CONFIG_DIR" value="../../../app/etc"/>
<!-- Whether to cleanup the application before running tests or not --> <!-- Whether to cleanup the application before running tests or not -->
<const name="TESTS_CLEANUP" value="disabled"/> <const name="TESTS_CLEANUP" value="enabled"/>
<!-- Memory usage and estimated leaks thresholds --> <!-- Memory usage and estimated leaks thresholds -->
<!--<const name="TESTS_MEM_USAGE_LIMIT" value="1024M"/>--> <!--<const name="TESTS_MEM_USAGE_LIMIT" value="1024M"/>-->
<const name="TESTS_MEM_LEAK_LIMIT" value=""/> <const name="TESTS_MEM_LEAK_LIMIT" value=""/>
......
<?xml version="1.0" encoding="UTF-8"?>
<phpunit xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="http://schema.phpunit.de/6.2/phpunit.xsd"
colors="true"
columns="max"
beStrictAboutTestsThatDoNotTestAnything="false"
bootstrap="/tmp/magento/dev/tests/integration/framework/bootstrap.php"
stderr="true"
>
<!-- Test suites definition -->
<testsuites>
<testsuite name="Magento Integration Tests">
<directory suffix="Test.php">.</directory>
</testsuite>
</testsuites>
<!-- PHP INI settings and constants definition -->
<php>
<includePath>.</includePath>
<includePath>/tmp/magento/dev/tests/integration/</includePath>
<ini name="date.timezone" value="America/Los_Angeles"/>
<ini name="xdebug.max_nesting_level" value="200"/>
<!-- Local XML configuration file ('.dist' extension will be added, if the specified file doesn't exist) -->
<const name="TESTS_INSTALL_CONFIG_FILE" value="etc/install-config-mysql.php"/>
<!-- Local XML configuration file ('.dist' extension will be added, if the specified file doesn't exist) -->
<const name="TESTS_GLOBAL_CONFIG_FILE" value="etc/config-global.php"/>
<!-- Semicolon-separated 'glob' patterns, that match global XML configuration files -->
<const name="TESTS_GLOBAL_CONFIG_DIR" value="../../../app/etc"/>
<!-- Whether to cleanup the application before running tests or not -->
<const name="TESTS_CLEANUP" value="enabled"/>
<!-- Memory usage and estimated leaks thresholds -->
<!--<const name="TESTS_MEM_USAGE_LIMIT" value="1024M"/>-->
<const name="TESTS_MEM_LEAK_LIMIT" value=""/>
<!-- Path to Percona Toolkit bin directory -->
<!--<const name="PERCONA_TOOLKIT_BIN_DIR" value=""/>-->
<!-- CSV Profiler Output file -->
<!--<const name="TESTS_PROFILER_FILE" value="profiler.csv"/>-->
<!-- Bamboo compatible CSV Profiler Output file name -->
<!--<const name="TESTS_BAMBOO_PROFILER_FILE" value="profiler.csv"/>-->
<!-- Metrics for Bamboo Profiler Output in PHP file that returns array -->
<!--<const name="TESTS_BAMBOO_PROFILER_METRICS_FILE" value="../../build/profiler_metrics.php"/>-->
<!-- Whether to output all CLI commands executed by the bootstrap and tests -->
<const name="TESTS_EXTRA_VERBOSE_LOG" value="1"/>
<!-- Magento mode for tests execution. Possible values are "default", "developer" and "production". -->
<const name="TESTS_MAGENTO_MODE" value="developer"/>
<!-- Minimum error log level to listen for. Possible values: -1 ignore all errors, and level constants form http://tools.ietf.org/html/rfc5424 standard -->
<const name="TESTS_ERROR_LOG_LISTENER_LEVEL" value="-1"/>
<!-- Connection parameters for MongoDB library tests -->
<!--<const name="MONGODB_CONNECTION_STRING" value="mongodb://localhost:27017"/>-->
<!--<const name="MONGODB_DATABASE_NAME" value="magento_integration_tests"/>-->
</php>
<!-- Test listeners -->
<listeners>
<listener class="Magento\TestFramework\Event\PhpUnit"/>
<listener class="Magento\TestFramework\ErrorLog\Listener"/>
</listeners>
</phpunit>
<?xml version="1.0" encoding="UTF-8"?>
<phpunit xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="http://schema.phpunit.de/6.2/phpunit.xsd"
colors="true"
columns="max"
beStrictAboutTestsThatDoNotTestAnything="false"
bootstrap="../../../../../dev/tests/integration/framework/bootstrap.php"
stderr="true"
>
<!-- Test suites definition -->
<testsuites>
<testsuite name="Magento Integration Tests">
<directory suffix="Test.php">.</directory>
</testsuite>
</testsuites>
<!-- PHP INI settings and constants definition -->
<php>
<includePath>.</includePath>
<includePath>../../../../../dev/tests/integration/</includePath>
<ini name="date.timezone" value="America/Los_Angeles"/>
<ini name="xdebug.max_nesting_level" value="200"/>
<!-- Local XML configuration file ('.dist' extension will be added, if the specified file doesn't exist) -->
<const name="TESTS_INSTALL_CONFIG_FILE" value="etc/install-config-mysql.php"/>
<!-- Local XML configuration file ('.dist' extension will be added, if the specified file doesn't exist) -->
<const name="TESTS_GLOBAL_CONFIG_FILE" value="etc/config-global.php"/>
<!-- Semicolon-separated 'glob' patterns, that match global XML configuration files -->
<const name="TESTS_GLOBAL_CONFIG_DIR" value="../../../app/etc"/>
<!-- Whether to cleanup the application before running tests or not -->
<const name="TESTS_CLEANUP" value="disabled"/>
<!-- Memory usage and estimated leaks thresholds -->
<!--<const name="TESTS_MEM_USAGE_LIMIT" value="1024M"/>-->
<const name="TESTS_MEM_LEAK_LIMIT" value=""/>
<!-- Path to Percona Toolkit bin directory -->
<!--<const name="PERCONA_TOOLKIT_BIN_DIR" value=""/>-->
<!-- CSV Profiler Output file -->
<!--<const name="TESTS_PROFILER_FILE" value="profiler.csv"/>-->
<!-- Bamboo compatible CSV Profiler Output file name -->
<!--<const name="TESTS_BAMBOO_PROFILER_FILE" value="profiler.csv"/>-->
<!-- Metrics for Bamboo Profiler Output in PHP file that returns array -->
<!--<const name="TESTS_BAMBOO_PROFILER_METRICS_FILE" value="../../build/profiler_metrics.php"/>-->
<!-- Whether to output all CLI commands executed by the bootstrap and tests -->
<const name="TESTS_EXTRA_VERBOSE_LOG" value="1"/>
<!-- Magento mode for tests execution. Possible values are "default", "developer" and "production". -->
<const name="TESTS_MAGENTO_MODE" value="developer"/>
<!-- Minimum error log level to listen for. Possible values: -1 ignore all errors, and level constants form http://tools.ietf.org/html/rfc5424 standard -->
<const name="TESTS_ERROR_LOG_LISTENER_LEVEL" value="-1"/>
<!-- Connection parameters for MongoDB library tests -->
<!--<const name="MONGODB_CONNECTION_STRING" value="mongodb://localhost:27017"/>-->
<!--<const name="MONGODB_DATABASE_NAME" value="magento_integration_tests"/>-->
</php>
<!-- Test listeners -->
<listeners>
<listener class="Magento\TestFramework\Event\PhpUnit"/>
<listener class="Magento\TestFramework\ErrorLog\Listener"/>
</listeners>
</phpunit>
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please to comment