私はテストの自動化の現場では新しく、これは愚かな問題だと私を許しますが、Googleは今回私に失敗しました。あるいは、私が読んだことの少なくとも何かが私をさらに混乱させました。JUnit 4にtestNGの@BeforeSuiteと同等の機能がありますか?
Eclipse内でJUnit 4とSelenium Webdriverを使用しています。私はスイートとして、そして個別に実行するために必要ないくつかのテストをしています。現時点では、これらのテストは単独で実行すると正常に動作します。テストの開始時に、入力するボックスがテスター/ユーザーに提示され、最初にどのサーバーをテストするか(これはURLの一部となる文字列変数です)と、テストするブラウザーを求めます。スイート内でテストを実行している瞬間、各テストの初めにユーザーにこれを尋ねられます。なぜなら、これはそれぞれの@Beforeメソッドにコード化されているからです。
これらの値を一度取り込んで各テストメソッドに渡すにはどうすればよいですか?
したがって、server = "server1"とbrowser = "firefox"の場合、firefoxはセレンが使用するブラウザであり、開こうとするURLは次のすべてのテスト方法についてhttp://server1.blah.com/です。テストメソッドごとに必要なURLが若干異なるため、私が別々の@メソッドを使用してきた理由があります。つまり、各メソッドは、server1.blah.com/somethingやserver1.blah.com/somethingElseなどの別のページをテストします
テストは正常に実行されます。テストの数メソッドは最終的に静かに大きくなります。
testNGでこれを行う簡単な方法があれば、私のテストをtestNGに変換することもできます。 @BeforeSuiteアノテーションは機能するかもしれないと思ったが、今はわからない。
任意の提案や批判(建設一種)がずっと
Matthewに感謝します。私はあなたに何かひどいnoob質問をしなければならないでしょう:(最初に
this(builder, klass, getAnnotatedClasses(klass));
行はgetAnnotatedClasses(クラス>)が表示されないので動作しません。 ...私は私の頭の上に少しあるかもしれないことを実感し、私はあなたの忍耐のためにとても感謝しています:) – user1088166あなたはあなたの質問で '入力ボックスがユーザーに提示されました'これはgetUrlFromUserそれは本当に問題なのですが、MySuiteではおそらく良い場所になるでしょう。これはJUnitのどのバージョンを使っているのですか? –
さて、私はあなたに今追いかけています。私はJUnit 4を使用しています。これは関係ないかもしれませんが、最初にセレンIDEを使用してテストケースを作成し、EclipseでJUnit 4(WebDriver)テストケースとしてエクスポートしてテストケースをエクスポートしました。 – user1088166