While many smart people here I believe said the most important things, I would like to add:
Do not accept "magical" behaviour.
I came across quite some projects which had Cypress E2E tests which were, according to the developers, "unstable".
So what is the magic part which makes it fail? There is no such thing as an instable test as such in a test environment, in this case it was a broken test with unmocked data which occasionally threw errors, depending on the OS and speed of the machine it was running on.
In another scenario the was a random number involved, which randomly chose a picture in the test development and depending wether it needed cropping or not, an additional popup would open.
I was told: "well, sometimes it works, sometimes it doesn't". Nobody actually investigated further, tests were excluded instead. Noone ever looked at the artifacts/screenshots/logs.
Always investigate, there is a reason for every "magical" behaviour.
Why isn’t 60 in French something like tres-vingt? French is a language full of exceptions which need to be memorised and which are rather random.
Excuse me but I understand vigesimal (base-20) like a potency. The French are not following through on that at all.
If you have a look at Mayan math you will understand how to do "proper" vigesimal.
With proper I mean that what we consider single digit numbers (0-9) which is a range of ten, to be the basis of single digits.
The Mayans actually could represent first twenty (0-19) as one "single digit".
Their idea of numbers was just much more composable than ours is.
I’ll try to give a short explanation:
There are three "words" which make Mayan numbers. A dot, a line and a shell.
The dot represents a one, the bar represents a five, the shell represents a zero.
5 dots make a line (similar to Roman)
One dot above one shell makes twenty. (1 * 20). Like we consider a one and a zero (10) to be greater than 9.
One dot above one shell above one shell makes 400 (1 * 20 * 20)
One dot above one dot above one dot makes 421 ((1 * 20 * 20) + (1 * 20) + (1 * 1))
Compared to the potency of this mathematical language the idea that French are using vigesimal is laughable, because they only denote their 80 like this.
It’s quite fascinating how logical and functional their math was, they were using the potency of zeros long before we Europeans discovered that.
Do not accept "magical" behaviour.
I came across quite some projects which had Cypress E2E tests which were, according to the developers, "unstable".
So what is the magic part which makes it fail? There is no such thing as an instable test as such in a test environment, in this case it was a broken test with unmocked data which occasionally threw errors, depending on the OS and speed of the machine it was running on.
In another scenario the was a random number involved, which randomly chose a picture in the test development and depending wether it needed cropping or not, an additional popup would open.
I was told: "well, sometimes it works, sometimes it doesn't". Nobody actually investigated further, tests were excluded instead. Noone ever looked at the artifacts/screenshots/logs.
Always investigate, there is a reason for every "magical" behaviour.