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
7
30k
[新卒向け研修資料] テスト文字列に「うんこ」と入れるな(2024年版)
インフィニットループ社内の新卒向け研修で使われた資料、テスト文字列に「うんこ」と入れるな(事例などを追記した2024年版)です。
Infiniteloop
April 23, 2024
Tweet
Share
More Decks by Infiniteloop
See All by Infiniteloop
俺の PHP プロファイラの話 PHP スクリプトで PHP 処理系のメモリをのぞき込む
infiniteloop_inc
0
410
心理的安全性を学び直し、 「いい組織とは何か?」を考えてみる
infiniteloop_inc
0
510
ゼロからつくる 2D物理シミュレーション ~物理現象をコードに落とし込む方法~
infiniteloop_inc
1
720
詫び石の裏側
infiniteloop_inc
0
540
リファクタリングで実装が○○分短縮した話
infiniteloop_inc
0
190
ADRという考えを取り入れてみて
infiniteloop_inc
0
180
500万行のPHPプロジェクトにおけるログ出力の歩み
infiniteloop_inc
0
150
I ❤ Virtual Machines 仮想環境をより便利に使うツールたち
infiniteloop_inc
0
120
アニメーションとスキニングをBurstで独自実装する
infiniteloop_inc
0
320
Other Decks in Technology
See All in Technology
OSSコントリビュートをphp-srcメンテナの立場から語る / OSS Contribute
sakitakamachi
0
1.3k
10分でわかるfreeeのQA
freee
1
12k
いつも初心者向けの記事に助けられているので得意分野では初心者向けの記事を書きます
toru_kubota
2
270
SRE NEXT CfP チームが語る 聞きたくなるプロポーザルとは / Proposals by the SRE NEXT CfP Team that are sure to be accepted
chaspy
1
580
Spring Bootで実装とインフラをこれでもかと分離するための試み
shintanimoto
5
520
ゆるくVPC Latticeについてまとめてみたら、意外と奥深い件
masakiokuda
2
230
Android는 어떻게 화면을 그릴까?
davidkwon7
0
100
ソフトウェア開発現代史: "LeanとDevOpsの科学"の「科学」とは何か? - DORA Report 10年の変遷を追って - #DevOpsDaysTokyo
takabow
0
200
SREの視点で考えるSIEM活用術 〜AWS環境でのセキュリティ強化〜
coconala_engineer
1
260
開発視点でAWS Signerを考えてみよう!! ~コード署名のその先へ~
masakiokuda
3
150
はじめてのSDET / My first challenge as a SDET
bun913
1
210
ElixirがHW化され、最新CPU/GPU/NWを過去のものとする数万倍、高速+超省電力化されたWeb/動画配信/AIが動く日
piacerex
0
110
Featured
See All Featured
Visualization
eitanlees
146
16k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
30k
It's Worth the Effort
3n
184
28k
Why You Should Never Use an ORM
jnunemaker
PRO
55
9.3k
Unsuck your backbone
ammeep
670
57k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
12k
Adopting Sorbet at Scale
ufuk
76
9.3k
VelocityConf: Rendering Performance Case Studies
addyosmani
328
24k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.6k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
9
740
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
233
17k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
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で生成してもよいかもしれない
• とはいえ、一見してテストとわからない文字列は、 本番データとの取り違えが発生しそれはそれで厄介 • 組織で利用するサンプル文章を定めておくとよい ◦ 「吾輩は猫である。名前はまだない。どこで…」など ◦ 決まったサンプル文章であれば、すぐテストデータとわかる
まとめ • テスト文字列には、無難な文字列を使うこと。 • 入力する文字列や画像は全て外部に漏れる可能性があると考えること。 • 業務中はふざけない(休憩中など他の時間に楽しく遊ぼう)