1

手書きのコードと、コード化された UI やその他のツールなどの自動化テスト ツールで記録されたスクリプトの違いを教えてください。よろしく、ラージ

4

1 に答える 1

4

「手書き」とは、手動でコーディングしたことを意味すると思います...

いくつかの理由が分かります。コーディング経験は素晴らしいです。独自のテストをコーディングする場合、使用しているテスト フレームワーク (CodedUI、Selenium など) だけでなく、使用している言語 (Java、C#) についても多くを学ぶことができるため、投資する価値があります。組み込みのフレームワーク メソッドを使用してこれらのテストを手動でコーディングすると、うまく機能し、自動再生ツールよりもはるかに多くの知識を得ることができます。

自動再生ツールは恐ろしいコードを生成する可能性があります。見苦しいコード、不適切な名前、ベスト プラクティスに従わないコード、信頼性の低いロケーション メソッド。

再生ツールは、最も単純な方法で要素を見つけるだけです。これが常に最善であるとは限りません。典型的な例は XPath です。

最も注目すべきは、XPath は強力なツールであり、必要な要素を取得できます (または、少なくとも、XPathを使用できない状況を見つけたことはありません) が、再生ツールは純粋に位置に基づいて恐ろしい XPath クエリを生成します.. .例を見てみましょう。

100 個のフィード アイテムを含むページがあります。特定のアクションの後にフィード アイテムがこのページに表示されていることを確認したいのですが、それが表示されているだけでなく、最初のフィード アイテムでもあります。マークアップが不適切に作成されているため、ID などを使用することはできず、XPath を使用する必要があります。

再生ツールは、次のような非常に奇妙な XPath を作成する場合があります//div[1]/span[2]/table[1]/tbody[1]/tr[10]/[td[2]/a[text()='Test']

奇妙に見えますよね?

これは数回は機能しますが、アプリが別のtr要素をテーブルの一番上に押し込んだ場合はどうなるでしょうか? さて、tr[10] あなたが望む要素ではありませんtr[11].

手動でコーディングすることで、これを説明し、これを回避するロジックを組み込むことができます。再生ツールの調子が悪い。

これらのテストを自分でコーディングすることを強くお勧めします。これを行うのに数年の経験は必要ありませ。以前のプログラミングの学位も必要ありません。時間が必要です。

再生ツールもできることは限られます...テストが失敗したときにスクリーンショットを撮りたいですか? 再生ツールがこれを行うとは思えません。自分でロジックを入れる必要があります。ただし、これは自分で行うのは難しくありません

ビジネス上の理由もあるかもしれません。再生ツールを使用すると、手動テストを自動テストにすばやく変換できますが、信頼性は低くなります。信頼性と速度を高めるために時間を割く必要があります。そもそもそれらを自分でコーディングするのに費やすほうがよい時間。

于 2013-02-12T11:31:39.833 に答える