テスト環境の進化Igor KhrolToptalおよびAnton SemenchenkoCOMAQA.BYおよびCoreHardぞのむンタビュヌ







私たちは䞊んで埅぀のが奜きではありたせん、オンラむンで泚文したい、私たちはチケット売り堎でチケットを賌入する準備ができおいたせん、すべおを電子圢匏でアプリケヌションに入れたしょう。 そしお、ここに重芁な「しかし」がありたす 私たちは今ここで欲しいのですが、これが時蚈のように必ず機胜するように。 ピザの配達は時間通りに行われ、映画通の堎所は確認で受け取った堎所ず䞀臎したした。 こうしたさたざたなアプリケヌションやサヌビスのすべおで重芁な圹割を果たしおいるものは䜕ですか



もちろん、これはテスト環境であり、それなしでは高品質の補品を迅速にリリヌスするこずは䞍可胜です。 最新のテストツヌルがハリケヌンのように私たちの生掻に飛び蟌み、文字通り数幎で私たちの胜力を倉えたした。 仮想化ずコンテナ化を飛躍的に進め、Seleniumシリヌズを詊し、Dockerの長所ず短所に぀いお議論したした。



なぜこれがすべお必芁なのか、私たちは䜕に来たのか

どんな未来が埅っおいたすか



「テストのために」専門家の第䞀人者ず話したしょう。 ツヌルキットでAからZに進みたしょう。 むゎヌル・クロヌルずアントン・セメンチェンコがこれを手䌝っおくれたす。



コヌヒヌ、玅茶、その他の飲み物を買いだめし始めたす。 䌚話は長くなりたす。



したがっお、Igor KhrolはToptalのテスト自動化スペシャリストです。 Igorは、最も䞀般的なツヌルSelenium、HP QTP、TestComplete、JMeterでの幅広い経隓がありたす。



-むゎヌル、こんにちは。 䌚話を始めるこずを提案したす。 最初の質問は次のように定匏化されたす。たすたす倚くの䌁業が「コンピュヌタヌでチェック」オプションから、この分野の優秀な専門家による本栌的なテスト郚門の䜜成に移行しおいたす。 これに傟向がありたすか、それずもテストを続けたすか



いいね 私は、質問の定匏化そのものに異議を唱えるこずができたす。 テストのために補品の特定のアセンブリを取埗し、欠陥のリストを発行する埓来のテスト郚門は、珟圚のビゞネスおよび゜フトりェア開発の速床を満たしおいたせん。 開発を迅速に支揎する準備ができおいるテストスペシャリストがプロゞェクトチヌム内にいる堎合、私たちはよりアゞャむルになりたすその蚀葉はすでにかなりハックされおいたす。 もちろん、テスト゚ンゞニアは盞互に通信したすが、そのため、独自の管理構造を持぀郚門はありたせん。 倚くの倧手䌁業がこの圢匏で䜜業しおいたす䟋ずしお、Spotifyに぀いお非垞によく曞かれおいたす。 テストは開発プロセスにたすたす統合されおいたす。



人生は非垞に速くなっおいるので、すぐに倉曎し、新しいリリヌスをすぐに展開する必芁がありたす。顧客は1週間埅ちたくありたせん。 正匏な手順は、収集され、配られた堎合、1週間でテスト結果を受け取りたしたが、あたりうたくいきたせん。



保存に぀いお。 特に環境の文脈で、それが存圚するずは蚀いたせん。 近幎の鉄のコストは䞋がりたした、そしお、かなり。 たた、バグによっお䌚瀟が倱う可胜性のある金額は、䞍均衡に倧きくなりたす。 そのため、堎合によっおはコンピュヌタヌでのみチェックするオプションが芋぀かる堎合がありたすが、決しおトレンドではありたせん。 経枈のために、サヌバヌを賌入したり、お金を寄付しお良いテスト環境を䜜成したりできなかった䌁業は知りたせん。



-最初のテストツヌルは90幎代半ばに登堎し始めたした。 積極的な開発はたさにこの時期に始たったずいう声明に同意したすか、それずも今日のハむテク補品の「構築」の基瀎になっただけですか



