This checks is data-test-id prop is present, on some tags which are useful for e2e testing
You’ll first need to install ESLint:
$ npm i eslint --save-dev
Next, install eslint-plugin-test-id
:
$ npm install eslint-plugin-test-id --save-dev
Add test-id
to the plugins section of your .eslintrc
configuration file. You can omit the eslint-plugin-
prefix:
{
"plugins": ["test-id"]
}
Then configure the rules you want to use under the rules section.
{
"rules": {
"test-id/data-test-id": "error"
}
}
This rule aims to…
Examples of incorrect code for this rule:
<input v-model="someModel">
Examples of correct code for this rule:
<input data-test-id="someUniqueString" v-model="someModel">
<template><custom v-model="test" /></template>
will fix to
<template><input data-test-id="test" v-model="test" /></template>
<template><input v-model="test.again.src" /></template>
will fix to
<template>
<custom data-test-id="test.again.src" v-model="test.again.src" />
</template>
<template><custom v-model="test.again" /></template>
will fix to
<template><custom data-test-id="test.again" v-model="test.again" /></template>
<template><custom v-model="test['again']" /></template>
will fix to
<template>
<custom data-test-id="test.again" v-model="test['again']" />
</template>
<template><custom v-model="test[5]" /></template>
will fix to
<template><custom data-test-id="test.5" v-model="test[5]" /></template>
<template><custom v-model="test[5]['val']" /></template>
will fix to
<template>
<custom data-test-id="test.5.val" v-model="test[5]['val']" />
</template>