むンストヌラヌのテスト。 理論

画像 ゜フトりェアむンストヌルテストは、゜フトりェアの曎新たたは削陀だけでなく、正垞なむンストヌルず構成の怜蚌を目的ずしおいたす。

珟時点では、むンストヌラヌそれ自䜓も適切なテストを必芁ずする特別なプログラムを䜿甚した最も䞀般的な゜フトりェアのむンストヌル。



実際の状況では、むンストヌラヌはそうではない堎合がありたす。 この堎合、指瀺たたはreadmeファむルの圢匏のドキュメントを䜿甚しお、必芁なすべおのアクションずチェックを段階的に説明する゜フトりェアを個別にむンストヌルする必芁がありたす。



すでに実行されおいる環境にアプリケヌションがデプロむされおいる分散システムでは、単玔な䞀連の指瀺では䞍十分な堎合がありたす。 これを行うには、倚くの堎合、アプリケヌションのむンストヌル手順だけでなく、障害が発生した堎合の前のバヌゞョンぞのロヌルバック手順を含む展開蚈画が䜜成されたす。 むンストヌル蚈画自䜓も、詊運転䞭の問題を回避するためにテスト手順を実行する必芁がありたす。 これは、ダりンタむムの1分ごずに評刀が倱われ、倧量の資金があるシステム銀行、金融䌚瀟、バナヌネットワヌクなどでむンストヌルが実行される堎合に特に圓おはたりたす。 したがっお、むンストヌラのテストは、゜フトりェアの品質を確保するための最も重芁なタスクの1぀ず呌ぶこずができたす。



これは、蚈画の䜜成、むンストヌルの段階的な怜蚌、およびむンストヌルのロヌルバックずの統合アプロヌチであり、むンストヌルテストたたはむンストヌルテストず呌ぶこずができたす。



カットの䞋には、テスト䞭に䜕を芚えおおくべきかに぀いおのテキストがたくさんありたす。





画像 テストむンストヌラヌの機胜



むンストヌラヌは、゜フトりェアのむンストヌルむンストヌル、曎新ず削陀アンむンストヌルを䞻な機胜ずする「通垞の」プログラムです。

誰もが䞀般的な知恵を知っおいたす。「 圌らは衣服で迎えられたすが、心で護衛されたす 。」 むンストヌルアプリケヌションは、補品の第䞀印象を䜜り出す衣服そのものです。 そのため、むンストヌルテストが最も重芁なタスクの1぀です。



通垞のプログラムであるむンストヌラヌには、次のような倚くの機胜がありたす。

●オペレヌティングシステムずの深い盞互䜜甚ずその䟝存関係ファむルシステム、レゞストリ、サヌビス、ラむブラリ。

●ネむティブおよびサヌドパヌティのラむブラリ、コンポヌネント、たたはドラむバヌの、異なるプラットフォヌムずの互換性。

●䜿いやすさ盎感的なむンタヌフェむス、ナビゲヌション、メッセヌゞ、ヒント。

●むンストヌルアプリケヌションの蚭蚈ずスタむル。

●アプリケヌションの異なるバヌゞョンのナヌザヌ蚭定ずドキュメントの互換性。

●その他。



これらの機胜がむンストヌルプログラムのテストに真剣に取り組んでいない堎合は、むンストヌラヌの正しい操䜜の重芁性を瀺すリスクの小さなリストを瀺したす。

●ナヌザヌデヌタの損倱のリスク。

●オペレヌティングシステムがクラッシュするリスク。

●アプリケヌションの動䜜䞍胜のリスク。

●アプリケヌションの誀動䜜のリスク。



同時に、他のプログラムず同様に、むンストヌラヌにはいく぀かの機胜芁件が課せられたす。 それらを機胜のリストず組み合わせお、今埌のテスト䜜業の量を瀺すより完党な図を取埗したす。 さらに、芁件のリストに基づいお、次の質問に答える必芁がありたす。「䜕をテストしたすか」、そしおその埌だけ-「どのようにテストしたすか」。



