テスト自動化ツールを実装しており、拡張するクラスがありますInstrumentationTestCase
。例えば:
public class BaseTests extends InstrumentationTestCase {
@Override
protected void setUp() throws Exception {
super.setUp();
Log.d(TAG, "setUp()");
}
@Override
protected void tearDown() throws Exception {
super.tearDown();
Log.d(TAG, "tearDown()");
}
public void test_one() {
Log.d(TAG, "test_one()");
}
public void test_two() {
Log.d(TAG, "test_two()");
}
}
のテストを実行するとBaseTests
、setUp() メソッドが 2 回呼び出されます。実行前に 1 回、実行test_one()
後にもう1 回test_two()
。これは、2 つのメソッドの両方を実行した後に呼び出されます。
ここでやりたいことは、すべてのBaseTests
テストを実行するために setUp() メソッドと TeaDown() メソッドを 1 回だけ呼び出すことです。したがって、メソッド呼び出しの順序は次のようになります。
1) セットアップ()
2) test_one()
3) test_two()
4) ティアダウン()
そのようなことをする方法はありますか?