运行多个specs2测试用例的PlaySlick会因后一个MYSQL连接被拒绝而引发错误

时间:2015-12-18 14:34:54

标签: testing slick scalatest specs2 playframework-2.4

我使用Slick与MySQL数据库连接在play框架中编写了一些带有specs2的测试用例。对于后面的测试用例,将抛出数据库连接被拒绝的错误,从而导致失败。

抛出的错误是

任务slick.backend.DatabaseComponent$DatabaseDef$$anon$2@4877c5d从java.util.concurrent.ThreadPoolExecutor@48e736拒绝[已终止,池大小= 0,活动线程= 0,排队任务= 0,已完成tasks = 1](DatabaseComponent.scala:230)

testcase的代码以这种格式编写 -

class tryTests extends PlaySpecification{
 "Application" should { 
       "test1" in new WithApplication{
            /* Some tests 
        }
       "test2" in new WithApplication{
            /* Some tests 
        }
 }

}

因此test1将成功成功,但test2将因上述错误而失败。

到目前为止我尝试过的解决方案是

  1. 使用"顺序"关键字
  2. 使用函数覆盖方法"是"
  3. 在"之前尝试连接数据库" part" with BeforeAfterEach"
  4. 上面提到的3种方法没有成功。到目前为止,根据我的理解,问题是测试用例是同时执行的,每个测试用例都会断开数据库连接。所以后面的测试用例无法访问它。

    对此问题的任何建议!!!

0 个答案:

没有答案