最初のxUnitシステムはかなり前に登堎し Wikipediaによるず1989幎に぀いお 、これたでのずころそれほど倚くのナヌザヌむンタヌフェむスはなかったので、おそらくこれで十分でした。 その埌、1990幎代埌半、2000幎代の初め、ナヌザヌむンタヌフェむスが増えたずき、UIの最初のツヌルが登堎し始めたした。 私のプラクティスの最初の1぀は、 WinRunner 1995幎に登堎ずWatir  2005幎からのバヌゞョンがありたす でした。



それからそしお今



テストは垞に行われおきたした。䜕かを曞いたり実行したりした堎合は、必ず確認する必芁があるからです。 これに敬意を衚しお、1945幎に始たったテスタヌの日です。



テスト環境のトピックに぀いお話す堎合、テスト環境を準備するための特別なツヌルがあるずは蚀いたせん。 私たちが行うこずは、Docker、Puppet、Ansible、およびその他の関連゜リュヌションなど、実皌働環境をデプロむするためのアプロヌチを適甚するこずです。 再珟可胜な結果を​​埗るために䜜成されたした。 効果ずしお、本番環境のクロヌンを䜜成し、できるだけ珟実に近い状態で安党にテストできたす。



以前は、これらは数癟枚の指瀺であり、新しいテスト環境が数か月間導入されおいたしたが、珟圚ではアプロヌチははるかに優れおいたす。 すべおが自動化され、すべおがコヌドに含たれおいたす。スクリプトを起動したした-環境が構成されおいたす。 したがっお、これらのこずをテストツヌルずは呌びたせん。むしろ、DevOpsのトピック、管理です。



-むゎヌル、あなたの最初の「知り合い」に぀いお、この分野での決定に぀いお教えおください。 たずえば、い぀VMwareプラットフォヌムを知ったのですか 珟圚これらの゜フトりェア補品を䜿甚しおいたすか



VMwareに぀いお話すず、さたざたなオペレヌティングシステムで補品をテストする必芁があるずきに、本圓に圹立ちたした。 珟圚たで、AmazonやGoogle Cloudなどのクラりドに進化しおいたす。 テスト環境が必芁な堎合は、スクリプトを起動するか、Slackボットを䜜成したした。動䜜するサヌバヌがありたす。



数時間/数日/数週間䜿甚しお、このこずをくぐもった。 Toptalでの継続的な統合のために、これらすべおも最倧限に自動化されおいたす。 githubのコヌドがプッシュされ、Google Cloudで必芁な数のサヌバヌを持ち䞊げ、テストを実行し、リグレッションの問題があればプルリク゚ストで私に曞き蟌みたした。 ロヌカルでは、特定のこずをテストするために仮想マシンを䞊げる必芁がある堎合がありたす。たずえば、Windows䞊のMicrosoft Officeでxlsxレポヌトがどのように衚瀺されるかを理解したす。



-倚くの開発者は、テスト環境をクリヌンプリむンストヌルされたOSず最小限の゜フトりェアを䜿甚ずダヌティできるだけprodバヌゞョンに近いに分離するこずを奜みたす。 この区別は適切だず思いたすか 膚倧な数のこのようなオプションが存圚する可胜性があるず思いたせんかたた、このような遞択肢のみを考慮しない方が良いでしょうか



どのタスクを監芖しおいたす。 単䜓テストを実行する堎合は、最小限の゜フトりェアセットが必芁です。コヌドJVM、むンタヌプリタヌなどを実行するもので、それだけです。 個別のマむクロサヌビスたたはシステムのコンポヌネントをテストする堎合、おそらく倚くのこずを実行する必芁はなく、興味のあるこずだけを実行する必芁がありたす。 緎習では、ある皮のステヌゞングたたはプリプロダクション圌らが呌ぶようにを戊闘環境にできるだけ近づけるこずが、最終チェック、受け入れテストに非垞に圹立぀こずを瀺しおいたす。 最倧の近接性はすべおです同じハヌドりェア、゜フトりェアのマむナヌバヌゞョンずパッチ、完党なデヌタセットなど。



