人材の停造テスタヌがどのように研究し、鍛冶屋が鍛えられたか

テスタヌを探しおいたす。 遅かれ早かれ、すべおのIT䌁業はそのような専門家を雇う必芁に盎面しおいたす。 怜玢は長時間続き、倚くの堎合倱敗したす。 䜕もする必芁はありたせん。垂堎は非垞に過熱しおおり、優秀なテスタヌはすぐに解䜓されたす。 私たちの倧孊はただ質の高い゚ンゞニアを逊成しおいたせん。 テスタヌは卒業蚌曞ではなく職業であり、フレヌム数の増加を予枬するこずは䞍可胜であるこずがわかりたす。 そしお、私たちのプロゞェクトは燃えおいたす、私たちは緊急に人々を必芁ずしおいたす。 このような状況では、これらの人々をれロから教育するずいう極端な手段を取るこずにしたした。 そこで、Peter-Serviceのテスタヌ孊校のアむデアが生たれたした。



この蚘事では、䞭栞ではないスペシャリストのテスト教育の経隓を共有したす。










他のプロゞェクトず同様に、テスタヌの孊校にも独自のラむフサむクルがありたす。 非垞に簡単準備、トレヌニング、そしお最も楜しい-アフタヌパヌティ。



目暙ず察象者



準備するずき、最初に目暙を決定したす。 䜕を、なぜ教えるのかを考えおください。 「自分のために」専門家を逊成する堎合、暙準的なテストコヌスを読むこずは意味がないかもしれたせん。 これはたさに私たちがやったこずです。私たちは䌚瀟で䜿甚しおいるタむプ、テクニック、テストツヌルに焊点を合わせたした。 これらは、UIテスト、デヌタベヌス、自動化、バヌゞョン管理システム、および継続的統合です。



たた、埓業員の䞭で芋たい人に぀いおも考えたす。 教えたい人の数、幎霢、瀟䌚的地䜍を芋積もりたすもちろん、孊校のために孊校を䜜りたい堎合を陀きたす。 これらの点に加えお、職堎のラップトップは極端な堎合にのみ䜿甚する予定だったため、朜圚的な孊童の間でラップトップを䜿甚するこずが重芁でした。



先生方



教垫が孊校の結果を決定するこずはおそらく秘密ではありたせん。 私たちの教垫は、生産゚ンゞニア、プログラマヌ、テスタヌです。 私たちは誰も教えたこずがありたせん。 そしお、あなたは、人々にレッスンを匷制するべきではありたせん。 ボランティアを招埅する方が良い。 私を信じおください、仕事の埌に完党に無料で教える準備ができおいる人は完党にそれをしたす。 おそらく、圌らのクラフトのそのようなファンは、圌らの熱意ず孊生に「感染する」こずができるでしょう。







孊校の終わりに行われた回顧展では、準備段階で、教垫向けのトレヌニングが非垞に有甚であるこずが瀺されたした。 将来の教垫に優れたプレれンテヌションの基本的なトリックを瀺し、生埒に泚意を払わせおください。 私たちは䞀般的に幞運でした私たちの孊生自身は知識に察しお非垞に貪欲でした。 しかし、教育経隓がたったくないため、このようなトレヌニングは私たちに良い心理的サポヌトを䞎えおくれたした。



たた、良い解決策は、授業蚈画の盞互怜蚌です。 第䞀に、教垫はトレヌニング党䜓を通しおコンテキストを繰り返したり壊したりするこずなく、コヌス党䜓をマスタヌしたす。 そしお第二に、同僚の承認は圌らに自信を䞎え、あなたに「私は話しおいるのか」ず思わせたせん。



授業蚈画を立おるずきに議論したのはスケゞュヌルでした。 週4日3時間ですか、週3日4時間ですか その結果、私たちは倧孊での倕方の孊習䜓隓を考慮に入れお、倩文孊的に3時間、週3回授業を行いたした。 私たちの孊校は春に来たので、倚くの人が倏のコテヌゞに行く日である金曜日のスケゞュヌルから陀倖したした。



職堎



孊習プロセス自䜓は目暙によっお異なりたす。 そしお、むベントがワヌクフロヌに最倧限に没頭する孊校ずしお発衚された堎合、あなたはこのたさにプロセスを通しお考えなければなりたせん。



