小编Jon*_*Woo的帖子

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
查看次数

标签 统计

groovy ×1

junit4 ×1

unit-testing ×1