Skip to content

Commit b195677

Browse files
committed
MQE-2214: Part 1 Docs Annual Review
1 parent 8d98efa commit b195677

File tree

6 files changed

+43
-55
lines changed

6 files changed

+43
-55
lines changed

docs/configuration.md

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
# Configuration
22

33
The `*.env` file provides additional configuration for the Magento Functional Testing Framework (MFTF).
4-
To run the MFTF on your Magento instance, specify the basic configuration values.
4+
To run MFTF on your Magento instance, specify the basic configuration values.
55
Advanced users can create custom configurations based on requirements and environment.
66

77
## Basic configuration
88

9-
These basic configuration values are __required__ and must be set by the user before the MFTF can function correctly.
9+
These basic configuration values are __required__ and must be set by the user before MFTF can function correctly.
1010

1111
### MAGENTO_BASE_URL
1212

@@ -34,7 +34,7 @@ MAGENTO_BACKEND_NAME=admin_12346
3434

3535
### MAGENTO_BACKEND_BASE_URL
3636

37-
(Optional) If you are running the Admin Panel on separate a domain, specify this value:
37+
(Optional) If you are running the Admin Panel on a separate domain, specify this value:
3838

3939
Example:
4040

@@ -64,7 +64,7 @@ MAGENTO_ADMIN_PASSWORD=1234reTyt%$7
6464

6565
## Advanced configuration
6666

67-
Depending on the environment you use, you may need to configure the MFTF more precisely by setting more configuration parameters then for basic configuration.
67+
Depending on the environment you use, you may need to configure MFTF more precisely by setting additional configuration parameters.
6868
This section describes available configuration parameters and their default values (where applicable).
6969

7070
### DEFAULT_TIMEZONE
@@ -173,8 +173,8 @@ MAGENTO_RESTAPI_SERVER_PORT=5000
173173
### \*_BP
174174

175175
Settings to override base paths for the framework.
176-
You can use it when the MFTF is applied as a separate tool.
177-
For example, when you need to place the MFTF and the Magento codebase in separate projects.
176+
You can use it when MFTF is applied as a separate tool.
177+
For example, when you need to place MFTF and the Magento codebase in separate projects.
178178

179179
```conf
180180
MAGENTO_BP
@@ -227,7 +227,7 @@ TESTS_MODULE_PATH=~/magento2/dev/tests/acceptance/tests/functional/Magento/Funct
227227
### MODULE_ALLOWLIST
228228

229229
Use for a new module.
230-
When adding a new directory at `Magento/FunctionalTest`, add the directory name to `MODULE_ALLOWLIST` to enable the MFTF to process it.
230+
When adding a new directory at `Magento/FunctionalTest`, add the directory name to `MODULE_ALLOWLIST` to enable MFTF to process it.
231231

232232
Example:
233233

@@ -245,7 +245,7 @@ It points to `MAGENTO_BASE_URL` + `dev/tests/acceptance/utils/command.php`
245245
Modify the default value:
246246

247247
- for non-default Magento installation
248-
- when use a subdirectory in the `MAGENTO_BASE_URL`
248+
- when using a subdirectory in the `MAGENTO_BASE_URL`
249249

250250
Example: `dev/tests/acceptance/utils/command.php`
251251

docs/credentials.md

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -3,20 +3,20 @@
33
When you test functionality that involves external services such as UPS, FedEx, PayPal, or SignifyD,
44
use the MFTF credentials feature to hide sensitive [data][] like integration tokens and API keys.
55

6-
Currently the MFTF supports three types of credential storage:
6+
Currently MFTF supports three types of credential storage:
77

88
- **.credentials file**
99
- **HashiCorp Vault**
1010
- **AWS Secrets Manager**
1111

1212
## Configure File Storage
1313

14-
The MFTF creates a sample file for credentials during [initial setup][]: `magento2/dev/tests/acceptance/.credentials.example`.
14+
MFTF creates a sample file for credentials during [initial setup][]: `magento2/dev/tests/acceptance/.credentials.example`.
1515
The file contains an example list of keys for fields that can require credentials.
1616

1717
### Create `.credentials`
1818

19-
To make the MFTF process the file with credentials, in the command line, navigate to `magento2/dev/tests/acceptance/` and rename `.credentials.example` to `.credentials`.
19+
To make MFTF process the file with credentials, in the command line, navigate to `magento2/dev/tests/acceptance/` and rename `.credentials.example` to `.credentials`.
2020

2121
```bash
2222
cd dev/tests/acceptance/
@@ -78,7 +78,7 @@ vendor/my_awesome_service_token=rRVSVnh3cbDsVG39oTMz4A
7878
Hashicorp vault secures, stores, and tightly controls access to data in modern computing.
7979
It provides advanced data protection for your testing credentials.
8080

