Any one who test locally would benefit from it, because many components such as external APIs (Google Cloud platform, etc.) requires a fully qualified domain name (fqdn). Also, it is difficult to get a signed certificate for a non fqdn. Browsers (Chrome in particular) do not accept self-signed certificate. Changing the site url at every new install is not convenient. My first idea was to replace, in the committed files, in acceptance.suite.yml
, the url
URL: "https://web:443"
by
URL: '%SITE_URL%'
and set the value of SITE_URL' in the committed environment file
.env.test`:
SITE_URL=https://web:443
The idea of this standard approach is that these committed files contain defaults that perhaps many applications currently depend upon and the proposed modifications will not break these
applications, because the site url is not changed. Yet, every one could then set a different value for SITE_URL
locally in .env.test.local
.
Unfortunately, this standard approach is not available, because the committed configuration of codeception in Mautic, i,e., codeception.yml
, directly depends on the local file .env.test.local
. The code even throws an exception if that local file does not exists. Because this approach does not use .env.test
, it does not allow to set a committed value for the test site url, which every one could then change locally. At every installation, one has to change its hard coded value in acceptance.suite.yml
.
I understand that perhaps changing the committed hard code value of the test site URL can lead to backward compatibility breaks. Yet, unless the approach used to configure codeception is made more flexible, I suggest it, because a non fqdn domain is problematic.