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
290
心理的安全性を学び直し、 「いい組織とは何か?」を考えてみる
infiniteloop_inc
0
360
ゼロからつくる 2D物理シミュレーション ~物理現象をコードに落とし込む方法~
infiniteloop_inc
0
460
詫び石の裏側
infiniteloop_inc
0
390
リファクタリングで実装が○○分短縮した話
infiniteloop_inc
0
140
ADRという考えを取り入れてみて
infiniteloop_inc
0
130
500万行のPHPプロジェクトにおけるログ出力の歩み
infiniteloop_inc
0
110
I ❤ Virtual Machines 仮想環境をより便利に使うツールたち
infiniteloop_inc
0
91
アニメーションとスキニングをBurstで独自実装する
infiniteloop_inc
0
240
Other Decks in Technology
See All in Technology
Oracle Database Release and Support Timelines 2024/12/11
wmo6hash
0
240
AWS re:Invent 2024登壇資料(GBL206-JA: Unleashing the power of generative AI on AWS for your business)
minorun365
PRO
7
260
AWS re:Invent 2024 re:Cap CloudFront編
yoshimi0227
0
190
How is Cilium Tested?
yutarohayakawa
5
310
PR TIMESにおけるNext.jsとcacheの付き合い方
apple_yagi
2
320
プロダクトの爆速開発を支える、 「作らない・削る・尖らせる」技術
applism118
10
9.3k
LangChainとSupabaseを活用して、RAGを実装してみた
atsushii
0
180
alecthomas/kong はいいぞ / kamakura.go#7
fujiwara3
0
100
新機能Amazon GuardDuty Extended Threat Detectionはネ申って話
cmusudakeisuke
0
330
ガバメントクラウドのセキュリティ対策事例について
fujisawaryohei
0
180
DevOps視点でAWS re:invent2024の新サービス・アプデを振り返ってみた
oshanqq
0
130
アジャイルテストの4象限で考える プロダクト開発の品質への向き合い方
nagano
1
980
Featured
See All Featured
How STYLIGHT went responsive
nonsquared
95
5.2k
For a Future-Friendly Web
brad_frost
175
9.4k
Faster Mobile Websites
deanohume
305
30k
Measuring & Analyzing Core Web Vitals
bluesmoon
4
160
Rails Girls Zürich Keynote
gr2m
94
13k
The Art of Programming - Codeland 2020
erikaheidi
53
13k
How to Think Like a Performance Engineer
csswizardry
21
1.2k
Side Projects
sachag
452
42k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.1k
Automating Front-end Workflow
addyosmani
1366
200k
The Language of Interfaces
destraynor
154
24k
Into the Great Unknown - MozCon
thekraken
33
1.5k
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で生成してもよいかもしれない
• とはいえ、一見してテストとわからない文字列は、 本番データとの取り違えが発生しそれはそれで厄介 • 組織で利用するサンプル文章を定めておくとよい ◦ 「吾輩は猫である。名前はまだない。どこで…」など ◦ 決まったサンプル文章であれば、すぐテストデータとわかる
まとめ • テスト文字列には、無難な文字列を使うこと。 • 入力する文字列や画像は全て外部に漏れる可能性があると考えること。 • 業務中はふざけない(休憩中など他の時間に楽しく遊ぼう)