acot の Reporter プラグインを作ってみる #1
acot というのは
puppeteer を使ったアクセシビリティテストフレームワークで、 ウェブサイトや Web アプリケーションに対してルールに基づいて機械的にチェックを行って結果をレポートしてくれます。 似たような目的を持ったツールは他にもあるようですが、静的解析ではなく、実際にブラウザに表示して AOM や DOM を使って検証を行うため、 マウスカーソルを要素にホバーしたときにどうなるかなど動的な検証が得意なのが特徴です。
ルールは ESLint のように extends
で拡張可能なので、自社のアクセシビリティガイドラインに基づいたルールを構築することもできますし、
まだガイドラインのようなものがなければ、acot のプリセットも使えるし、スモールスタートで小さなルールセットから始めることもできます。
さらに実行戦略である Runner や結果表示の Reporter などプラグイン機構によって様々な環境に適用できそうです。 例えば GitHub の PR ごとに GitHub Actions で実行して結果をコメントとして残すようにしたり、 本番環境に対して定期実行させて結果を Slack に流したりできそうです。
無限の可能性
ということで無限の可能性を秘めているのでプラグインを作ってみようと思います。