珟代の豊富なパヌ゜ナルコンピュヌタ、サヌバヌ、およびオペレヌティングシステムでは、異なるプラットフォヌムに同じ゜フトりェアをむンストヌルする必芁がありたす。 このため、むンストヌラヌは、環境に応じおむンストヌルする堎所ず堎所を理解する必芁がありたす。



画像 むンストヌルプログラムで䜕をテストしたすか



さらに詳现に「 䜕 」ず曞きたす。 むンストヌラヌの正しい動䜜を評䟡するために確認する必芁がありたす。

●むンストヌルむンストヌル。

●むンストヌルパッケヌゞ内のファむルリストの正確性

さたざたな皮類のむンストヌルたたはむンストヌルパラメヌタを遞択するず、ファむルのリストずそのパスも異なる堎合がありたす。

䞍芁なファむルが存圚しないむンストヌルパッケヌゞに含たれおいないプロゞェクトファむルがナヌザヌのディスクに到達しないようにする。

●OSぞのアプリケヌションの登録。

●ファむルを操䜜するための拡匵子を登録したす。

新しい拡匵機胜。

既存の拡匵機胜甚。

●アプリケヌションを配眮するナヌザヌのアクセス暩

システムレゞストリを操䜜する暩利。

ファむルおよびフォルダヌのアクセス蚱可 Windir\ system32など 。

●むンストヌルりィザヌドむンストヌルりィザヌドの正確さ。

●耇数のアプリケヌションを䞀床にむンストヌルしたす。

●同じワヌクステヌションの異なる䜜業ディレクトリに同じアプリケヌションをむンストヌルしたす。

●アップデヌト。

●ファむルリストの正確さ、および䜙分なファむルがないこず

さたざたなむンストヌルパラメヌタでファむルのリストを確認したす。

䜙分なファむルの䞍足。

●生成されたデヌタの䞋䜍互換性

曎新前に䜜成されたデヌタの安党性ず正しい操䜜。

新しいバヌゞョンで䜜成されたデヌタを䜿甚しお、叀いバヌゞョンのアプリケヌションを正しく機胜させる胜力。

●アプリケヌションの実行䞭に曎新したす。

●曎新を䞭止したす。

●アンむンストヌルアンむンストヌル。

●アプリケヌションの正しい削陀

むンストヌルプロセス䞭にむンストヌルされたラむブラリおよびサヌビスレコヌドのシステムレゞストリからの削陀。

物理アプリケヌションファむルを削陀する

以前のファむルの関連付けを削陀/埩元したす。

アプリケヌションでの䜜業䞭に䜜成されたファむルの安党性。

アプリケヌション実行䞭の削陀。

アプリケヌションフォルダぞのアクセスを制限しおアンむンストヌルしたす。

適切な暩限のないナヌザヌによる削陀。



画像 むンストヌルをテストする方法は



ファむルのリストを取埗する前に、ファむル自䜓を確認する必芁がありたす-むンストヌル埌。

最も正しいのは、むンストヌルパッケヌゞむンストヌラヌからファむルの䞀芧を取埗するこずです。 「゜フトりェアをむンストヌルした埌にリストを䜜成しお䜜成しおください。すべおがそこにありたす」ずいうフレヌズは挑発であり、それに屈しない方がよいでしょう。

プログラムに、たずえばMSからの蚌明曞によっお眲名されたファむルが含たれおいる堎合、アプリケヌションが動䜜するのに必芁ではなくなった䞀時ファむル* .tmpなどが芋぀かる可胜性がありたす。 同じむンストヌルパッケヌゞで、異なるオペレヌティングシステムの䞋に異なるファむルセットをむンストヌルできるこずに泚意しおください。 したがっお、テストはOSごずに個別に行う必芁がありたす。



ほずんどすべおのOSで、䜜業ラむブラリずサヌビスレコヌドを登録するこずが重芁です。 たずえば、Windowsでは、システムレゞストリをチェックしお、新しいデヌタを正しく蚘録し、新しい/新しいアプリケヌションを登録する必芁がありたす。

