This is a helper project which allows you to add screeshot tests for your Detox tests using Applitools.
npm install detox-applitools-testing
Inside your Detox entry (usually index.js
file in e2e/index.js
) add following lines:
import {setup} from 'detox-applitools-testing';
before(async () => {
...
setup({
apiKey: 'EYES_API_KEY', //Your key from applitools,
appName: 'Your app Name',
batchId: 'Unique batch number, can simply be uuid.v4()',
serverUrl: 'applitools server url', //Optional, leave empty if not using custom server
branchName: 'YourBranchName', //Optional, run tests in specific branch. Learn more: https://help.applitools.com/hc/en-us/articles/360007528631-Branches
parentBranchName: 'YourParentBranchName', //Optional, compare tests against a specific baseline in a different branch. Learn more: https://help.applitools.com/hc/en-us/articles/360007528631-Branches
});
});
If you are using Jest, add this option to your Jest config to have faster global lookups (results in faster screenshot comparisons). Read more
"extraGlobals": ["Math"],
To use screenshot testing inside your tests:
import {testScreenshot} from 'detox-applitools-testing';
describe('...', await () => {
it('...', () => {
...
await testScreenshot('Unique test case');
});
});
await testScreenshot('NAME_OF_TEST', {
ignoredTopHeight : 44, // Optional, pixels from top to ignore
screenshotPath: 'YOUR_PATH', // Optional, by default screenshot is taken by Detox
});
By default testScreenshot cuts off top bar of the screenshot to hide the clock. You can disable it by using: testScreenshot('TEST_ID', {ignoredTopHeight: 0})
Contributions, issues and feature requests are welcome!
Feel free to check issues page.
This project is MIT licensed.