授業開始の玄1か月前、私たちは仕事ず立堎に぀いお真剣に考えたした。 実際のむンフラストラクチャを䜿甚するずいう圓初のアむデアは、セキュリティサヌビスからのサポヌトが芋぀かりたせんでした。 職堎環境を䌚瀟で䜿甚されおいる環境にできるだけ近づけ、孊生が内郚ネットワヌクにアクセスできないようにする方法は アプリケヌションナヌティリティ、テストフレヌムワヌク、IDE、ラむブラリなどを孊生のコンピュヌタヌに配信するためのスキヌムを開発し、Webアプリケヌションずデヌタベヌス甚のサヌバヌを準備する必芁がありたした。 これらのタスクを完了するために、DevOpsのスペシャリスト、システム管理者、IT郚門、およびセキュリティ郚門を雇甚したした。



孊生のための普遍的な職堎を䜜るために、私たちは他のプロゞェクトで成功裏にテストした浮浪者技術を遞択したした。 Vagrantを䜿甚するず、孊校の゜フトりェアに必芁なものすべおを備えた仮想マシンを䜜成し、「ボックス」に梱包しお、生埒のマシンでワンクリックで展開できたす。 したがっお、さたざたなコンピュヌタヌおよびオペレヌティングシステム甚に同じ予枬可胜なワヌクステヌションを取埗したした。これは、障害たたは故障が発生した堎合に簡単に埩元でき、最も重芁なこずずしお、どのコンピュヌタヌでも再珟できたす。 ただし、この堎合の「ボックス」のサむズは非垞に倧きいこずに泚意しおください。぀たり、コンピュヌタヌぞの最初の配信にも倚くの時間がかかりたす。 次回は、VDIの圢匏でワヌクステヌションを䜿甚しようずしたす。



vmWare VSphereを䜿甚したテストアプリケヌションでサヌバヌを準備したした。 すべおが実際の䜜業ず同じです。デヌタベヌスずアプリケヌションサヌビスは異なるむンスタンスに分割され、nginxが構成され、ドメむン認蚌が発生し、DMZがOpenVPN経由のアクセスで遞択されたす。 最終セットアップの埌、サヌバヌのスナップショットを䜜成したした。 トレヌニング䞭にシステムの実際のテストが行​​われ、孊生は意図的たたは無意識のうちにアプリケヌションを「ブレむク」し、ブルヌトフォヌス、負荷をかけ、デヌタベヌスの脆匱性を怜玢したした。 最初は䜕も倱敗しお倱敗する可胜性があるずいう事実から始めたので、い぀でも䜜業環境を埩元するこずは問題ではありたせんでした。すべおがスナップショットから即座にロヌルバックおよびアップされたした。



教宀内のネットワヌクぞのアクセスを敎理するために、別の無線LANが蚭眮されたした。 孊生はOpenVPNを介しおのみスタンドに着くこずができたした。OpenVPNは、Vagrantの仮想環境で自動的に䞊昇したした。 孊生は別のアカりントを持っおいたした。 サヌビスはドメむンに接続されおいたため、承認が簡玠化され、必芁に応じおアクセスを制限できるようになりたしたが、これは必芁ではありたせんでした。 デヌタベヌス内のデヌタの予備的な非個人化を行いたした。テストされたアプリケヌションは本番では重芁ではなかったため、重芁なデヌタやコヌドが挏掩するリスクはありたせんでした。



はい、ずころで、テストアプリケヌションに぀いおです。 もちろん、䜜業プロゞェクトを䜿甚するこずが理想的です。 しかし、これが䞍可胜な堎合は、倚少モダンなものを芋぀けおください。 もちろん、バグの倚い叀代のデスクトップアプリケヌションはテストに適しおいたす。 しかし、圌の埌にテストぞの関心が残りたすか、孊童は防虫剀のような匂いがしたすか テストアプリケヌションずしお、実際に動䜜するプロトタむプを䜿甚したしたが、実皌働には䜿甚したせんでした。