81-
The MFTF works with both `vault enterprise` and `vault open source` that use `KV Version 2` secret engine.
81+
MFTF works with both `vault enterprise` and `vault open source` that use `KV Version 2` secret engine.
8282

8383
### Install vault CLI
8484

@@ -92,11 +92,11 @@ Authenticate to vault server via the vault CLI tool: [Login Vault][Login Vault].
9292
vault login -method -path
9393
```
9494

95-
**Do not** use `-no-store` command option, as the MFTF will rely on the persisted token in the token helper (usually the local filesystem) for future API requests.
95+
**Do not** use `-no-store` command option, as MFTF will rely on the persisted token in the token helper (usually the local filesystem) for future API requests.
9696

9797
### Store secrets in vault
9898

99-
The MFTF uses the `KV Version 2` secret engine for secret storage.
99+
MFTF uses the `KV Version 2` secret engine for secret storage.
100100
More information for working with `KV Version 2` can be found in [Vault KV2][Vault KV2].
101101

102102
#### Secrets path and key convention
@@ -225,7 +225,7 @@ export CREDENTIAL_AWS_ACCOUNT_ID=<Your_12_Digits_AWS_Account_ID>
225225
## Configure multiple credential storage
226226

227227
It is possible and sometimes useful to setup and use multiple credential storage at the same time.
228-
In this case, the MFTF tests are able to read secret data at runtime from all storage options, in this case MFTF use the following precedence:
228+
In this case, the MFTF tests are able to read secret data at runtime from all storage options. MFTF will use the following precedence:
229229

230230
```
231231
.credentials File > HashiCorp Vault > AWS Secrets Manager
@@ -253,7 +253,7 @@ For example, to reference secret data in the [`fillField`][] action, use the `us
253253
## Implementation details
254254

255255
The generated tests do not contain credentials values.
256-
The MFTF dynamically retrieves, encrypts, and decrypts the sensitive data during test execution.
256+
MFTF dynamically retrieves, encrypts, and decrypts the sensitive data during test execution.
257257
Decrypted credentials do not appear in the console, error logs, or [test reports][].
258258
The decrypted values are only available in the `.credentials` file or within vault.
259259

@@ -277,4 +277,4 @@ The MFTF tests delivered with Magento application do not use credentials and do
277277
[`CREDENTIAL_AWS_SECRETS_MANAGER_PROFILE`]: configuration.md#credential_aws_secrets_manager_profile
278278
[`CREDENTIAL_AWS_SECRETS_MANAGER_REGION`]: configuration.md#credential_aws_secrets_manager_region
279279
[Key Management Service]: https://aws.amazon.com/kms/
280-
[Amazon Resource Name]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
280+
[Amazon Resource Name]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html

docs/data.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Input testing data
22

3-
The MFTF enables you to specify and use `<data>` entities defined in XML. Default `<data>` entities are provided for use and as templates for entity creation and manipulation.
3+
MFTF enables you to specify and use `<data>` entities defined in XML. Default `<data>` entities are provided for use and as templates for entity creation and manipulation.
44
The following diagram shows the XML structure of an MFTF data object:
55

66
![MFTF Data Object](img/data-dia.svg)
@@ -67,7 +67,7 @@ In this example:
6767
As of MFTF 2.3.6, you no longer need to differentiate between scopes (a test, a hook, or a suite) for persisted data when referencing it in tests.
6868
</div>
6969

70-
The MFTF now stores the persisted data and attempts to retrieve it using the combination of `stepKey` and the scope of where it has been called.
70+
MFTF now stores the persisted data and attempts to retrieve it using the combination of `stepKey` and the scope of where it has been called.
7171
The current scope is preferred, then widening to _test > hook > suite_ or _hook > test > suite_.
7272

7373
This emphasizes the practice for the `stepKey` of `createData` to be descriptive and unique, as a duplicated `stepKey` in both a `<test>` and `<before>` prefers the `<test>` data.

docs/extending.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -115,7 +115,7 @@ __Use case__: Create two similar tests where the second test contains two additi
115115
</tests>
116116
```
117117