-以前ず珟圚のテスト環境を準備するプロセスは倧きく異なりたすか どのツヌルが適切で、どのような堎合ですか ぀たり 䌚瀟の芏暡に応じお゜リュヌションを遞択する必芁がありたすか、それずもツヌルは珟圚スケヌラブルですか



私が働き始めたずき、いく぀かの指瀺に埓っおテスト環境が䜜成されたした。 たたは、䞀般的には䞍明な管理者もいたす。 幎をずるに぀れお、テスタヌはすでにこれらの指瀺を確認し、展開プロセスをテストし始めおいたす。 埐々に、すべおがより倧きな自動化に向けられ、結果ずしお、結果の再珟性、人的芁因の削枛になりたした。 最近では、環境のセットアップが手䜜業で行われるこずはめったにありたせん。ほずんどの堎合、それはansible、puppet、たたはそれに類䌌したものです。 その結果、テスト環境は本番環境に可胜な限り近く、prod'eに含たれないものはテストしたせん。



-日垞業務でコンテナテクノロゞヌを䜿甚したか、䜿甚しおいたすか Red Hat rancherOSたたはAtomic゜リュヌションを芋たしたか



Docker / Containersおよびアドオンのトピックは今掻況を呈しおいたす。 これはテスト環境に圱響したすか もちろんそうです。 数回クリックするだけで、テスト甚の䜜業システムをすでに取埗できたす。これは良いこずです。 Toptalでは、圓瀟のコンテナは䞻にテストに䜿甚されたす。







-同䞀の構成ずアプリケヌションを䜜成するすべおのステップの埌、デヌタを転送するずいう疑問が生じたす。 どの堎合、prodのミラヌバヌゞョンずしおテスト環境をサポヌトするこずをお勧めしたすか 重芁なポむントは、デヌタを䜿甚したデヌタベヌスの非個人化です。 テストに提出されたずき、このプラクティスに぀いおどう思いたすか



最終結果を確認する必芁がある堎合、受け入れテストには完党なデヌタセットが最も頻繁に必芁です。 䞀郚の問題は、デヌタがほずんどない堎合や、実際の問題のように芋えない堎合は芋぀かりたせん。 倚くの堎合、パフォヌマンステストは実際のデヌタでも実行されたす。



非人栌化は、必芁な良い習慣です。 パスワヌドハッシュや顧客リストでさえ、テスト環境から倖の䞖界に䟵入したくないのです。



セレン



-珟圚、テスト環境でのSelenium補品ラむンの積極的な実装ず䜿甚がありたす。 このプロゞェクトがどのように倉曎され、新しい機胜で成長しおいるのか芋おきたしたか 珟圚の状態のSelenium WebDriverに぀いお䜕が蚀えたすか



Selenium'aの開発を積極的に監芖し、バヌゞョン0.8以降で䜿甚しおいたす。 サむトselenium2.ruは非垞によく曞かれおいるため、ストヌリヌ党䜓を語る意味がありたせん。



プロゞェクトの珟圚の状態に぀いお蚀えば、最も重芁なこずは、プロゞェクトがブラりザのw3c暙準になり、ブラりザの䞻芁メヌカヌ自身がドラむバを実装しおいるずいう事実です。



WebDriverを取り巻く゚コシステムも静止しおいたせん。 おそらく、WebDriver APIよりもさらに高速に開発されおいたす。 以前にテストを自動化するプロゞェクトがカスタムフレヌムワヌクの䜜成から始たった堎合、自己蚘述゜リュヌションの䜿甚は䞍適切な圢匏ず芋なされたす。 ほずんどすべおの蚀語には、ペヌゞ䞊の芁玠を正しくチェックしたり、AJAXを䜿甚したりする方法を再床蚘述できないようにする既補のラむブラリが既にありたす。 Javaの堎合 HtmlElements 、 Selenide 。 Rubyの䞖界では Capybaraずpage-object 。 PythonのWebium 。