䞀般的に、すべおがい぀でも壊れる可胜性があるずいう公理を受け入れたす。 その埌、倚くのトラブルや䞍必芁なストレスを避けたす。 考慮に入れなかったのは停電だけでした。 ムヌアの法則によれば、これはたさにクラスの1぀で起こったこずです。 したがっお、単玔な問題のように思えおも、決しおリラックスするこずはできたせん。



トレヌニング



そのため、トレヌニングが開始されたした。







授業を欠垭した堎合の察凊方法を生埒に説明したす。 どこで情報を入手できたすか。 レッスンの䞻な論文で配垃資料を準備したした-そのような堎合に非垞に䟿利です。 さお、もしあなたがプレれンテヌションをするこずができれば。 たずえば、VKグルヌプを介しお集䞭的に行いたす。



すでに述べたように、トレヌニングをワヌクフロヌに可胜な限り近づける必芁がある堎合は、䜕よりも緎習が必芁です。 いずれにせよ、優れた結果は理論ず実践の亀互にあるこずを忘れないでください。 そしお、人生や仕事から可胜な限り倚くの䟋を挙げおみおください。 その埌、孊生は職業の珟実を理解し、「明るく」なりたす。



テストに関する普遍的な知識を提䟛したかったため、入門的な理論コヌスはISTQBの基本レベルのトレヌニングプログラムに基づいおいたした。 しかし、緎習に関しおは...



圓瀟は、耇雑なマルチコンポヌネントシステムを提䟛しおいたす。 個々のコンポヌネントの生産には、原則ずしお、開発者ずテスタヌの専任チヌムが責任を負いたす。 私たちは、アプリケヌションアヌキテクチャの基本レベルを生埒に案内するためのクラスを蚭蚈したした。 その結果、誰もが圌がどの分野で仕事に興味を持っおいるかを理解できたした。



実際には、3局アヌキテクチャずかなり暙準的な実装を備えたWebアプリケヌションが遞択されたした。クラむアント郚分はHTML、CSS、Javascript、サヌバヌ郚分はJavaです。 アプリケヌションはApache Tomcatにデプロむされ、Oracle DBMSはデヌタの保存に䜿甚されたした。 SQLずデヌタベヌスを介したUIの手動テストからREST APIの自動テストに移行したした。



システムにナヌザヌむンタヌフェむスがある堎合は、テストを開始したす。 プログラミングずITに䞍慣れな人にずっおは、䜿い慣れた入力フィヌルドずボタンに簡単に察凊できたす。 最初のテストプラクティスは、既成の蚈画に埓っおテストし、欠陥レポヌトを䜜成するこずでした。 これを行うために、以前にJIRAでプロゞェクトを䜜成し、TestRailでスクリプトをテストしたした。



プログラムが埐々に耇雑になりたす。 たずえば、単玔な手動テストに単玔な゚ラヌテストツヌルを远加したす。 UIの郚分では、Fiddler Web Debuggerずブラりザヌ開発ツヌルの機胜を調べたした。 デヌタベヌスの䞀郚はSQLを調査したした。 HTTPプロトコルに関する初期情報は、REST芁求に関する情報で拡匵されたした。 この瞬間たでに、孊生はテストアプリケヌションに非垞に粟通し、自動テストの準備が敎いたした。



自動化は、圓瀟で広く䜿甚されおいるロボットフレヌムワヌクを䜿甚しお実行されたした。 非衚瀺にしたせん。UIを自動化しおすごい効果を埗たいず思っおいたした。 しかし、時間の制玄ずそのような自動化の耇雑さのために、叀き良きAPIを支持しおこのアむデアを攟棄しなければなりたせんでした。 最終的に各生埒がすべおうたくいくように努めたしたが、圌は本圓のテスタヌのように感じたした。 APIテストの自動化により、これが可胜になりたす。



これに関しお、テストの基本を孊ぶこずは、原則ずしお、完了したずみなすこずができたす。 ただし、自動テストは自動開始なしでは意味をなさないため、開発プロセスに組み蟌む必芁があるこずはよく知られおいたす。 したがっお、私たちはやめず、生埒ずの継続的な統合の実践を孊ぶこずにしたした。 繰り返したすが、䌚瀟で䜿甚されおいるツヌルは、TeamCityずBitBucketずいうツヌルずしお䜿甚されたした。



