テスト

PlayWright を使ってE2Eテストを書いてみた

こんにちは。クロステック・オフィスの benishouga です。

この記事は「CRESCO Advent Calendar 2020」20日目の記事です。

今回は PlayWright というライブラリについて、調べる機会があったので、PlayWright とは?という説明を少しと、簡単な使い方として「ユーザー操作を記録してのコード生成」「マルチブラウザ向けの E2E テスト」を行ってみたいと思います。

今回使用した環境は、 Windows 10, Node.js v14.15.0, npm 6.14.8 となっています。

PlayWright とは

PlayWright とは Microsoft が中心になって開発する Node.js 上からブラウザを操作するためのライブラリです。

続きを読む

puppeteerで始めるブラウザ操作の自動化

この記事は『CRESCO Advent Calendar 2020』 19日目の記事です。

はじめに

こんにちは!

SEC(システムズエンジニアリングセンター)の odashima です。

昨年に引き続き、今年もアドベントカレンダーの執筆ができて嬉しいです。

(今年ももう残すところ僅かですね・・・。)

今年はブラウザの自動操作を行う機会が多く、中でも puppeteer というライブラリを使用することが一番多かったのでまとめてみます。

ブラウザ自動操作は特にテスト工程での工数削減に大きく貢献できる技術ですが、敷居が高いと思っていませんか?

今回は puppeteer で手軽にブラウザ操作の自動化を行ってみましょう!

続きを読む

テスト工程の改善への取り組み

こんにちは。サービスコンピテンシー統括部のあおやまです。

私は普段は、プロジェクトの技術サポートや開発プロセスの改善活動に従事しています。
また技術研究所での自身の過去成果であるフレームワークの現場適用支援やメンテナンスなども行っています。

今回は、複雑化・短納期化していくシステム開発、恒常的な人手不足などの課題への対応として、自身も携わってきたテスト自動化への取り組みについてお話させていただきます。

テスト自動化への取り組み

技術研究所では、2015年度から研究テーマの1つに「開発技術」を挙げており、
作業の自動化や開発業務に適用可能な技術の研究を行ってきました。

その中でも「テスト自動化」は重要なテーマとして取り掛かってきました。
「テスト自動化」に着眼した理由は以下の通りです。

  • テストケースの作成・実施などではパターン化された作業が多くを占めるため自動化と相性が良い
  • 網羅的なテストケースの作成・実施は工数が大きくなるため自動化による工数削減の恩恵が大きい

「テスト自動化」と一言で申し上げてもJUnit/Seleniumなどの手段の自動化など多種多様な自動化手段がありますが、弊社では主にテストケース(テストモジュール含む)作成の自動化を行ってきました。

続きを読む

どうしてもスタイリッシュにSeleniumテストしたかった

この記事は 『CRESCO Advent Calendar 2017』 12日目の記事です。

こんにちは。技術研究所の「310」です。
私は普段、自動テスト関連の活動をしています。主にSeleniumを使ったE2Eテストを手探りでやっています。
最初は動かすことや、安定性を高めることに必死でしたが、段々こなれてくると色んなことが気になってしまいます。
実はWebDriverによって方言があって、同じ内容のテストケースをブラウザ数分作ってみたり、テスト対象のブラウザ名をプロパティファイルに記述して実行して、また別のブラウザ名に書き換えて実行してみたり、定期的にWebDriverが更新されていないか人力クローリングしたり。(そこを自動化しないあたり)

それらも色々調べてみると、便利ツールが用意されていたりしたので、いっぺんに使ってしまおうと思いついた結果がこの記事です。
もっとスタイリッシュな方法があれば教えてください。

続きを読む

テストエンジニア様

こんにちは、技研の「310」です。

私の中でHOT(今更感はありますが)なワード「テストエンジニア」について書きます。
ここ数年でその存在感を強めつつあるテストエンジニア。(年収が高いとの噂もありますね)
テストエンジニアが必要とされる理由、そしてテストエンジニアに求められるスキルをご紹介します。

テスターとの違い

日本で「テスター」と言うと「テストオペレータ」の意味を持つことが多いです。
テストオペレータは、出来上がったテストケースを実際に行い、記録し、報告を行う人です。
それに対して「テストエンジニア」といえばその上位職にあたり、主にテスト計画・設計・評価・分析などを行う人です。他のエンジニアには開発に集中してもらい、「テスト・品質」に関するプロセスを肩代わりするというわけです。もちろん、テストを実際に行うテストエンジニアもいますが、厳密には意味が変わってくるようです。
ちなみに、海外ではテストオペレータを「エンジニア」ではなく「テクニシャン」と呼び、優秀なテストオペレータには高額な報酬を支払っているようです。
日本とは扱われ方もどこか違っていますね。

続きを読む

日本GUIDE/SHARE委員会(JGS)で発表した論文が受賞しました

こんにちは、技研の”むらたん”です。

日本IBM社が主催する「IBMユーザー研究会」に日本GUIDE/SHARE委員会というものがあります。
こちらは、特定のテーマについて、企業横断のワークグループを結成して1年間のテーマに関する研究を行い、研究成果を論文として発表する活動になっております。

JGS研究2016論文発表会にて、弊社社員の参加するワークグループが各賞を受賞しましたので、ご紹介いたします。

続きを読む

【テスト自動化#2】「テスト設計の自動化を支える技術」

はじめに

こんにちは、技研の「むらたん」です。

前回の投稿でテスト自動化に先駆けて、テストについて簡単に触れました。

「テスト自動化」と聞くと、人が手で行っている作業が自動化され、楽になり、品質も上がって幸せになれるような感覚を抱きがちですが、それは紛うことなき幻想であります。この手の話は各方面で語りつくされており、内容に目を通してみると、現時点では「こうすれば良い」という模範解答は無いということが見えてきます。
そして、しばらくはこの状態が続くことと思われます。

それが故に、
「我が社のテスト自動化事例」という形で各社の取り組みが紹介されたり、有償・無償を問わず、多様なテスト自動化ソフトが開発・販売されているのだと思います。

続きを読む

開発技術SIGの活動について

はじめまして、技術研究所(通称:技研)のむらたんです。
クレスコに入社してから1x年、Javaエンジニア、そして、プロジェクトマネージャとしてやってきましたが、今年度は技術研究所の所属となり、開発技術に関する研究を行っています。

2012年の技術研究所発足後から継続している活動の1つにSIG(Special Interest Group)活動があります。
Wikipedia調べによると、SIGとは、

「特定の興味ある事柄について、その道の専門家の考えを聞いたり、メンバー同士が互いに知識や情報を交換する場」

とあります。弊社では年度の始まりに事業部横断でメンバーを募集し、年度末の成果発表に向け、1~2週に一度、業務時間後に活動を行っています。
テーマは年度ごとに切り替え、時代に合わせて変化していますが、今年度のテーマは

  • 開発技術SIG
  • クラウドSIG
  • IoTSIG

となっています。私は「開発技術SIG」のリーダーということもあり、今回のエントリーでは、開発技術SIGの取り組みについて紹介させていただきます。

続きを読む