118-
### Update a test annotation
118+
### Update a test before hook
119119

120120
__Use case__: Create two similar tests where the second one contains two additional actions in the `before` hook:
121121

docs/getting-started.md

Lines changed: 16 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
# Getting started
22

33
<div class="bs-callout bs-callout-info" markdown="1">
4-
[Find your MFTF version][] of the MFTF.
5-
The latest Magento 2.3.x release supports MFTF 2.5.3.
6-
The latest Magento 2.2.x release supports MFTF 2.4.5.
4+
[Find your version] of MFTF.
5+
The latest Magento 2.3.x release supports MFTF 2.6.4.
6+
The latest Magento 2.2.x release supports MFTF 2.5.3.
77
</div>
88

99
## Prepare environment {#prepare-environment}
@@ -64,7 +64,7 @@ A Selenium web driver cannot enter data to fields with WYSIWYG.
6464
To disable the WYSIWYG and enable the web driver to process these fields as simple text areas:
6565

6666
1. Log in to the Magento Admin as an administrator.
67-
2. Navigate to **Stores** > Settings > **Configuration** > **General** > **Content Management**.
67+
2. Navigate to **Stores** > **Settings** > **Configuration** > **General** > **Content Management**.
6868
3. In the WYSIWYG Options section set the **Enable WYSIWYG Editor** option to **Disabled Completely**.
6969
4. Click **Save Config**.
7070

@@ -88,7 +88,7 @@ When you want to test the WYSIWYG functionality, re-enable WYSIWYG in your test
8888

8989
To enable the **Admin Account Sharing** setting, to avoid unpredictable logout during a testing session, and disable the **Add Secret Key in URLs** setting, to open pages using direct URLs:
9090

