タグ付けされた質問 「testing」

そのシステムの予想される動作に対するソフトウェアシステムの動作の確認。

7
テストに時間がかかる場合にトランクを安定させる方法は?
3組のテストスイートがあります。 実行に数時間しかかからない「小さな」スイート 複数時間かかる「中」のスイートで、通常は毎晩(毎晩)実行されます 実行に1週間以上かかる「大きな」スイート 短いテストスイートもたくさんありますが、ここではそれらに焦点を当てません。 現在の方法論は、トランクへの各コミットの前に小さなスイートを実行することです。次に、ミディアムスイートが毎晩実行され、午前中に失敗したことが判明した場合は、昨日のコミットのどれが原因であるかを特定し、そのコミットをロールバックして、テストを再試行します。大規模なスイートでは、同様のプロセスが、毎晩ではなく毎週のみ行われます。 残念ながら、ミディアムスイートはかなり頻繁に失敗します。つまり、トランクが不安定になることがよくあります。これは、変更を加えてテストするときに非常に煩わしいことです。トランクからチェックアウトするとき、それが安定していることを確実に知ることができず、テストが失敗した場合、それが私のせいかどうかを確実に知ることができないので、それは迷惑です。 私の質問は、トランクを常に最高の状態に保つような方法でこれらの種類の状況を処理するためのいくつかの既知の方法論がありますか?例:「特別な事前コミットブランチにコミットし、夜間が経過するたびにトランクを定期的に更新する」。 そして、それがSVNのような集中化されたソース管理システムであるか、gitのような分散型システムであるかは重要ですか? ちなみに、私は物事を変更する能力が限られているジュニア開発者ですが、私が経験しているこの痛みに対処する方法があるかどうかを理解しようとしています。

7
検証と検証はテストプロセスの一部ですか?
多くのソースに基づいて、私はテストの目的ができるだけ多くのバグを見つけることであるとは信じていません-私たちはそれが機能するか機能しないかを確認するためにテストします。例えばfollowintはISTQBからのテストの目標です: (ソフトウェア製品)が指定された要件を満たしていることを確認します(その検証だと思います) (ソフトウェア製品)が目的に適合していることを示す(これは検証だと思います) 欠陥を検出する テストは検証、検証、欠陥検出であることに同意します。あれは正しいですか?

2
リレーショナルデータベース回帰テストのデータ品質
私は、ミュージアムのアクセッション、寄贈、貸与、またはその他の方法で取得したアーティファクトを追跡するために使用されるオープンソースのミュージアムコレクション管理Webアプリケーションに取り組んでいます。 これには、(以前の経験と比べて)かなり大規模なデータベースの設計と作成が含まれ、さまざまな種類のさまざまな情報(アーチファクト情報、場所の変更情報、個人の連絡先情報、写真など)が格納され、柔軟で簡単に拡張できる必要があります。 。 私は大学の学位を取得したばかりで、データベースの設計に関しては専門家ではないので、自分が持っているものが「機能する」ことを確認するための完全なテストスイートを作成したいと思っています。 私はデータベースのテストを読み、データベースに関する回帰テストについて言及しているいくつかの記事に出くわしましたが、これがすべてに関係していることを完全には理解していません。Dr.Dobbsでこの記事を読んだことで、データベース内のロジックが正しいことを検証することが、必要なテストの1つであることを理解しています。したがって、特定のデータをデータベースに挿入するテストを作成し、それをクエリでフォローアップして、データベースから正しいデータが返されることを確認します(すべての適切なトリガーまたはビューが機能していることを確認します)。 混乱は、「データ品質」のテストについての言及で生じます。上記の記事で、著者はテストで以下を検証したいと述べています: 列ドメイン値のルール 列のデフォルト値のルール 価値存在ルール 行の値のルール サイズルール これにはどのような種類のテストが含まれ、どのように実装されますか?また、これはデータベースのテストスイートを初めて作成するのですが、テスト開発をガイドするために開始する方法/場所、または実行できるプロセスに関する優れたガイドラインはありますか?

9
プロの開発者として、単体テストを記述しないことは許容されますか?[閉まっている]
現在のところ、この質問はQ&A形式には適していません。回答は事実、参考文献、専門知識によって裏付けられると期待していますが、この質問は、議論、議論、投票、または拡張ディスカッションを求める可能性があります。この質問を改善でき、再開できると思われる場合は、ヘルプセンターにアクセスしてください。 7年前休業。 TDD /自動化された単体テストの長所と短所について疑問に思っており、プロの開発者が単体テストをサポートせずにアプリケーションを作成することが受け入れられるかどうかについてのコミュニティの見解を探していますか?

