今週(1月23日)でDrivemode Inc.の東京オフィスで働き始めてちょうど1年になるので、現状の整理として現在やっている業務と今後やっていきたいことについて書きます。
tl;dr
今の仕事をするようになってから「QAテスターの仕事とはなんぞや」と読んだり考えたりしたんですけど、とりあえず「QAエンジニア」や「テストエンジニア」「テスター」の業務範囲や待遇は会社やチームによって全く違うということを実感しました。
例えばテストコードを書いてCI/CD環境まで構築する開発者寄りの人から、ひたすらプロダクトを触り続けてバグを探す作業をする人もいるけど、「QAエンジニア」というときには前者、「テスター」というときには後者をイメージされることが多い気がします。
現在の職場ではテスト自動化を担当しているエンジニアは他にいて、私自身は手動のブラックボックステストを担当しているので後者に近いです。
上の画像は社内LTをしようとして作るだけ作ったスライドからの引用で、元々今のポジションの求人票の募集要件は
- Androidアプリの動作確認担当者
- 基本的なPC作業ができること
- 英語でドキュメントを読んだり不具合を報告したりできること
- 運転免許を持ってるとなおよし
- ソフトウェアテストの経験があるとなおよし
という感じでしたが、結果的にこれまでのソフトウェア開発・HTMLマークアップの経験を生かして仕事をさせてもらっているのでとてもありがたいと思っています1。
やっている業務
テスターっぽい業務
週に1度のペースでテスト仕様書に沿って回帰テストをしています。ほとんど全部の画面・機能の正常系を網羅するように項目を組んでできるだけ色々なOSバージョンやデバイスを使うようにしています。
社内ではBasic Testと呼ばれているけどソフトウェアテスト的に正式な呼称はちょっとわからないですね……
最初は開発者が元々使っていたテスト仕様書をシェアしてもらって作業していましたが、秋に大きな仕様変更があったときに作業しやすいように書き直しました。
バグ修正や新機能の動作確認
バグ修正や新機能の追加があったときにはmasterにmergeする前に手で動作を確認しています。
社内ではQA-Testingと呼ばれているけどソフトウェアテスト的に(略
新しいプロダクトや大規模な仕様変更に伴うテスト仕様書の作成・更新
新しいプロダクトや大規模な仕様変更のリリース前は(Basic Testで使っているような)テスト仕様書がないため、要件書を元に動作確認をしながらテスト仕様書を書いています。要件書上では詰められていない細かい箇所についてはmasterの挙動が正しいのかどうかPOや開発者に確認しながら作業しています。
いわゆる探索的テストにあたるものだと思うんですけど(略
QA-Testingもそうですがテスターと一部の開発者しか知らない実装や挙動が見えてきてからは同時にドキュメントも書くようになりました。
プロダクト保守用ドキュメントの作成
先に書いたようにチーム内で「あの画面どうやって出すんだっけ」「どういう経緯でこの機能こうなってるんだっけ」みたいなことが最初の半年くらいでも結構あって、これまではTrelloやSlackのアーカイブを追ってなんとかしていたのを、GitHub Wikiを使ってドキュメントに残していくようにしています。
参考: Pixelaを使ってGitHub Wikiの芝を生やした - びよーんのつま。
業務全体を通していえることですが「ソースを読めばわかることでも、ブラックボックステストの前提を崩したくないのでできるだけソースを読みたくない」というお願いはかなり最初の方に話しました。
参考: 【QA】QAとして開発チームにお願いした4つのこと - びよーんのつま。
英語以外の言語での動作確認
メインプロダクトは英語を元にその他20弱の言語に翻訳されているので、月1くらいで日本語以外のRTL言語2や非ラテン文字言語3での動作確認をしています。
参考: 英語中心多言語対応アプリのテストにおける言語間差異に関するハック・Tips集 - びよーんのつま。
また、翻訳ファイルをインポートしたときに差分に不要なエスケープや文字化けが含まれないかチェックしています。
FAQの内容チェック
プライバシーポリシーや利用規約はPOや開発者が確認・更新しているので、後回しになりがちなFAQの内容のチェックと修正を担当することがあります。
テスト用ツールの作成
テストを楽にするための主にshellスクリプトを書くことがありますが多分中小SIerにいたときよりshellを書いてる気がする。
雑用っぽい業務
チーム内ドキュメントの作成
デバイスの管理用シートや手順書を作成して社内向けのGoogle Siteにまとめています。これもSlackやGoogle Drive内を探し回る必要がなくなったので続けていきたいです。
その他
Drive Day
数ヶ月に1回車で遠出して社内でバグバッシュ大会をする。遠足みたいで楽しい。
www.instagram.com
やっていきたいこと
他の会社のQAチームの人と仲良くなる
例えばAndroidアプリを開発している人同士、Ruby on Railsを使って開発している人同士の知り合いやすさに比べて、QAチーム同士が会社の規模関係なく知り合って情報交換する場は探しにくいと感じたので、発信することで引き寄せの法則が発動してくれないかなと思っています。
参考: Android Test Night中考えたり呟いていた内容の補足 #android_test_night - びよーんのつま。
JSTQB Foundation Levelを受ける
上で書いたこととも関係あるんですけど、今まで体系的にソフトウェアテストについて勉強したことがないのでしばしば「ソフトウェアテスト的に何ていうのかわからない」「日本語で何ていうのかわからんから英語に訳せない」という状態になるので、他社の人とも話せるようにちゃんと用語を知りたいという気持ちがあります。
jstqb.jp
英語の雑談力をつける
英語の雑談がとてもつらい。つらいというのは「やりたくない」ではなくて雑談ってめちゃくちゃ難易度高くないですかということです。喋る力は雑談しないとつかないと思うので聴く力とか語彙力を高めて戦っていきたい……
体力をつける
週4時短勤務でも休日は病院行脚してたり突然寝込んだりするので体力をつけたいです。生きたい……