相关疑难解决方法(0)

JUnit 3有类似于@BeforeClass的东西吗?

我被迫将JUnit 3用于特定的测试套件.我的理解setUp()tearDown()服务的功能@Before@After,但有一个模拟@BeforeClass@AfterClass对事物的测试开始之前,所有的测试运行后,一旦要发生一次?

java junit

27
推荐指数
1
解决办法
1万
查看次数

有没有办法在Android上使用junit.extensions.TestSetup进行测试?

android sdk源包含junit.extensions的源代码,但是这些类不在android.jar中,即使junit.framework和junit.runner在那里.我尝试创建自己的junit.extensions包并使用android sdk源中包含的源代码,但是我得到了一个ClassCastException(见下文).android.test.suitebuilder中的东西试图将套接字()方法的返回值强制转换为TestCase,即使套件返回Test接口.

我想使用junit.extensions中的TestSetup类,如下例所示(参见http://etutorials.org/Programming/Java+extreme+programming/Chapter+4.+JUnit/4.7+One-Time+Set+Up +和+撕裂+向下/):

public SomeTestCase extends TestCase {

  public static Test suite() {
    TestSetup setup = new TestSetup(new TestSuite(SomeTestCase.class)) {
      @Override
      protected void setUp(  ) throws Exception {
          // do your one-time setup here!
      }

      @Override
      protected void tearDown(  ) throws Exception {
          // do your one-time tear down here!
      }
    };
    return setup;
  }

  public void someTestMethod() { }

}
Run Code Online (Sandbox Code Playgroud)

但是,我收到以下错误:

05-21 08:10:14.152: I/TestRunner(1316): java.lang.RuntimeException: Exception during suite construction
05-21 08:10:14.152: I/TestRunner(1316):     at android.test.suitebuilder.TestSuiteBuilder$FailedToCreateTests.testSuiteConstructionFailed(TestSuiteBuilder.java:238)
05-21 …
Run Code Online (Sandbox Code Playgroud)

junit android

6
推荐指数
0
解决办法
1229
查看次数

GroovyTestCase不支持@BeforeClass和@AfterClass

我为Shard类创建了一个JUnit4 TestCase,但是当我尝试扩展GroovyTestCase时,它不会运行我的@BeforeClass和@AfterClass方法。

这是我的代码

import groovy.sql.*
import org.junit.*

class ShardUnitTests {
    static def shard
    static def sql
    static def mysqlserver = "REDACTED"
    @BeforeClass
    static void beforeClassSetUp(){
        def db = [url:'jdbc:mysql://${mysqlserver}:3306/test', user:'root', password:'password', driver:'com.mysql.jdbc.Driver']
        sql = Sql.newInstance(db.url, db.user, db.password, db.driver)
        shard = new Shard(sql: sql)
    }
    @AfterClass
    static void afterClassTearDown(){
        sql.execute("DROP TABLE test")
        sql.close()
    }
    @Test
    //Test that createObjectTable creates a table with 2 columns
    void testCreateObjectTable(){
        shard.createObjectTable("test")
        sql.rows("SELECT * FROM test"){meta ->
            assert meta.getColumnName(1) == "id"
            assert meta.getColumnName(2) == "data"
        } …
Run Code Online (Sandbox Code Playgroud)

groovy unit-testing junit4

4
推荐指数
1
解决办法
2770
查看次数

android中的模拟测试

什么是模拟测试..我们如何做模拟测试..如何创建模拟..何时使用它

android

0
推荐指数
1
解决办法
1341
查看次数

标签 统计

android ×2

junit ×2

groovy ×1

java ×1

junit4 ×1

unit-testing ×1