DLL没有通过从ant执行的junit测试加载

时间:2017-09-19 11:55:15

标签: java junit ant

我的junit测试类使用dll连接到数据库。当我从eclipse运行测试时,它工作正常,但是当我使用ant运行测试时,我得到了这个:

  

Testsuite:...... BatchAlertTest测试运行:1,失败:1,错误:0,   跳过:0,时间流逝:0,064秒

     

测试用例:testAddAlert耗时0,002秒失败   com.microsoft.sqlserver.jdbc.SQLServerDriver   junit.framework.AssertionFailedError:   com.microsoft.sqlserver.jdbc.SQLServerDriver at   ...... BatchAlertTest.createDatabaseConnection(BatchAlertTest.java:44)     at ...... BatchAlertTest.setUp(BatchAlertTest.java:32)

这是我的build.xml中的ant目标:

for i in range(0,5):
    container = client.create_container(
                    image='syed/syedclients:helloworld',
                    stdin_open=True,
                    tty=True,
                    command='/bin/bash saad.sh /bin/sleep 180',
                    name=hello-1,                    
                    volumes=volumes,
                    host_config=host_config,
                    environment=['VARIABLE=xyz123'],
                    detach=True,
    )
    client.start(container)

为了避免包含dll的问题,我将它包含在PATH环境变量中。目标中是否有任何遗漏以完成测试的执行?

提前致谢。

1 个答案:

答案 0 :(得分:0)

最后问题是我错过了从中获取java操作的.jar(sqljdbc42.jar)。将它包含在类路径中解决了这个问题。