- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在实现一个测试自动化工具,我有一个扩展 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 次。一次在执行 test_one()
之前,另一次在 test_two()
之后。 tearDown() 也会发生同样的情况,它会在执行完这两个方法之后被调用。
我想在这里做的是只调用一次 setUp() 和 tearDown() 方法来执行所有 BaseTests
测试。所以方法调用的顺序是这样的:
1) 设置()
2) test_one()
3) 测试二()
4) 拆解()
有没有办法做这样的事情?
最佳答案
我使用以下方法解决了这个问题:
@BeforeClass
public static void setUpBeforeClass() throws Exception {
}
和:
@AfterClass
public static void tearDownAfterClass() throws Exception {
}
而不是 setUp() 和 tearDown()。所以在你的情况下它将是:
import org.junit.AfterClass;
import org.junit.BeforeClass;
public class BaseTests extends InstrumentationTestCase {
@BeforeClass
protected static void setUp() throws Exception {
//do your setUp
Log.d(TAG, "setUp()");
}
@AfterClass
protected static void tearDown() throws Exception {
//do your tearDown
Log.d(TAG, "tearDown()");
}
public void test_one() {
Log.d(TAG, "test_one()");
}
public void test_two() {
Log.d(TAG, "test_two()");
}
}
注解@BeforeClass和@AfterClass分别保证在测试运行前后只运行一次
关于android - 为每个测试套件 InstrumentationTestCase Android 运行 setUp() 和 tearDown() 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24893248/
我是 Android 开发的新手,刚刚在 Android Studio 中尝试了单元测试。我有 2 个问题, 每次我需要运行测试时,我都需要为派生自 InstrumentationTestCase 的
我有一个 ActivityInstrumentationTestCase2(它是 InstrumentationTestCase 的一个子类)。运行我的测试用例时,我需要使用自定义 TestAppli
我想通过单元测试来测试通知是否能够播放 Assets 中的自定义声音。该测试并不意味着要验证任何内容,我将其编写为一种快速演示功能的方法,同时又不会弄乱主应用程序代码。 所以在测试项目中,我在/res
我的一位 QA 工程师正在支持一个具有相当大的代码库和许多不同 SharedPreferences 文件的应用程序。前几天他来找我询问如何在测试运行之间重置应用程序状态,就好像它已被卸载-重新安装一样
我正在使用 InstrumentationTestCase 对我的应用程序的组件进行单元测试。 该组件将数据保存到内部存储并使用 Context::fileList(); 检索保存的文件。 我遇到以下
我一直在看这个答案:https://stackoverflow.com/a/2055455/281460它很好地解释了可用于 Android 单元/集成测试的不同测试类。不过,它没有解释的一件事是 I
我正在使用 Android Studio 1.2.2 创建一些 Junit 测试。这是我的测试类。它从 ActivityTestCase(或 InstrumentationTestCase)扩展而来。
我为我的 InstrumentationTestCase 子类编写了一个通用的 shellCommand 函数。对 executeShellCommand 的调用有效(命令已执行),但我对返回的 Pa
我正在实现一个测试自动化工具,我有一个扩展 InstrumentationTestCase 的类。例如: public class BaseTests extends InstrumentationT
我的一些旧测试使用 Android Studio 1.1.0 的新单元测试支持功能运行。运行 gradlew testDebug 时,测试会运行,但所有需要 Context 的测试都会失败,因为 ge
我是一名优秀的程序员,十分优秀!