E2Eテスト自動化トレンドの変遷
筆者はテスト自動化ツールを作る仕事にもう15年近く関わっていますが、これまでのトレンドを見ていくと、「非OSS(非オープンソースソフトウェア)の時代」「Seleniumの時代」「多極化の時代」の3つに分けられるように思います。
Selenium2が登場し本格的に普及していく2012年頃までは「非OSSの時代」と言えます。WindowsデスクトップアプリケーションがまだまだGUIシステム開発の主役だったこの時代、E2Eテストの自動化によく使われていたのは、QuickTest Professional(現UFT One)などの商用ツールや、UWSCなどのフリーウェア(ソースコードは非開示)でした。
2012年から2018年頃までは「Seleniumの時代」と言えます。E2Eテスト自動化の主役はブラウザテストとなり、オープンソースでクロスブラウザテストに適したSeleniumは多くのユーザーの支持を集め、Web技術の標準であるW3Cの規格にも採用されました。
Seleniumはプログラミング言語でスクリプトを記述する「コード型」のツールですが、Selenium IDEのような人間の操作を自動記録してスクリプトを生成するツールも用意されていました。
新たに様々なツールが普及してくる2018年頃からは、コード型とノーコード型がともに支持を集める「多極化の時代」と言えます。
まず「コード型」のツールでは、Cypress、Puppeteer、Playwrightなど、Seleniumの課題を克服した新たなブラウザテストのツールが登場しました。
また、プログラムを意識せずにテストを記述できる「ノーコード型」のツールも存在感を増し、MagicPod、mabl、Autifyなど、クラウドやAIなどの新しい技術を活用したツールが登場しました。
続いては、この「コード型」と「ノーコード型」の2つのトレンドについて、それぞれ詳しく見ていきます。