91-
1. Navigate to **Stores** > Settings > **Configuration** > **Advanced** > **Admin** > **Security**.
91+
1. Navigate to **Stores** > **Settings** > **Configuration** > **Advanced** > **Admin** > **Security**.
9292
2. Set **Admin Account Sharing** to **Yes**.
9393
3. Set **Add Secret Key to URLs** to **No**.
9494
4. Click **Save Config**.
@@ -115,7 +115,7 @@ If the Magento instance under test has the [Magento Two-Factor Authentication (2
115115

116116
### Webserver configuration {#web-server-configuration}
117117

118-
The MFTF does not support executing CLI commands if your web server points to `<MAGE_ROOT_DIR>/pub` directory as recommended in the [Installation Guide][Installation Guide docroot]. For the MFTF to execute the CLI commands, the web server must point to the Magento root directory.
118+
MFTF does not support executing CLI commands if your web server points to `<MAGE_ROOT_DIR>/pub` directory as recommended in the [Installation Guide][Installation Guide docroot]. For MFTF to execute the CLI commands, the web server must point to the Magento root directory.
119119

120120
### Nginx settings {#nginx-settings}
121121

@@ -137,11 +137,11 @@ location ~* ^/dev/tests/acceptance/utils($|/) {
137137

138138
## Set up an embedded MFTF {#setup-framework}
139139

140-
This is the default setup of the MFTF that you would need to cover your Magento project with functional tests.
140+
This is the default setup of MFTF that you would need to cover your Magento project with functional tests.
141141
It installs the framework using an existing Composer dependency such as `magento/magento2-functional-testing-framework`.
142-
If you want to set up the MFTF as a standalone tool, refer to [Set up a standalone MFTF][].
142+
If you want to set up MFTF as a standalone tool, refer to [Set up a standalone MFTF][].
143143

144-
Install the MFTF.
144+
Install MFTF.
145145

146146
```bash
147147
composer install
@@ -204,7 +204,7 @@ Learn more about environmental settings in [Configuration][].
204204

205205
### Step 3. Enable the Magento CLI commands
206206

207-
In the Magento project root, run the following command to enable the MFTF to send Magento CLI commands to your Magento instance.
207+
In the Magento project root, run the following command to enable MFTF to send Magento CLI commands to your Magento instance.
208208

209209
```bash
210210
cp dev/tests/acceptance/.htaccess.sample dev/tests/acceptance/.htaccess
@@ -251,9 +251,7 @@ See more commands in [`mftf`][].
251251

252252
### Step 5. Generate reports {#reports}
253253

254-
During testing, the MFTF generates test reports in CLI.
255-
You can generate visual representations of the report data using [Allure Framework][].
256-
To view the reports in GUI:
254+
During testing, MFTF generates test reports in CLI. You can generate visual representations of the report data using the [Allure Framework][]. To view the reports in a GUI:
257255

258256
- [Install Allure][]
259257
- Run the tool to serve the artifacts in `dev/tests/acceptance/tests/_output/allure-results/`:
@@ -266,18 +264,16 @@ Learn more about Allure in the [official documentation][allure docs].
266264

267265
## Set up a standalone MFTF
268266

269-
The MFTF is a root level Magento dependency, but it is also available for use as a standalone application.
270-
You may want to use a standalone application when you develop for or contribute to MFTF, which facilitates debugging and tracking changes.
271-
These guidelines demonstrate how to set up and run Magento acceptance functional tests using standalone MFTF.
267+
MFTF is a root level Magento dependency, but it is also available for use as a standalone application. You may want to use a standalone application when you develop for or contribute to MFTF, which facilitates debugging and tracking changes. These guidelines demonstrate how to set up and run Magento acceptance functional tests using standalone MFTF.
272268

273269
### Prerequisites
274270

275271
This installation requires a local instance of the Magento application.
276-
The MFTF uses the [tests from Magento modules][mftf tests] as well as the `app/autoload.php` file.
272+
MFTF uses the [tests from Magento modules][mftf tests] as well as the `app/autoload.php` file.
277273

278274
### Step 1. Clone the MFTF repository
279275

280-
If you develop or contribute to the MFTF, it makes sense to clone your fork of the MFTF repository.
276+
If you develop or contribute to MFTF, it makes sense to clone your fork of the MFTF repository.
281277
For contribution guidelines, refer to the [Contribution Guidelines for the Magento Functional Testing Framework][contributing].
282278

283279
### Step 2. Install the MFTF
@@ -307,7 +303,7 @@ Create the `utils/` directory, if you didn't find it.
307303

308304
### Step 6. Remove the MFTF package dependency in Magento
309305

310-
The MFTF uses the Magento `app/autoload.php` file to read Magento modules.
306+
MFTF uses the Magento `app/autoload.php` file to read Magento modules.
311307
The MFTF dependency in Magento supersedes the standalone registered namespaces unless it is removed at a Composer level.
312308

313309
```bash
@@ -355,6 +351,6 @@ allure serve dev/tests/_output/allure-results/
355351
[selenium server]: https://www.seleniumhq.org/download/
356352
[Set up a standalone MFTF]: #set-up-a-standalone-mftf
357353
[test suite]: suite.html
358-
[Find your MFTF version]: introduction.html#find-your-mftf-version
354+
[Find your version]: introduction.html#find-your-mftf-version
359355
[Installation Guide docroot]: https://devdocs.magento.com/guides/v2.3/install-gde/tutorials/change-docroot-to-pub.html
360356
[Magento Two-Factor Authentication (2FA) extension]: https://devdocs.magento.com/guides/v2.3/security/two-factor-authentication.html

docs/introduction.md

Lines changed: 7 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -5,15 +5,15 @@ These are the docs for the latest MFTF release.
55
To find older documentation, please refer to the [docs folder] of your desired release in Github.
66
</div>
77

8-
[Find your MFTF version][] of the MFTF.
8+
[Find your version] of MFTF.
99

1010
The Magento Functional Testing Framework (MFTF) is a framework used to perform automated end-to-end functional testing.
1111

1212
## Goals
1313

1414
- To facilitate functional testing and minimize the effort it takes to perform regression testing.
15-
- Enable extension developers to provide the Functional Tests to offered extensions.
16-
- Ensuring a common standard of quality between Magento, Extension Developers and System Intergrators.
15+
- Enable extension developers to provide functional tests for their extensions.
16+
- Ensure a common standard of quality between Magento, extension developers and system integrators.
1717

1818
MFTF also focuses on
1919

@@ -31,7 +31,7 @@ MFTF also focuses on
3131

3232
## MFTF tests
3333

34-
The MFTF supports two different locations for storing the tests and test artifacts:
34+
MFTF supports two different locations for storing the tests and test artifacts:
3535

3636
- `<magento_root>/app/code/<vendor_name>/<module_name>/Test/Mftf/` is the location of local, customized tests.
3737
- `<magento_root>/vendor/<vendor_name>/<module_name>/Test/Mftf/` is location of tests provided by Magento and vendors.
@@ -40,7 +40,7 @@ If you installed Magento with Composer, please refer to `vendor/magento/<module_
4040

4141
### Directory Structure
4242

43-
The file structure under both of the both path cases is the same:
43+
The file structure under both cases is the same:
4444

4545
```tree
4646
Test
@@ -59,12 +59,6 @@ Test
5959
└── ...
6060
```
6161

62-
<div class="bs-callout bs-callout-info" markdown="1">
63-
64-
We are actively developing functional tests. Check out the [MFTF Test Migration][] repository.
65-
66-
</div>
67-
6862
## Use cases
6963

7064
- Contributor: changes the core behaviour, fixing the annoing bug.
@@ -130,7 +124,7 @@ codeception.dist.yml // Codeception configuration (generated while ru
130124

131125
## MFTF tests
132126

133-
The MFTF supports three different locations for storing the tests and test artifacts:
127+
MFTF supports three different locations for storing the tests and test artifacts:
134128
- `<magento_root>/app/code/<vendor_name>/<module_name>/Test/Mftf/` is the directory to create new tests.
135129
- `<magento_root>/vendor/<vendor_name>/<module_name>/Test/Mftf/` is the directory with the out of the box tests (fetched by the Composer).
136130
- `<magento_root>/dev/tests/acceptance/tests/functional/<vendor_name>/<module_name>/` is used to store tests that depend on multiple modules.
@@ -163,8 +157,6 @@ Follow the [MFTF project] and [contribute on Github].
163157

164158
<!-- Link definitions -->
165159
[contribute on Github]: https://github.com/magento/magento2-functional-testing-framework/blob/master/.github/CONTRIBUTING.md
166-
[Functional Testing Framework]: https://devdocs.magento.com/guides/v2.3/mtf/mtf_introduction.html
167160
[MFTF project]: https://github.com/magento/magento2-functional-testing-framework
168-
[Find your MFTF version]: #find-your-mftf-version
169-
[MFTF Test Migration]: https://github.com/magento/magento-functional-tests-migration
161+
[Find your version]: #find-your-mftf-version
170162
[docs folder]: https://github.com/magento/magento2-functional-testing-framework/tree/master/docs

0 commit comments

Comments
 (0)