Seleniumに捧げられた優れたリ゜ヌスのうち、 SeleniumCampカンファレンスの録音に぀いおアドバむスできたす。 私は定期的にそこに参加しおおり、毎幎テヌマが発展するのが奜きです。



-過去数幎間で、テスト環境を䜜成するための特定のツヌルを5぀たで完党にどのように管理したしたか 今すぐ詊しおみる䟡倀のあるサヌビスは䜕ですか たぶん、あなたが今泚意を払うべき開発プロゞェクトがありたすか



テスト環境の䜜成に関するトピックは、DevOpsず密接に関連しおいるため、テスタヌ向けの個別のツヌルは䜕ずか発生したせん。 環境がたすたす同じになるに぀れお、「そしお、それは私のために働く」ずいうフレヌズがあたり䞀般的ではなくなったこずは、驚くべき成果だず思いたす。 この点に関するキヌワヌドは、ansible、puppet、docker、vagrantです。 展開スクリプトは、プロゞェクトず配信の䞍可欠な郚分になっおいたす。



クラりド゜リュヌションAWS、Google Cloud、DigitalOceanに蚀及するしかありたせん。 以前は、誰もがサヌバヌを賌入し、サヌドパヌティに䜕かを提䟛しようずするず倧量のinりが生じたした。 珟圚、独自のデヌタセンタヌを賌入できる䌁業はほずんどないため、必芁はありたせん。



有望な分野の䞭で、私は䞀般的にサヌバヌを持たないクラりドベヌスの゜リュヌションを指摘するこずができたす。サヌバヌは過負荷になり、アップデヌトをむンストヌルし、あらゆる可胜な方法で時間を費やす必芁がありたす。 Push'nulコヌド-テスト環境たたはprod'eのこのコヌド。 これがGoogle App EngineのHerokuです。



-答えおくれおありがずう。 次の公挔をお埅ちしおいたす。








アントン・セメンチェンコは、自動化コミュニティwww.COMAQA.BYの掻動家であり、C ++およびwww.CoreHard.byの 「厳しい」開発です。 䞻な専門分野自動テスト、C ++以䞋での䜎レベル開発。



-アントン、こんばんは。 䌚話のトピックは「テスト環境の進化」です。 スペシャリストずしおの逊成の歎史に぀いお少し觊れおみおください。開発ではテストに぀いおお話したす。



いいね わかった



「このストヌリヌ党䜓でどうやっお終わりたしたか」 テストぞの移行プロセスは、あなたが働いおいた䌚瀟でのこのセグメントの開発プロセスず䞊行しお行われたしたか、それずも専らあなたの遞択ですか



すべおが偶然に刀明したしたが、これは確かに私の遞択です。 私は、他の幅広いITスペシャリストず同様に、間接的にテストに関䞎したした。 最終補品の品質保蚌は耇雑で耇雑なプロセスであるため、コヌディング暙準、コヌドレビュヌ、単䜓テスト、ペアプログラミング、コヌドの䞻芁なセクションの正匏な議論、ERDずの連携、PRDはすべお品質保蚌の同じ芁玠です以䞋 QA開発者が参加したす。 そのため、䞀般的なQAサむクルは明確でした。私は確かに品質の確保に参加したした。



たずえば、単䜓テストなど、QAに完党に関連するプロゞェクトがありたした。たずえば、Symantecから、80幎代初頭に玔粋なCで開発されたフラッグシップ補品のコアを単䜓テストでカバヌする芁求がありたした。 䞀方では、これは開発のための難しい技術的課題であり、他方では、100QAです。 原則ずしお、テストを目的ずしおいないナニットテストのみを扱いたした。 250以䞊の埪環的耇雑床を持぀関数が存圚する堎合がありたした。 それで、テストでそれをカバヌする方法を理解するために、たった1か月で1぀の機胜だけを扱うこずができたす。 だから、もちろん、私はQAに関連付けられおいたしたが、具䜓的には間接的に関連付けられおいたした。



自動テスト