3
Ariane 5のFlight 501の歴史的な影響は何でしたか?
Ariane 5ロケットの処女航海(Flight 501)での打ち上げから37秒後の分解は、歴史上、最も高価なソフトウェアバグの 1つと呼ばれています1: 欧州宇宙機関が10年間と70億ドルを費やして、3トンの衛星のペアを打ち上げるたびに軌道に打ち込むことができる巨大なロケットであるアリアン5を生産しました。 昨年6月にロケットがその初飛行に1分もかからず爆発し、フランス領ギアナのマングローブの沼地に燃えるような瓦礫を散布したのは、64ビットの数値を16ビットの空間に詰め込もうとする小さなコンピュータプログラムだけでした。 1つのバグ、1つのクラッシュ。コンピュータサイエンスの記録に記録されているすべての不注意なコード行の中で、これは最も壊滅的に効率が良いものであると言えます。ロケット工学の専門家へのインタビューと宇宙機関のために準備された分析から、算術エラーから完全な破壊への明確な道が現れます。 Flightの501の失敗とその後の調査は、安全上重要なシステムとソフトウェアテストの研究に影響を与えた大きな変化は何ですか? 私はバグ自体の説明を探しているのではなく、失敗の調査に触発された、または直接関連した調査という点での、バグの歴史的な影響の説明を探しています。たとえば、このペーパーでは次のように結論しています。 静的分析を使用して、次のことを行いました。 変数の初期化を確認し、 シェア変数の潜在的なデータアクセス競合の完全なリストを提供します。 Adaセマンティクスから潜在的な実行時エラーを徹底的にリストします。 私たちの知る限り、これはブールベースおよび非ブールベースの静的解析手法を使用して産業用プログラムを検証するのは初めてです。 同様に、この論文(pdf)は次のように述べています Ariane 5ランチャーとARDの組み込みADAソフトウェアの静的分析には、抽象解釈ベースの静的プログラム分析が使用されています。静的プログラムアナライザーは、スカラーや浮動小数点のオーバーフロー、配列のインデックスエラー、ゼロによる除算や関連する算術例外、初期化されていない変数、データ競合などのランタイムエラーの確定性、可能性、不可能性またはアクセス不能性の自動検出を目的としていますアナライザーは、Ariane 501フライトエラーを自動的に検出できました。組み込みの安全性クリティカルソフトウェア(航空電子工学ソフトウェアなど)の静的分析は非常に有望です。 この単一のイベントがソフトウェアテストのアプローチとツールに与えた影響を徹底的に説明したいと思います。 1 70億ドルという数字は、おそらくAriane 5プロジェクトの総コストを参照していると、ウィキペディアは、失敗により3億7000万ドル以上の損失が発生したと報告しています。それでもかなり高価な失敗ですが、70億ドルという数字にはほど遠いものです。
9 testing  history  bug 

1
最初のMalbolgeインタープリターはどのようにテストされましたか?
ウィキペディアによれば、マルボルジュが到着したとき、最初のマルボルジプログラムが登場するまでに2年を要したため、理解が非常に困難でした。 これが真実である場合、最初のMalbolgeインタープリターはどのようにテストされましたか(Malbolgeプログラムが与えられたときにそれが正しいことを行ったかどうかを確認するため)?まったくテストされましたか?
9 testing 