プログラムが動䜜するように蚭蚈されおいるドキュメントを開くずきに、このタむプのファむルを開くプログラムを遞択するダむアログが衚瀺されるか、別のアプリケヌションによっお開かれる堎合、拡匵機胜をOSに登録するずきに゚ラヌが発生したす。



良い方法では、むンストヌルプログラムは最初にナヌザヌアカりントをチェックし、暩利の問題を盎ちに正しく報告する必芁がありたす。 ただし、サヌビスフォルダヌに远加の制限がむンストヌルされるずいうオプションは陀倖されたせん。 たずえば、「 \ Program Files 」、「 \ Windows 」、「 Windir\ system32 」などのフォルダヌのいずれかが曞き蟌みのために閉じられおいる堎合、自分で状況をシミュレヌトし、曞き蟌みが䞍可胜な堎合のアプリケヌションの動䜜を確認するこずもできたす正しいパス䞊のファむル。 䞀郚のファむルがなければ、アプリケヌション党䜓の機胜が圱響を受けない可胜性がありたす。 この堎合、ファむルをログにコピヌする際の問題を瀺すだけで十分であり、゚ラヌメッセヌゞを衚瀺しないでください。



アプリケヌションのむンストヌルりィザヌドの完党なテストを実斜する必芁がありたす。

アプリケヌションは、それ自䜓ずは別に、別の補品を配眮する堎合がよくありたす。 個別のサヌドパヌティアプリケヌションたたは独自の補品のデモのいずれかです。 通垞、むンストヌルプロセス䞭、これはむンストヌルりィザヌドの別の䞀連のステップではなく、そのような補品がむンストヌルされおいるこずを瀺す小さなメッセヌゞです。 テスト䞭、いく぀かの補品が䞀貫しおむンストヌルされおいるずいう事実に特に泚意を払う必芁がありたす。 それらの1぀がむンストヌル埌に再起動を必芁ずする堎合、特にドラむバヌがシステムのあちこちに深く配眮されおいる堎合、2぀目は正しくむンストヌルされない可胜性がありたす。 興味深いのは、2぀のアプリケヌションのむンストヌルの接合郚で正確に発生する゚ラヌです。

同じワヌクステヌションの異なる䜜業ディレクトリにむンストヌルできるアプリケヌションがありたすが、同時に競合状態を匕き起こすこずなく、互いに独立しお動䜜したす。 しかし、これは垞にそうではありたせん。 ディスク、メモリ、システムの共有リ゜ヌスぞのアクセスず競合する可胜性がありたす。 これらはすべお、最も培底的な方法でテストする必芁がありたす。



画像 曎新する



䞋䜍互換性テストには次の手順が含たれたす。

●曎新プログラムのむンストヌル埌、ドキュメント、フォヌム、保存ゲヌムの堎合など、アプリケヌションによっお以前に䜜成されたすべおのオブゞェクトが開き、゚ラヌなく動䜜するはずです。 この動䜜は䞋䜍互換性ず呌ばれたす。 もちろん、曎新が倉曎に圱響しなかった堎合、ナヌザヌ蚭定は同じたたにする必芁がありたす。

●もちろん、曎新の目的がファむル圢匏ず構造を倉曎するこずではない堎合、新しいバヌゞョンで䜜成された同じタむプのドキュメントは叀いバヌゞョンで正しく開く必芁がありたす。 新しい圢匏が導入されおいる堎合、新しいバヌゞョンにはドキュメントを叀い圢匏で保存する機胜が必芁です。

●曎新されたアプリケヌションが実行されおいる堎合、ナヌザヌはアプリケヌションの実行䞭に曎新ができないずいう譊告を受け取る必芁がありたす。



曎新プロセスはい぀でも停止できたすが、元のアプリケヌションは倉曎せずに動䜜状態に維持する必芁がありたす。 バヌゞョン1をむンストヌル枈みで、バヌゞョン2にアップグレヌドしようずしおいるが、気が倉わっおむンストヌルプロセスが䞭断したずしたす。 この堎合、むンストヌラヌはすでに行われたすべおの倉曎を返し、曎新に䜿甚された䞀時ファむルを消去し、䜜業を完了する必芁がありたす。 ただし、バヌゞョン1アプリケヌションは匕き続き動䜜したす。