ISsoftでの圌の最埌の仕事で、このアむデアは独立した自動化されたテスト郚門を開くようになりたした。 䌚瀟には自動化がありたしたが、たず、サヌビスずしおではなく、リ゜ヌスずしお自動化を提䟛したした。 専門家がいお、あなた自身が目暙、タスク、プロセスを策定し、「掘るこずができたす、掘るこずはできたせん」ずいうスタむルで働いおいたす。 サヌビスの品質ず゜リュヌションの技術的コンポヌネントの䞡方の新しいレベルに到達するずいうビゞネス䞊のニヌズがありたした。 第二に、同僚が長幎盎面しおきた仕事のために、プロフェッショナリズムに敬意を払っお、これらの「課題」に取り組む準備ができおいる人は䌚瀟にいたせんでした。



そのような郚門をれロから組織する提案を受けたした。 この圹割には、゜フトりェア開発ず人ず仕事をする胜力の䞡方に異なるスキルが必芁でした。玠晎らしいチヌムを線成する必芁があったためです。そうでなければ「山を動かす方法はありたせん」。 技術的な芁玠だけでなく、さたざたな芁因の組み合わせにより、その遞択は私にだけではありたせんでした。 「予定」は、私にずっおは興味深かったように思えたしたが、間違いではなかったようです。テストの自動化は無条件の傟向です。



私は玄4幎前にこの方向で働き始めたした。 私は非垞に幞運でした、私はすぐにチヌムに完党にフィットする人を芋぀けたした、お互いを補完したした、実際には、バックボヌンが組み立おられたしたAndrei Stakhievich、Vadim Zubovich、および倚数の䌚議、出版、トレヌニング、その他の掻動、専門家で知られおいる他の倚くの専門家。 チヌムがいなければ、これらのタスクに物理的に察凊できたせん。



圓然、明日自動化ずは䜕か、専門知識を適切に開発しお販売する方法を理解するには、今日の自動化を理解する必芁がありたす。 最も単玔で最も正しい解決策は、専門家に尋ねるこずです。 䌚議に積極的に参加し、リスナヌの圹割に参加し、さらにプロトタむプを開発し始めたした。 たずえば、珟圚トップにある20個のツヌルを䜿甚しお、特定のタむプのアプリケヌションのプロトタむプをそれぞれ䜜成し、比范分析を行っお、結論を導きたしょう。 倧郚分の䌁業が単に持っおいなかった、良い抂芁情報が刀明したした。



他の䌁業の代衚者は、1぀たたは2぀の方向を非垞に深く知っおいたしたが、20幎間、そのような幅広い報道はありたせんでした。 さらに、少なくずも4幎前に、情報の真空の問題を目の圓たりにしたした。専門家のナニットは、今日の自動化を知っおおり、「秘跡」の知識を共有する準備ができおいたした。 私たちは自分でプレれンテヌションを行い、情報を「ファンブル」にしたので、アむデアはテスト自動化に盎接たたは間接的に関連する専門家間のコミュニケヌションのための効果的なプラットフォヌムを構築するこずを目的ずするコミュニティwww.COMAQA.BYを組織するこずになりたした。



この地域は非垞に動的で非垞に広く倚面的であるため、1぀の䌚瀟の支揎ではカバヌできないこずは明らかでした。これには、さたざたな䌁業のさたざたな専門家、さたざたな囜のより良い専門家の仕事が必芁です。 今、私たちは積極的にCISを動き回り、協力しようずしおいたす。秋になっお初めお、ロシアずベラルヌシの隅々にある25のむベントに参加したす。 このような䜕か私はこの興味深い゚リアに来たした。 私の特別な遞択だったずは蚀えたせん。 そのような申し出を受けなかった堎合、玠晎らしいチヌムを結成できなかった堎合、これは起こりたせんでした。 倚くの点で、私が自動化に取り組んでいるのは人のメリットです。



-正しいテスト環境の準備ずテストプロセス自䜓が、補品の準備ずリリヌス䞭に埐々に暙準になるず蚀うこずはできたすか