4
どうして何もできないの?
私は中規模の会社の小さなチームで働いています。そのほとんどはソフトウェア開発に関与していません。私は最新かつ最も経験の浅い開発者であり、開始する前にソフトウェアの専門的または学問的なバックグラウンドを持っていませんでしたが、私の入力がどれほど尊重されたかに非常に満足しており、私のキャリアの早い段階で真剣に受け止められたことに感謝しています。 それでも、私はこの寛大な量の放送時間でもっと多くのことをすべきだと感じています。チームとして、物事を成し遂げるのに苦労しているようです。状況を改善するために何か提案できるようになりたいと思います。それが良いアイデアだったら聞いてもらえると思いますが、何を提案すべきか途方に暮れています。 問題として特定できるものは次のとおりです。 手元のタスクの仕様はまばらです。これは、管理がボトルネックであり、私たちが望むほど詳細な要件を解決するために費やすお金や人がいないためです。また、開発中のソフトウェアは調査対象であり、その有効性を判断するために実証および使用されるまで正確な方法が明確ではないためです。 Lead Devは、彼が最近すべてを「プロトタイピング」していると主張し始めたところまで彼が「プロトタイピング」と呼んでいるものを非常に気に入っています。多くの場合、彼がこの演習から何を期待しているのかは明確ではありません。「実際の」実装は、プロトタイピングに時間がかかりすぎるという彼の主張のために、苦しみます。私はこのねじれた論理を解くことができるようになり始めていないので、試してみたいと思いませんか。 モデラーは望ましい方法論についてすべてを正確に詳細に教えてくれることが期待されており、彼らが生み出すものは理論的に完璧であるという絶対的な信頼に基づいています。これはほとんど真実ではありませんが、この状況を修正するためのアクションは取られません。モデリングの側の誰も、行動を起こそうな構造化された方法で懸念を提起したり、ベストプラクティスを適用する際のガイダンスを求めたりすることはありません。彼らの受動性についても何も行われません。 私は以前にチームでTDDをプッシュしようとしましたが、それは私にとって新しいものであり、私の仕事を監督している人はそれを許容する用意がある一方で難しいと感じましたが、他の誰からも熱意はありませんでした。機能を詰め込んで仕上げるのではなく費やす時間を正当化することはできないため、このアイデアは(現時点では)放棄されています。私はそれが再び取り上げられないのではないかと心配しています。 現在、継続的インテグレーションサーバーがありますが、ほとんどの場合、数時間の回帰テストを実行するためにのみ使用されています。フルカバレッジの単体テストと統合テストも実行する必要があることはオープンなままですが、現時点では誰も作成していません。 リード開発者と一緒に品質の問題を提起するたびに、「機能Aのテストは簡単です。機能Bはユーザーにとって非常に重要ですが、テストが難しいため、機能をテストするべきではありません。 A '。もう一度、私はこの論理を解き明かそうとして進んでいません。 ....ふw。そんなふうに言うと、思っていたよりもずっと悪く見えます。結局のところ、これは助けを求める叫びだと思います。