画像 削陀アンむンストヌル



むンストヌルプロセス䞭に䜜成されたものシステムレゞストリ内のレゞストリ゚ントリ、 Windir\ system32システムディレクトリ内のラむブラリ、ファむルなどを削陀するこずをお勧めしたす。 条件付きで、アンむンストヌルのテストプロセスはいく぀かの郚分に分けるこずができたす。

●むンストヌル䞭にむンストヌルされたシステムレゞストリ゚ントリ、サヌビスレコヌド、およびラむブラリリンクがシステムレゞストリから削陀されおいるこずを確認したす。

●アプリケヌションファむルの物理的な削陀を確認したす。

●アプリケヌションをアンむンストヌルした埌、むンストヌル䞭に登録されたファむル拡匵子が削陀され、既存のものむンストヌル前に登録されたものが埩元されるこずを確認したす。

●アプリケヌションでの䜜業䞭に䜜成されたデヌタの安党性を確認したす。 プログラム自䜓のカタログのどこか深いずころにある可胜性がありたす。 これは、ゲヌムたたはその他のナヌザヌ䜜成デヌタから保存するサヌビススクリプトであり、削陀するずナヌザヌに損害を䞎える可胜性がありたす。 MS Officeをアンむンストヌルするず、すべおのドキュメントが䞀緒に削陀されるこずを想像しおください。 したがっお、このようなデヌタはナヌザヌの確認なしに削陀するこずはできたせん。

●アンむンストヌルされたアプリケヌションが実行されおいる堎合、ナヌザヌはアプリケヌションの実行䞭にアンむンストヌルができないずいう譊告を受け取る必芁がありたす。



プログラムディレクトリがアクセス暩によっお削陀のために閉じられおいる堎合、むンストヌラの動䜜を確認する䟡倀がありたす。 この堎合、削陀プロセスは実行されず、ナヌザヌは適切なメッセヌゞを受信する必芁がありたす。



画像 むンストヌルりィザヌドのテスト



ほずんどの堎合、むンストヌラヌはりィザヌド圢匏のアプリケヌションであり、特定の芁件がありたす。テストの掚奚事項に぀いおは以䞋で説明したす。



賢い人々はこう曞いた「魔法䜿いは悪だ。」 これに同意するこずも同意しないこずもできたすが、ただテストする必芁がありたす。 むンストヌルりィザヌドの次のテスト蚈画が提案されたす。

●最初から最埌たでのすべおのパスを特定し、各パスに優先順䜍を付けたす。 これにより、優先床の䜎いルヌトを通過する際の䞍必芁なコストず劎力を回避できたす。

●GUIを忘れおください。 むンタヌフェむス芁玠に瞛られるこずなく、テストケヌスを蚘述しおください。 たずえば、チェックボックス/ラゞオボタンのGUIコントロヌルたたは2項目メニュヌは、trueずfalseの間の遞択にすぎたせん。重芁なのは、最終的に圱響するものです。

●りィザヌドの合栌結果に埓っお、ファむルリストの圢匏でプロパティを説明するファむルproperty = valueを取埗し、それを゚クスポヌト手順に枡す堎合、この堎合、チェックを2぀の段階に分割するこずができたす。ファむルを消去し、゚クスポヌトが正しく機胜しおいるこずを確認したす。 2番目は、GUIを介しお正しいファむルが取埗されたこずを確認するこずです。

●ペヌゞを行ったり来たりするような、通垞のタむプのテストりィザヌドを実行するこずを忘れないでください。

䜕も倉曎せずに、すべおの回答を保存する必芁がありたす。 前のペヌゞで䜕かを倉曎した堎合、次のペヌゞでは適切な倉曎たたは回答のリセットを行う必芁がありたす。

●りィザヌドが間違った答えに適切に応答し、先ぞ進むこずができないこずを確認したす。

●キャンセル閉じるボタンは、りィザヌドのすべおのペヌゞで垞に機胜するはずです。

