コミュニティのハイライト: Ramona Schwering

Ramona Schwering はソフトウェア エンジニアであり、品質保証の経歴を持つ Google デベロッパー エキスパートです。

この投稿では、テストの自動化に関するブログシリーズの一部として、コミュニティ エキスパートを取り上げます。

Ramona Schwering 氏。

Ramona Schwering は、品質保証の経歴を持つソフトウェア エンジニアです。また、ウェブ技術の Google Developer Expert でもあります。Ramona さんはテストの自動化に情熱を注いでいます。また、カンファレンスでの講演記事の公開オープンソース プロジェクトへの貢献、ミートアップの企画など、公教育の取り組みを通じてテストの自動化に多大な貢献をしています。

Ramona Schwering 氏(VueJS Amsterdam)

Jecelyn: ウェブ開発とテストに至るまでの道のりはどうでしたか。

Ramona: 開発への道のりは、高校生の頃は、公開したいと思ったイラストの描画や制作に多くの時間を費やしていました。しかし、DeviantArt と Animexx 以外のものを使いたかったため、独自のウェブサイトを作成しました。それがきっかけで、ウェブ開発について学びました。その後、最初の仕事でテストの自動化に情熱を注ぐようになりました。人間の創造性と経験が必要なタスクに集中できるように、日常的なテストタスクをなくしたいと考えていました。

Jecelyn: テスト自動化ツールはたくさんあります。どうすればそれらすべてを学習したり、どれを選べばよいかわかるのでしょうか。

ラモーナ: いい質問ですね。まずは、多くの自動化フレームワークを試すのはよいことですが、一つひとつひとつ学ぶ必要は感じません。まずは小規模なプロジェクトから始めるか、小規模なテストを初めて記述して、フレームワークのエクスペリエンスや特徴が気に入るか確かめましょう。 要件に合うものを 1 つか 2 つ選んで決めてもかまいません。特定のフレームワークのデベロッパー エクスペリエンスが気に入ったかどうか試して選択するのが好きです。使いにくさを感じないか確かめようとしています。テストは習慣的に行うべきであり、余計な手間をかける必要はありません。もちろん、構築するプロジェクトとその要件にもよります。

Jecelyn: 多くの場合、テストはプロセスが終了するまで遅延します。たとえば、「まだ時間がない」などです。どう思いますか?

ラモナ: テストの作成には、特にテスト駆動開発を使用する場合には時間がかかります。ですが、テストはかなりの時間を消費するというのはよくある誤解です。テストに多くのメリットがある投資だと思っています。早期のフィードバックを得ることができるため、バグを早期に修正できるため、バグが蓄積されず、後の段階で修正するのに費用がかからないため、バグ修正の費用を抑えることができます。 加えて、自動化すればするほど、手動でテストする必要は少なくなりますが、プロジェクトの状況を大まかに把握することができます。ですから、私の意見ではその逆です。テストは時間を節約し、絶えず努力しなくても自信を与えてくれます。

Jecelyn: 会社でのテスト自動化の文化について教えてください。

Ramona: 私が働いているチームでは、テストは全員が一緒に責任を負っていると考えられています。「スピード重視」というプロセスを導入し、当初は Atlassian が導入しました このプロセスにより、テスターはセーフティ ネットとしてのみ機能し、pull リクエストにテストが必要かどうかを判断できます。そのため、テスターがすべてをこなすという考え方に依存することはできません。代わりに、デベロッパーとテスターは、コーチとしてデベロッパーにテスト方法を教える品質エンジニアのサポートを受けながら連携します。 デベロッパーが変更に必要なテストを作成し、品質エンジニアが必要と判断した場合は、後でそれらのテストを補完します。このアプローチにより、開発者と品質エンジニアの共感が高まり、責任を共有しながら協力できるようになりました。

Jecelyn: スピーチ、ライティング、オープンソースへの貢献など、非常に多くのコミュニティ アクティビティに参加されています。その時間とのバランスを取るにはどうすればよいでしょうか。

Ramona: 幸運なことに、雇用主は私の人前で話す仕事をサポートしています。つまり、カンファレンスに出席したり、講演のコンテンツを準備したりするために仕事を休む必要がないということです。ただし、自由時間の一部は公共の学習に充てていることを認める必要があります。 時間を効果的に管理するために、タイムボクシング戦略を採用しました。オープンソース プロジェクトへの貢献、記事の執筆、プレゼンテーションのリハーサルなどに毎日 2 時間、費やす時間です。この 2 時間の後は、十分な時間を確保するために休憩を取ることが重要です。 このアプローチが計画どおりにいかないこともありますが、おおむね、重要なタスクを無視することなく、仕事、コミュニティへの参加、私生活のバランスを取るのに役立っています。

Jecelyn: テストの自動化に取り掛かる前に、聞きたいアドバイスはありますか。

Ramona: 特定のソリューション フレームワークに対して偏りすぎないようにし、目の前の実際の問題を解決することよりも優先することが重要です。Google の最終的な目標はユーザーに最高の品質とユーザー エクスペリエンスを提供することです。そのためのフレームワークはどのようなものでもかまいません。したがって、フレームワーク戦争には関与しないことをおすすめします。テストのキャリアの始まりに、テストとテスト自動化の基礎を学ぶことから始め、必要な場合にのみフレームワークをツールとして使用することをお勧めします。

Jecelyn: どのようにテストの自動化とウェブ開発に対応できていますか?

Ramona: ニュース提供元やソーシャル メディアをチェックすることで、最新のトレンドや革新的なアイデアを常に把握できます。ただし、関連する情報を除外するのは難しい場合があるため、信頼できる情報源と個人に従うように心がけます。また、Twitter のリストやブックマークなどの機能を使用して、複数の情報源を統合しています。こちらはフォローしたニュース提供元のリストです。カンファレンスやミートアップに参加して最新情報を入手することで、講演から学び、他の参加者と会話をすることができます。