and business happy ▰ technical and process debt elimination Believe that: ▰ Any problem must be solved at the right level ▰ Software is easy. People are hard ▰ A problem should be highlighted, an idea should be "sold", a solution should be demonstrated Links: Site GitHub Twitter Facebook 2
return -1 when the value is not present', function() { // arrange const arr = [1,2,3]; const el = 4; // act const index = arr.indexOf(el); // assert assert.equal(-1, index); }); }); });
as they are slow. ▰ All of these including setup, the actual test and tear down should execute really fast (milliseconds) as you may have thousands of tests in your entire project. run tests in parallel with ava or jest using mock and stabs Fast 23
in the environment/instance in which it is running. ▰ Deterministic results - should yield the same results every time and at every location where they run. ▰ No dependency on date/time or random functions output. ▰ Each test should setup or arrange it's own data. Repeatable 26
aims to enforce a consistent location for an arrow function containing an implicit return. Autofixable Rules ▰ sort-vars. At present, it will only sort variables with no initial value or a literal initial value, in order to avoid potentially changing the order of function calls.
▰ Focus on UX, not on UI ▰ Mark your elements for better tests ▻ We use data-e2e attribute for that. ▰ Angular has e2e ready framework protractortest.org