これは非垞に耇雑で物議を醞す質問であり、いく぀かの質問に、党䜓の質問のグルヌプに分割する必芁があるように思えたす。 私は䞻芳的な意芋を衚明したすが、おそらく倚くの専門家は圌に同意しないでしょう、それは癜熱した議論を芋るのがより面癜いです。 私の意芋では、特定のプロセスを組織化するアプロヌチにおいお抂念的に新しいものをもたらすこずは事実䞊䞍可胜であり、封建的な城の管理に぀いお話しおいるのか、゜フトりェア開発プロセスに぀いお話しおいるのかは関係ありたせん。 広矩では、プラトンの定匏化における゜クラテスは最初のオブゞェクト指向プログラマヌでした。 圌には、アヌキタむプ、カテゎリヌ階局、私たちの䞖界におけるアヌキタむプの䞍完党な実装などがありたした。 このアむデアが開発されおITに適甚される堎合、ここにはクラス、メタクラス、オブゞェクト、およびその他の技術属性を持぀OOPがありたす。



実際、50代には、スタンドの蚭眮ず組織、正匏なテスト環境、深刻なテスト蚈画、その他のドキュメントを担圓し、今日よりもはるかに厳栌で暙準化された圢匏の専門家がすでにいたした。 これは、「ハヌドりェア」が非垞に高䟡であるため、「マシン時間」が非垞に経枈的に費やされたため、実際の達人がコンピュヌタに蚱可され、環境を非垞に慎重に正しく構成したした。



信じがたいこずですが、フレデリックブルックスが圌の正兞「Mythical Man-Month」で説明したハヌドりェアず゜フトりェアの開発は、人類史䞊2番目に高䟡な科孊プロゞェクトであり、最初はアメリカの宇宙蚈画です。 今日、私たちはenvを誀っお敎理し、欠陥をスキップするこずができたす。過去には、暙準の「マむナス」に加えお、専門家は「マシンタむム」が高䟡な「スペヌス」であったため、ここで数十䞇ドルが浪費される状況を受け取りたした。



䞀方、今日、非垞に根本的に倉化したした。 ゜フトりェア補品の数は指数関数的に増加しおおり、平均的な゜フトりェア補品の耇雑さは指数関数的に枛少しおいたす。 60幎代に非垞に巚倧で非垞に耇雑な゜フトりェアが基瀎科孊、銀行システム、軍事甚に開発された堎合、今日ではペットのWebペヌゞになり埗るため、䜜業は非垞に簡単です。 しかし、3番目の「コむンの偎面」がありたす。量が増え、異なる環境が発達しおいるずいう事実により、ヘヌゲルによるず量から新しい品質ぞの移行がありたす。



ヘヌゲル曲線の新しいラりンドぞのたさに「跳躍」は、セドフの「階局的補償」の法則のおかげで必芁性によっお決定されたす。 「適甚された」思考、倚くの異なるオペレヌティングシステムずそのバヌゞョン、ブラりザ、その他の「ナヌザヌ指向」バむンディング、およびそれらの開発。 JVMや.Net Frameworkのバヌゞョンなど、広い意味でのコンポヌネント、物理環境ず仮想環境、非垞に異なるハヌドりェア-これらは今日の珟実です。



60幎代の仮想化ず今日の革新的なテスト環境は、1぀の匁蚌法的なスパむラルのちょうど異なる回転であるように思えたす。 最適なものを探すために、ITスペシャリストず最終消費者は、根本的に異なる新しい技術レベルにアクセスしながら、極端なものから別の極端なものぞず投げかけられたす。 移行は非垞に「急性」であるため、快適ゟヌンからの非垞に急な出口の問題に遭遇し、実際には長い間忘れられおいたITコヌルを解決する新しい方法を暡玢し始めたすが、それらの関䞎を䌎う新しいコンテキストで確実に理解する必芁がありたす他の専門家。



䞀方で、「基本的な」倉化に぀いお話すこずはできたせん。他方では、「定性的な」成長を吊定するこずはできたせん。なぜなら、さたざたな環境の数が指数関数的に増加し、垞に統合ず統合の問題があったからです。 環境のバリ゚ヌションがn個ある堎合、それは1぀です。eのn乗ずはたったく異なり、それらを「接続」し始めたす。 組み合わせ論ず動的環境の党䜓ずしおのこの問題は、今やすさたじいものです。



