1

テストの助けが必要です!:)

私は小さな webdev 会社で働いており、アプリケーションの品質を担当しています。

私たちは時々 e コマース サイトを構築しますが、顧客はそのサイトに依存してお金を稼いでいるため、完全にバグがないようにする必要があります。残念ながら、過去に問題が発生したため、テスト手順を強化することを検討しています.

このようなものをテストする方法について、誰かがアドバイスを持っているかどうか疑問に思っています. Selenium のようなものを使って、すべて手作業で行うのか、自動化するのか? または他の方法。

私たちのアプリケーションは常に LAMP (Linux、Apache、MySQL、PHP) です。クレジット カードの処理、送料の計算、割引などの場合を除いて、非常に複雑になることはありません。

推奨事項はありますか?

ありがとう!

4

2 に答える 2

1

テストに「正解」「不正解」はありません。テストは芸術であり、何を選択すべきか、どれだけうまく機能するかは、プロジェクトや経験によって大きく異なります。

しかし、プロのテスター エキスパートとして、自動テストと手動テストを健全に組み合わせることをお勧めします。

自動テスト

  • 単体テスト
    PHPUnit を使用して、クラス、関数、およびそれらの間の相互作用をテストします。
    http://phpunit.sourceforge.net/

  • 自動化された機能テスト
    可能であれば、多くの機能テストを自動化する必要があります。一部のフレームワークには、機能テストが組み込まれています。それ以外の場合は、ツールを使用する必要があります。Web サイトやアプリケーションを開発している場合は、Selenium を検討することをお勧めします。
    http://www.webinade.com/web-development/functional-testing-in-php-using-selenium-ide

  • 継続的インテグレーション
    CI を使用して、チームの誰かがプロジェクトにコミットするたびにすべての自動テストが実行されるようにします。
    http://martinfowler.com/articles/continuousIntegration.html

手動
テスト 私は自動テストが大好きですが、手動テストの代わりにはなりません。主な理由は、自動化されたものは言われたことしか実行できず、合格/不合格として表示するように通知されたことを確認することしかできないためです. 人間はその知性を利用して、他の何かをテストしているときに障害を見つけたり、疑問を投げかけたりすることができます。

  • 探索的テスト
    ET は、プロジェクトの欠陥を見つけるための非常に低コストで効果的な方法です。それは人間の知性を利用し、私が知っている他のどのテスト手法よりもプロジェクトについてテスター/開発者に教えます。テスト環境にデプロイされたすべての機能を対象とした ET セッションを行うことは、問題をすばやく見つける効果的な方法であるだけでなく、楽しく学習するための良い方法でもあります。
    http://www.satisfice.com/articles/et-article.pdf

この回答は、私が別の質問に回答したものと (ほぼ) 同じです。あなたに役立つかもしれない他のいくつかの良い答えがあったので、その質問をチェックしてください. 使用できるテスト方法をどのように決定できますか?

于 2010-01-25T19:36:51.420 に答える
0

一般に、手動テストと自動テストのバランスの取れたアプローチをお勧めします。すべてのテストを自動化することはできず、自動化されたテスト スイートを拡張するには時間がかかるため、手動テストは常に存在します。最初のステップとして、私は通常、すべてのビルドで実行できるスモーク テストを自動化することをお勧めします。それは通常、あなたに良い価値をもたらします。その後、アプリケーションのよりリスクの高い領域に集中することをお勧めします。これらは、扱いにくいアプリの領域 (あなたが言及した処理、配送、割引取引など) や、過去にバグがあった可能性があります。

于 2010-01-25T15:31:51.880 に答える