IOSおよびAndroidでモバイルオートメーションでAppiumを使用しました。Calabashを提供する利点について、および両方のツールで生成されたスクリプトに共通点があるかどうかを知りたいですか?
私はこのリンクをたどりました: Appium VS Calabash
私は自動化にひょうたんとアピウムの両方を使用しました。アピウムはひょうたんよりも多くの利点があります。
Calabashに対するAppiumの利点: 1. Java、Python、C#、phpなどの複数の言語でコードを記述できます。ただし、CalabashはRubyのみを使用するように制限しています。
Appiumには、OpenNotification()、StartActivity()、InstallAppなどの多くの定義済みメソッドが付属しています。Calabashには、そのような定義済みメソッドはありません。
Appiumのセットアップは、Calabashに比べて非常に簡単です。
ひょうたんでは、テストを実行するたびにデバイスにアプリがインストールされます。ただし、appiumには、毎回アプリをインストールする必要がない機能があります。デバイスに以前にインストールされたアプリで動作します。
Appiumは、ネイティブアプリとハイブリッドアプリの両方で動作します。
アピウムには多くの利点があります。これがお役に立てば幸いです。
両方試してみてください。
ひょうたんを始めるのが簡単だと思いました。 Appiumにかかる半分の時間で、セットアップからCalabashでの動作テストまでの完全なユーザーフローテストを実施しました。 xpathを使用したくない。レイアウトの何かが変更されると、テストがもろくなり、破損しやすくなります。 Appiumは主にxpathの使用を必要とします。 Calabashを使用すると、テキストで要素を選択することにより、アクションと相互作用を促進できます。同じテキストが通常はデザインや要件に含まれているため、私はこれを好みます。
他の投稿の一部のコメントは正確ではありません。 Calabashは、表面を超えて見ない限り、毎回アプリをインストールする必要はありません。それを有効/無効にする簡単な方法があります。引数を渡すことに基づいてどちらかの方法で実行されるロジックがあります。 Calabashには、アプリを操作するのに十分な既存のメソッドがあります。要素の相互作用をいじることができる組み込みのデバッグがあり、それらの同じ呼び出しをコピーしてテストコードで再利用できます。 getgauge.ioと一緒に使用すると、組み込みのCucumberに似たレポートが提供されますが、マルチスレッドで実行したり、feature/specファイルを作成したりするのが簡単です。
ツールと自分の両方に公平であること。それぞれに簡単なプロジェクトを作成して、自分で試してみてください。他人の意見だけに基づいて決定をしないでください。
Calabashは相互作用する要素にクエリを使用しますが、AppiumはSeleniumの検索機能を使用するため、自動化スクリプトには共通部分はありません。
Calabashの最も優れた点は、 cross-platform フレームワークを使用してiosおよびAndroidアプリケーションを同じ機能ファイルと自動化コードの大部分で自動化することです。ただし、最悪の部分は、CalabashがRubyのみであることです。
CalabashとAppiumの違いの詳細については この投稿 を参照してください。
すでに違いを読んだので、ハイブリッドアプリをテストするための優れたツールでもあるXamarinでCalabashを使用することもでき、iOSとAndroid一部のマイナーな変更を含むアプリ。また、Visual Studioに統合されたため、Microsoftのサポートは避けられず、一部のユーザーは快適さを感じているかもしれません。
一方、Appiumはさまざまな言語に対応しており、Webdriverも使用できます。ただし、ハイブリッドアプリでは苦労しますが、google chrome mobile viewを使用して座標を見つけることで、その機能を克服できます。確かに1つのことは、SauseのラボにはまだAppiumで修正する多くのバグがあることです。