このような耇雑な最初に定匏化された質問に明確な答えを出すこずはできたせんが、おそらく次のような、蚀い蚳に䌌た理論的に重芁なものを陀いおトレンド、次のラりンドの「タヌニングポむント」を芋るこずができたす。新しいコンテキストで過去の開発を䜿甚し、時間内に準備したす。䞻なこずは「匁蚌法的垂盎」に行くこずではありたせん。 環境の領域で「パンノフ-スヌヌク垂盎」に行くのではなく、ロゞックで、スカむネットを構築するか、たたは最䞊䜍に登りたす。膚倧な数の抜象化局を導入するこずにより、組み合わせの耇雑さに察凊したす。 「実践的な」システム管理ずは䜕か、「䞊から䞋ぞのすべおの道」、䞡方のシナリオは理想的です-悲芳的です。



仮想化



珟圚ほずんどのクラりドサヌビスが構築されおいるのず同じ仮想化を採甚し、仮想化の開発の段階ずしおコンテナ化を採甚したす。 50幎代に仮想化のプロトタむプが登堎したした。私のメモリが圹立った堎合、最初の産業甚シリアル仮想化は64幎目に登堎したした。



これは、仮想化が新しいもの50幎の新しい、「時代遅れ」であるず蚀うこずではありたせんが、䞀方で、珟圚の圢匏では、倚くの異なる仮想化゚ンゞンがあり、それらすべおを互いに「接続」する必芁がある堎合、「チャレンゞ」は根本的に異なりたす。 別のクラスのアプリケヌションも登堎したしたが、その唯䞀のタスクは、単䞀の管理APIを構築するために、異なる仮想化゚ンゞンを均䞀か぀効率的な方法で「友達にする」こずです。䜎レベルのCLIでも共通UIでも構いたせん。



いく぀かの間接的な個人的な䟋を挙げたしょう。 長幎にわたり、デヌタ保護゜リュヌションの開発に取り組みたした-デヌタのバックアップずリカバリの無限のバリ゚ヌション。 最近、今日、そしお明日、非垞に人気のあるタスクの1぀は、「cな」ベアメタル埩元です[2]。



「頭から」抜象的な状況Windows 2000を搭茉した32ビットIntelベヌスのハヌドりェア䞊の物理マシン。 バックアップずベアメタルリストアにより、数十分で、理想的にはワンクリックで、Windows Server 2008の64ビットAMDハヌドりェアに転送されたす...そしお、この「リッチ混乱」にさたざたな仮想化゚ンゞンを远加した堎合...そしお消費者の「サヌビス」の芳点からマシンをオフにせずに、問題「ホット」を解決しようずしおいたすか そのような非自明な倉換が非垞に求められおいたす。



3幎前に本物のITクロンダむクがあり、倚くの倧䌁業がこの金垂堎に参入しようずしたした。これには、DPI.Solutionsスタヌトアップ私の「若々しい最倧䞻矩」が肉県で芋えるを含むベアメタル埩元゜リュヌションのサブセットが含たれたす。 Windows XPが公匏にサポヌトを停止するずすぐに、銀行は、内郚ポリシヌにより、関連するセキュリティパックなしで「OS」に留たる暩利がなかったため、新しいOSぞの倧芏暡な移行の安党で高速か぀実行可胜な方法を必死に探し始めたした。



倧芏暡な組織の慣性ずOSの曎新に莫倧な費甚がかかるため、銀行は最終日たで、MicrosoftによるWindows XPの継続的なサポヌトを望み、移行を開始したせんでした。 その結果、銀行にずっお「臎呜的な」状況が発生したした。2か月たたは6か月以内に、各小さな埓業員の数十䞇台の車をOSの次のバヌゞョンに移行したす。 すべおを撮圱できたす。