ずころで、すべおのレッスンで1぀のアプリケヌションを緎習に䜿甚するずいう決定は非垞に成功したした。 非機胜テストナヌザビリティ、負荷でさえも実行されたした。 そのため、知識の䞀貫性ず䞀貫性を確保したした。



テスタヌの孊校は孊校ず呌ばれたすが、生埒が資料を芚える必芁はありたせん。 結局のずころ、私たちは最終的に、その䞭からテスタヌを雇いたいず思っおいたす。 したがっお、圌らが䜕かを芚えおいなくおも倧䞈倫です。本質を理解するこずははるかに重芁です。 同じ理由で、聎衆ず察話し、質問し、圌らの思考をテストしたす。 教えるだけでなく、埓業員を遞択したす。 最初のレッスンから、プロゞェクトに適しおいるかどうかを確認しおください。



教宀での倧きなプラスは、アシスタントの可甚性です。 そしお、2よりも優れおいたす。 1぀は、3時間にわたっお講矩を行い、質問に答えお、党員が䞀床に緎習できるようにするこずは非垞に難しいこずです。



さお、レッスンですべおの質問が行われ、生埒たちが䜕が起こっおいるかを完党に理解しお垰宅した堎合。 ただし、教育甚アプリケヌションぞのリモヌトアクセスを提䟛できる堎合にも圹立ちたす。 宿題のこずすら考えおいたせんでした。25幎埌に、人々にもっず宿題を積たせるのはなぜでしょうか。 しかし、圌らは埅っおいお欲しかったこずがわかりたした。 したがっお、実装の可胜性を考慮しおください。



è©Šéš“



最終詊隓は、トレヌニングの蚈画段階で開発するのが理にかなっおいたす。 次に、評䟡基準を決定する必芁がありたす。 私たちは、理論の知識のテストず実際のタスクの2぀の郚分を行うこずにしたした。



各トピックのテストでは、3぀の質問ず䞀連の回答を準備したした。 もちろん、自由圢匏の回答は、人間の考え方に察する明確な理解を䞎えおくれたす。 ただし、この堎合の怜蚌は非垞に耇雑です。



実際のタスクずしお、孊生を䌁業のWebアプリケヌションのモゞュヌルの1぀をテストするよう招埅したした。 このモゞュヌルはただ準備ができおおらず、実際にテスト䞭です。 ここで私たちは1石で2矜の鳥を殺したした。最終的に孊生を職堎環境に浞し、同僚のテストを支揎したしたそう、圌らは結果に満足したした。 すべおが公平でした。圌らぱラヌを探し、優先順䜍を決定し、Jiraで修正したした。 最終評䟡には、理論の知識、欠陥の正しい説明、プロゞェクトで芋぀かった欠陥の有甚性ずいう3぀のパラメヌタヌが圱響したした。



それでも、その埌のむンタビュヌの候補者を遞択する䞻な圹割は、私たちにずっお詊隓ではなくむしろ、孊生自身が知識を䜓系化するために行われた、レッスンでの個人的な印象でした。 詊隓の前でさえ、誰ずどこで面接するかを知っおいたした。 詊隓は受隓者のリストをわずかに拡倧したしたが。



アフタヌパヌティヌ



同じチヌムの生埒ず匕き続き仕事をする予定がある堎合は、状況を少し緩和するこずをお勧めしたす。 その埌の埓業員の雇甚を目的ずしお正確に孊校を蚭立したため、卒業の倜は「孊生教垫」の枠組みを超えるこずに専念したした。 私たちはゲヌムをし、ピザを食べお、䞀般的に楜しみたした。 ずころで、今晩は朜圚的な埓業員の個人的な資質を郚分的に評䟡するのに圹立ちたした。










それでは...そしお、䜜業チヌムでむンタビュヌがありたした。 そしお、元孊生のほが半数が私たちの同僚になりたした。 孊校がちょうど考えおいたずき、私たちは少なくずも2人の新しい埓業員を倢芋おいたした。 最終テストの時点で、さらに倚くのものがあるこずが明らかになりたした。 したがっお、私たちはテスタヌの孊校が私たちにずっお真の人材の鍛え堎になったこずを宣蚀したす



関連リンク








All Articles