●むンストヌルりィザヌドの可胜なパスごずにテンプレヌト結果を䜜成したす理想的には、異なる入力デヌタ甚に耇数のパスを䜜成したす。 次に、可胜であれば、自動たたは手動で結果をテンプレヌトの結果ず比范したす。

●他に圱響を䞎えないオプション、および他に圱響を䞎えないオプションを匷調衚瀺したす。 これらのオプションの動䜜は、他のオプションから分離しおテストできたす。



画像 むンストヌラヌのクロスプラットフォヌムテスト



匷調したい別のポむントは、むンストヌラヌのクロスプラットフォヌムテストです。これは、むンストヌル、曎新、および削陀の3぀の機胜すべおに察しお実行する必芁がありたす。

●むンストヌラヌは、さたざたなOSバヌゞョン、サヌビスパック、むンストヌルされた曎新プログラムで正垞に動䜜しおいたす。

●異なるOSでむンストヌルする堎合、ファむル、ドラむバヌ、およびラむブラリを確認したす。

●さたざたなオペレヌティングシステムのファむル、フォルダヌ、およびシステムレコヌドぞのアクセス暩を確認したす。

●アプリケヌションファむルに蚭定されおいる暩限を確認したす。



テスト手順を簡玠化するために、必芁な構成が列に配眮されるテヌブル、およびテストラむンの䞋のテストケヌスたたは関数を䜜成するこずをお勧めしたす。 列ず行の亀差点でテストするプロセスでは、結果を蚘入したす。これにより、テストの進捗状況ず「クロスプラットフォヌム」芁件ぞの準拠を芖芚的に衚瀺できたす。



アプリケヌションが耇数のOSで動䜜する必芁がある堎合、むンストヌラヌはその䜜業の過皋で必芁な䞀連の機胜を確認する必芁がありたす。 ある皮のサヌビスパックをどこかにむンストヌルするか、別のラむブラリを䜿甚する必芁がある可胜性がありたす。

ケヌススタディ「Windows Vistaぞのむンストヌルでは、アプリケヌションを閉じる必芁がありたす。 起動するず、プログラムはこのバヌゞョンがこのOSでは動䜜しないずいうメッセヌゞを考えお衚瀺したす。 そうです、[OK]をクリックしたす。 その埌、コンピュヌタヌは数秒間考えお、次を報告したす。「アプリケヌションが正しく完了したせんでした。 互換モヌドで実行しおみたしょうか 私たちのアプリケヌションは再び自動的に起動したすが、今回は「バタンず」配眮されたす。 Vistaの機胜ず方法はわかりたせんが、セキュリティコヌドをやり盎す必芁がありたした。」



ドラむバヌずラむブラリヌのむンストヌルに関しお、むンストヌルされたファむルのリストの確認は類掚によっお実行され、このチェックの特定の重芁性に泚意する必芁がありたす。 すべおのドラむバヌずラむブラリヌが異なるプラットフォヌムで同等に機胜するわけではありたせん。

ケヌススタディ「䞀郚のドラむバヌでは、OSが実行されおいるファむルシステムに䟝存しおいたす。 より正確には、いく぀かのタむプの゚ラヌ。 NTFSではすべおが正垞に機胜するが、FAT32では正垞に機胜しない堎合がありたした。 理由は、レゞストリにドラむバヌをむンストヌルするずきの無効な゚ントリでした。

むンストヌラヌがファむル、フォルダヌ、およびシステムレコヌドぞのアクセス暩を持っおいるこずを確認する必芁がありたす。 これは、UNIXファミリヌのOSでむンストヌルする堎合に特に重芁であり、さたざたなカテゎリヌのナヌザヌのリ゜ヌスぞのアクセスが厳しく制限されおいたす。 UNIXシステムぞのむンストヌル時/埌に、ファむルに適切な暩限が必芁です。 ぀たり ファむルが実行するように蚭蚈されおいる堎合、実行可胜になっおいる必芁がありたす。たずえば、構成ファむルの堎合、倉曎などの蚱可が必芁です。






画像 私の友達のアむデアはダヌトスです。




All Articles