3
アジャイル開発デプロイメントプロセス。QAとビジネスオーナーはどこでテストしますか?
私は最近、SVNまたはGITを使用したさまざまなWebアプリケーションのデプロイメントプロセスについて、多くの記事を読んでいます。 アジャイルの多くのフレーバーの方法と同様に、マスターまたはトランクにコミットしたものはすべて本番環境で使用できると想定されています。GitHubとEtsyの両方(http://codeascraft.etsy.com/2010/05/20/quantum-of-deployment/)は、これらはこれに基づいて機能すると述べています(ただし、Etsyには実際にはステージング環境があります)。 このプロセスは、すべての単体テストとCIテストが実行されていることを前提としています。ローカルおよびCIでテストを実行し、トランクにコミットします。SO、この時点であなたのコードは技術的に健全です。 あなたのコードは技術的には正しいかもしれませんが、ユーザー/機能テストは、特にフロントエンドテストに関して、より多くのバグを発掘するかもしれません。 私の質問はこれです。QAおよびビジネスオーナーは、実装した機能の変更をどこでテストしますか?トランクにコミットする前のローカルの開発マシン、またはQA /ステージングマシンで? トランクから実行されるステージングマシンがあり、トランクにコミットされたすべてのコードが本番環境で使用できると想定している場合...ええと、どの時点で、コードはサインオフされ、技術とビジネスの両方から本番環境に移行するのに適しています。視点?ステージングマシンが1つだけで、多くの開発者がいて、そこにコードがQAされる場合、多くの開発者の変更がサインオフを待機している可能性があるため、トランクからどのように展開できますか。 他の人がこれにどのように取り組んだか聞いてみたいと思いますか?

5
テスト駆動開発とホワイトボックステストスキルの向上
私は入学直後の入門レベルのJavaプログラマーです。J2SEの知識と経験は豊富です。Javaホワイトボックステスターに​​なるためのスキルを向上または調整する方法について誰かが私にアドバイスできますか?幅広い入力を歓迎します。 そして、テスト駆動開発とは何ですか?
9 java  testing  qa 

6
開発を停止してQAを開始する必要があるのはいつですか?
2人の開発チームのために、完全な機能仕様を作成します。私たちはプロのテスターはおりませんが、利用可能なヘルプデスク担当者の助けを借りて「QAテスト」を実行するためにドラフトを作成しました。 これまでに、機能の完全なチャンクが機能しない、またはコードが配信されないという仕様に問題があるという問題がありました。 私の質問は次のとおりです。開発者はQAチームに手渡しているコーディングをどの段階で停止する必要がありますか?QAチームに引き渡す前に、仕様に照らしてコードをレビューするよう開発者に依頼するのは多すぎますか?

5
時間に敏感なソフトウェアをどのようにテストしますか?
時間に依存するとは、たとえば、月に1回だけ実行されるスクリプト、または継続的に実行され、月に1回だけ特定の出力を提供するスクリプトを意味します。もちろん、多くのケースで単体テストを実行できますが、例外があります(私の理解では)。 私が最近遭遇した例は、毎月2日から最終日に実行されるようにcronジョブを設定することでした。これには、cronタブでシェルスクリプトを使用して、cronの正しい日を取得する必要がありました。 1 0 [shell command] * * [my script] 私はスクリプトに慣れておらず、シェルスクリプトにも慣れていなかったため、月末が来るのを待ってスクリプトが正しく実行されるかどうかを確認する以外に、スクリプトをテストする良い方法はありませんでした(実際、私の解決策はco-私がしたcronとシェルスクリプトについてもっと知っている労働者)。 ですから、時間に敏感なスクリプトをテストするための有用な回避策があるかどうか知りたいです。

4
PHPUnitで仕事を見積もるにはどうすればよいですか?
私は15年間Webサイトプログラミングを行っており、過去5年間はPHPを使用しています。私はいつもしっかりしたコードを書いてきました。ただし、ユニットテストされているコードの80%を主張しているクライアントがいます。クライアントは常に正しいので、PHP_CodeSnifferを使用してコードが正しく表示されることを確認し、PHPUnitでユニットテストを実行する予定です。この経験を通して何かを学びたいと思っています。 これらは使用に適したツールですか?PHPUnitのセットアップと追加コードの記述にどれくらいの時間がかかりますか?これまでと同じように、ウェブページを書いてセルフテストを行うのに約8週間かかります。ユニットテスト(PHPUnit)に4日(10%)を追加すると、それで十分ですか?考え?提案?ありがとう。
9 php  testing 

6
テスターは作業を自動化する必要がありますか?
テストプロセスをセットアップしようとしています。テスト担当者が自動回帰テストを開発する必要があるのか​​、それとも開発者がそれを行う必要があるのか​​と思います。 そして、他のタイプの自動テストはどうですか?テスターはそれらを開発する必要がありますか?

2
デスクトップアプリケーションのUIオートメーションパターンとベストプラクティス
バックグラウンド 現在、MS Officeのプラグインのテストを自動化しています。私たちはVS 2010でコード化されたUIテストを作成しています。「コード化されたUIテストビルダー」ツールを使用できると思いますが、それは実際には私の特定のケースには適していません。 このため、さまざまなアクション機能を追加するUIコントロール/マップごとに、独自のUIマップクラスと拡張メソッドを作成しました。たとえば、ボタンを押すか、UI値をアサートします。 テストケースのシナリオはテストクラスにあります。 私はこの分野の新人であり、自動化テスターとして働くのも初めてです。 質問 プログラミング/設計の観点から、デスクトップアプリケーションのテスト自動化に関するいくつかの優れた実践についての経験とアドバイスを共有してくれる人は親切でしょうか?

3
マイナーな変更または表面的な変更のために失敗しないSelenium(または類似の)のテストをどのように作成できますか?
私は先週かそこらを費やして、セレンを学び、これから立ち上げるWebサイトの一連のWebテストを作成しました。学ぶのは素晴らしく、私はいくつかのxpathとcssのロケーションテクニックを取り上げました。 私にとっての問題は、小さな変更がテストを壊すのを見ていることです-div、id、またはウィジェットを識別するのに役立ついくつかのautoid番号を変更すると、多くのテストを壊します-それは非常に壊れやすいようです。 セレン(または他の同様の)テストを作成しましたか?テストの脆弱な性質にどのように対処しますか(またはテストを脆弱にするのを止めるには)、どのような種類のテストにセレンを使用しますか?

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.