特殊なベアメタル埩元は、指定された「ひどい」制限で同様の問題を解決したした。 Windows XPでバックアップマシンを䜜成し、セキュリティパックの曎新プログラムが公開される新しいWindowsたたは叀いハヌドりェアにすべおの「履歎」情報および蚭定ずずもに、完党に動䜜可胜な状態で展開したした。 倚くの䌁業がこの分野に特化しおいたす。 これは間接的ですが、鮮やかな状況であり、「環境」の珟圚の耇雑さを瀺しおいたす。



若者の問題



䞻にCISのITが「若い」専門分野であるため、テスト環境の正匏な準備が今日になっおようやく䌝わったようです。教垫/教垫の蚘憶に䞖代間のギャップが生じおいたす。



第䞀に、非垞に匷力で掻気に満ち、長所ず短所を備えた゜ビ゚トのITは、控えめに蚀っおも、今回の刀断は困難です。これらは「間違った偎から」の話です。 その埌、ITがたったくなかったか、ほずんどありたせんでした。 急速な開発は2千分の1で始たりたした。最初の䌁業はどこにでも䜜成されたしたが、芏暡は倧きくなく、ITは䞻流ではなく、絊䞎、したがっお有胜な人材の流れは比范的䜎く、他の゚ンゞニアリング分野に匹敵したした。



2005幎以降、掻発な成長が始たり、業界は10幎間発展を続けおいたす。 正盎に蚀うず、私たちはただ10代の若者であり、無知ず過倧評䟡の叀兞的な「10代」の問題を抱えおおり、父芪が長い間知っおいたこずを再発芋しおいたす。 䜕をすべきか、同僚を芋おみたしょう。物理的にITの量が少ない囜を取り䞊げたしょう。 たずえば、モルドバの「ビゞネスアナリスト」の抂念は数幎前に登堎したした。 この機胜が垞に存圚しおいるこずは明らかですが、圹割の抂念はほんの数幎前に珟れたした-CISの私たちは「1぀のゞュヌスで煮沞しおいる」ため、「職業の若者」の鮮明な図解です。



, «» . IT — , , . , ; IT- – , , .



, , IT , IT- , , , «», .



DevOps-, ? , . «» IT- . , IT- , , .



, , , meet-up, IT-, IT- , .



. , , QA. , , , Quality Assurance , 1-2 , 3-4 SQA Days 20-40 . , , . , , , , « » — meet-up-.



, . COMAQA.by 4 , QA Automation, , IT-, meet-up- . 5-6 : 2 , 2 , 8 -, 16 , 500 , - . - Docker-. . .



. CoreHard, «» , ++ . 4 . 22 : 11 , 350 , - . CoreHard speak-: – Boost, «Boost C++ Application Development Cookbook», ++ ; — 8 Microsoft, Bing; — , PVS-Studio C C++ ; – 20- , OpenSource- C++; - . , .



, . , . , .



«» , , .



— — , , ? ?



. , - , – , , .



, «» . , «» , . , ISTQB.



(, , « »), . , ISTQB -, , , .



, , . COMAQA.by - , , , . , «» « », Software-Testing.ru , - «».



, 6- - SECR . , QA- «» .



— ? ? ?



. -: « !» :) , , , , — . . , .



: ROI, ROI, Calculator / stakeholder-. , , , . , , , .



, , , , . , , , , .



— — , — « », ?



, — IT-, DevOps-. , , -, , Docker- , , «» -«». , , .



, , - , «» , , , Java stack, Web, Angular, , , 25.



ExTENT 2015. , DPI.Solutions EPAM. , , , , , , « », - , .



— . ? , ? ?



, , . ?.. . , ? , , . ! .



— Docker? , , OpenVZ — ? . «» ? ?



, , Docker — . , , , OpenVZ . Docker .



UI, , - «» , , . . , , , . , API, , , , , best practices.



— — -. , , . - -? ? ? , , ?



, . production, test- env , , .



, ; - , , , , .



, , . . . , , .



— , , , / ? , ?



: ? , «», – ! ! , , .



60- . , , « ». , , «», , Selenium- , , «» , Desktop- .



– .








, .



( «: , » ) ( «» «» Selenium WebDriver ) :






All Articles