Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
[新卒向け研修資料] テスト文字列に「うんこ」と入れるな(2024年版)
Search
Infiniteloop
April 23, 2024
Technology
6
25k
[新卒向け研修資料] テスト文字列に「うんこ」と入れるな(2024年版)
インフィニットループ社内の新卒向け研修で使われた資料、テスト文字列に「うんこ」と入れるな(事例などを追記した2024年版)です。
Infiniteloop
April 23, 2024
Tweet
Share
More Decks by Infiniteloop
See All by Infiniteloop
俺の PHP プロファイラの話 PHP スクリプトで PHP 処理系のメモリをのぞき込む
infiniteloop_inc
0
270
心理的安全性を学び直し、 「いい組織とは何か?」を考えてみる
infiniteloop_inc
0
330
ゼロからつくる 2D物理シミュレーション ~物理現象をコードに落とし込む方法~
infiniteloop_inc
0
410
詫び石の裏側
infiniteloop_inc
0
370
リファクタリングで実装が○○分短縮した話
infiniteloop_inc
0
140
ADRという考えを取り入れてみて
infiniteloop_inc
0
130
500万行のPHPプロジェクトにおけるログ出力の歩み
infiniteloop_inc
0
110
I ❤ Virtual Machines 仮想環境をより便利に使うツールたち
infiniteloop_inc
0
83
アニメーションとスキニングをBurstで独自実装する
infiniteloop_inc
0
230
Other Decks in Technology
See All in Technology
VideoMamba: State Space Model for Efficient Video Understanding
chou500
0
190
[CV勉強会@関東 ECCV2024 読み会] オンラインマッピング x トラッキング MapTracker: Tracking with Strided Memory Fusion for Consistent Vector HD Mapping (Chen+, ECCV24)
abemii
0
220
CysharpのOSS群から見るModern C#の現在地
neuecc
1
3.1k
Shopifyアプリ開発における Shopifyの機能活用
sonatard
4
250
The Rise of LLMOps
asei
5
1.2k
Terraform未経験の御様に対してどの ように導⼊を進めていったか
tkikuchi
2
430
OCI 運用監視サービス 概要
oracle4engineer
PRO
0
4.8k
これまでの計測・開発・デプロイ方法全部見せます! / Findy ISUCON 2024-11-14
tohutohu
3
360
開発生産性を上げながらビジネスも30倍成長させてきたチームの姿
kamina_zzz
2
1.7k
SSMRunbook作成の勘所_20241120
koichiotomo
2
120
【若手エンジニア応援LT会】ソフトウェアを学んできた私がインフラエンジニアを目指した理由
kazushi_ohata
0
150
AWS Lambda のトラブルシュートをしていて思うこと
kazzpapa3
2
170
Featured
See All Featured
Understanding Cognitive Biases in Performance Measurement
bluesmoon
26
1.4k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
31
2.7k
Measuring & Analyzing Core Web Vitals
bluesmoon
4
120
Writing Fast Ruby
sferik
627
61k
Art, The Web, and Tiny UX
lynnandtonic
297
20k
The Cost Of JavaScript in 2023
addyosmani
45
6.7k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
jQuery: Nuts, Bolts and Bling
dougneiner
61
7.5k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
109
49k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
28
2k
How to Ace a Technical Interview
jacobian
276
23k
Transcript
[新卒向け研修資料] テスト文字列に 「うんこ」と入れるな ~軽い気持ちで入れたその文字列は、いかにして社外に漏れるか~ 株式会社インフィニットループ 代表取締役会長 松井 健太郎 2024年版!
どうも!松井です!!いまは会長になりました!! ※フリー素材 3Dモデル絶賛配布中 https://www.infiniteloop.co.jp/sp ecial/ceo/
はじめに • 本日はうんこを題材にした話をします • タイトルはアレですが大事な話なのでちゃんと聞いてください • 繰り返ししている話なので、聞いたことがある人も 多いかもしれませんが、何度でも話します。
愛されて23.6万View! ※2024年4月現在 結構前に作った資料ですが、長く読まれ続けています。
本日伝えたいこと テスト文字列には 無難な文字列を使うこと 以上
テスト文字列とは? • 入力フォームなどを作るときに入れる文字列 • Web系エンジニアであれば、テスト等で山ほど入力するはず コレ
ところが? ここで人はつい出さなくてもよいユーモアを発揮してしまう
事例(1) セシウムさん騒動 参考: https://ja.wikipedia.org/wiki/%E3%82%BB%E3%82%B7%E3%82%A6%E3%83%A0%E3%81%95%E3%82%93%E9%A8%92%E5%8B%95 2011年に東海テレビのローカルワイド番組「ぴーかんテレビ」において発生した、 番組基準を大きく逸脱した不謹慎なテロップを表示した不祥事。 地方局のローカル番組内の出来事ながら、 日本全国における放送事業者の倫理観を問われる事態に発展した。 (Wikipediaより)
事例(2) じゃぶじゃぶ課金事件 参考: https://wedge.ismedia.jp/articles/-/4699 2015年にとあるブラウザゲームの「遊び方説明」ページが話題となった。 そこには 「プレイヤーがじゃぶじゃぶ課金したくなるような射幸心を煽りまくる説明文章」 というテキストが掲載されており、何らかのミスで公開されてしまったようだ。 文章は運営の手によりすぐに削除されたが、キャプチャ画像などが即座に 拡散され、まとめサイトやニュースサイト、SNS上などで大炎上した。
みんな言う • いや、私はそんなミスはしませんよ • これローカル環境ですから大丈夫ですよ
うんこの力をなめるな
例えば… • コマンドの引数を打ち間違えた • DBのダンプファイルを取り違えて復元した • テスト用のファイルや画像を本番環境にデプロイしてしまった • LBの参照先設定を間違えた •
リリース時に一部テーブルを消し忘れた • テスト環境だと思いこんでいた • そんな仕様だとは知らなかった 知らなかった… そんなつもりはなかった… 悪意はない… 膨大な数のテストデータは、0.001%の壁をくぐり!すり抜けて! うんこは本番環境に"必ず"現れる!!
どうすればいいのか?
どうすればいいのか? • 人類はうんこに打ち勝つことは不可能 • どんなに気をつけていてもミスは必ず起こる • 日頃から誤爆してもよい振る舞いをするしかない
正しいテスト文字列で防ぐ • 万が一漏れても問題ない文字列や画像を使う ◦ 例: 名前の場合 テスト太郎 ◦ 例: 会社名の場合 株式会社テスト ◦ 「ああああ」などでもよいが、それはそれでシュールな絵面になることもあるし、 開発時にカラム間違い等に気づける方が合理的
◦ 画像はウケを狙いがちなので特に注意、組織としてテスト画像を用意しておくと良い • 一見してテストとわかる文字の方が望ましい ◦ 実在する会社名だと万が一漏れた際に迷惑をかけるかもしれない ◦ テストデータであることが分かりづらいと取り違い事故などが発生する ※特に問題のない文字列だが、 外部に出ると話題になってしまう例 → 引用元: https://buzzap.jp/news/20210904-kyocera-analysis-center-member-aaaaaaaaa/
文化で防ぐ • 不適切な入力している人がいたら周りが止める ◦ 新人が「うんこ」など不適切な文字列を入れていたら諭す ◦ 不適切なテストデータを発見したら、原因を突き止める • 礼節を持って対応する ◦
常に表裏なく、たとえクライアントに見られても問題ない振る舞いを行う • 冷笑する文化を作る ◦ 仕事中にふざけない ◦ うんこと入力することが本当に面白いのかよく考える ◦ ふざけている人がいたら冷笑する(面白がらない)、先輩や上司はきちんと注意する ◦ そのユーモアはもっと活かせる場で使うようにしよう ◦ 楽しい職場環境は大事なので、ふざけあえる場は別途作りそちらで遊ぼう
仕事中にはふざけない • 悲しい事故の99%はつまらない冗談から起きる • ユーモアや楽しい職場環境は大事だが、業務システム上でやるべきではない • プロ意識を持つこと(プロ=ユーモアの無い人 ではないはず) 事例: 尻エアーコンプレッサー
• お尻から空気を入れることで何人もの死亡事故が起きている • 殺人の意思はなく、おそらく「冗談で」やっている (いじめ目的の場合もあるかもしれないが、きっと殺す気はないはず) • 機器やシステムが考えていたのと違う挙動をすることはよくあること
事例(3): まともな文字列を使うことの重要性 その1 Yahoo! JAPANのプッシュ通知誤配信の事例(2021/12/22) 当然SNSで炎上し、ネットニュースに載った。 「ゲリラや特殊部隊による攻撃が発生しました」 ではなく 「これはプッシュ通知のテストです」 であれば、話題性は何倍も少なかったはず。 (ニュースにもならなかった?)
※ [配信テスト] [dev] を付けていたことで、 被害が軽減していることにも注目
事例(4): まともな文字列を使うことの重要性 その2 JR東海のリニア・鉄道館サイトのお知らせの事例(2024/03/22) JR東海のリニア・鉄道館サイトのお知らせで、 誤ったテスト画面を表示してしまい、SNSで話題に。 > 「重要な重要が重要で重要」リニア・鉄道館サイトに > 奇妙な画面 誤ってテスト画面を表示 >
見つけた人が「どうしたJR東海」「お腹痛い」と投稿。 という題名で、ねとらぼの記事にもなってしまう。 ※本文がまともだったため大幅なダメージ軽減ができて いるが、もしタイトルもまともだったら話題にもならな かったかもしれないという惜しい例。 ※タイトルは明らかに「不要なユーモア」 本文もふざけていたらと想像すると震える。
余談(1): メールのテストについて • メールアドレスにはテスト用の予約ドメインである 「example.com」「example.jp」や「.test」等を使うこと ◦ 例:
[email protected]
◦ 例:
[email protected]
◦ 例:
[email protected]
• 適当に打った「aaa.com」や「test.com」は使ってはダメ • メールが届いて相手に見られてしまったり、 User Unknownメールが飛び交うことになる
余談(2): ランダム文章の生成 • Word上で「=rand()」と入力するとランダムの文章が生成できる ◦ 引数の数字で長さを調整できる ◦ 「=lorem()」で英文のランダム文が生成 • 最近だとChatGPTなどのAIで生成してもよいかもしれない
• とはいえ、一見してテストとわからない文字列は、 本番データとの取り違えが発生しそれはそれで厄介 • 組織で利用するサンプル文章を定めておくとよい ◦ 「吾輩は猫である。名前はまだない。どこで…」など ◦ 決まったサンプル文章であれば、すぐテストデータとわかる
まとめ • テスト文字列には、無難な文字列を使うこと。 • 入力する文字列や画像は全て外部に漏れる可能性があると考えること。 • 業務中はふざけない(休憩中など他の時間に楽しく遊ぼう)