Tag: junit

无法在Windows 10上从arquillian多维数据集启动Docker容器

我有一个junittesting,必须启动一个docker集装箱。 这是我使用的代码 @ClassRule public static ContainerDslRule mysql = new ContainerDslRule(TestConfigConstants.DOCKER_IMAGE) .withPortBinding(TestConfigConstants.PORT) .withEnvironment("MYSQL_ROOT_PASSWORD", TestConfigConstants.PASSWORD, "MYSQL_DATABASE", TestConfigConstants.DB, "MYSQL_USER", TestConfigConstants.USERNAME, "MYSQL_PASSWORD", TestConfigConstants.PASSWORD); 当我用Docker工具箱安装的Windows 7 PC上开始testing的时候一切正常。 但是,当我开始在Windows 10电脑上我有follwingexception java.lang.ExceptionInInitializerError at sun.misc.Unsafe.ensureClassInitialized(Native Method) at sun.reflect.UnsafeFieldAccessorFactory.newFieldAccessor(Unknown Source) at sun.reflect.ReflectionFactory.newFieldAccessor(Unknown Source) at java.lang.reflect.Field.acquireFieldAccessor(Unknown Source) at java.lang.reflect.Field.getFieldAccessor(Unknown Source) at java.lang.reflect.Field.get(Unknown Source) at org.junit.runners.model.FrameworkField.get(FrameworkField.java:73) at org.junit.runners.model.TestClass.getAnnotatedFieldValues(TestClass.java:230) at org.junit.runners.ParentRunner.classRules(ParentRunner.java:255) at org.junit.runners.ParentRunner.withClassRules(ParentRunner.java:244) at org.junit.runners.ParentRunner.classBlock(ParentRunner.java:194) at org.junit.runners.ParentRunner.run(ParentRunner.java:362) […]

JUnittesting中的Java Docker客户端无法连接到守护进程

我试图自动pipe理我的Docker容器中的应用程序,使用Spotify Docker Client进行与Docker for Mac的集成testing。 DockerClient docker = new DefaultDockerClient.fromEnv().build(); HostConfig hostConfig = HostConfig.builder() .portBindings(new HashMap<String, List<PortBinding>>(){{ put("8080", Arrays.asList(PortBinding.of("localhost", 8080))); }}).build(); ContainerConfig containerConfig = ContainerConfig.builder() .hostConfig(hostConfig) .exposedPorts("8080") .image("my-app") .portSpecs(Arrays.asList("8080:8080")) .build(); ContainerCreation createdContainer = docker.createContainer(containerConfig); createContainer调用失败: 2091 [jersey-client-async-executor-0] DEBUG org.apache.http.impl.conn.PoolingHttpClientConnectionManager – Connection request: [route: {}->unix://localhost:80][total kept alive: 0; route allocated: 0 of 100; total allocated: 0 […]

TestContainers Oracle TimeoutException

我试图使用testcontainers库与Oracle进行集成testing。 这里是简单的testing: public class SimpleTest { @Rule public OracleContainer oracle = new OracleContainer(); @Test public void simpleTest() throws SQLException { HikariDataSource ds = buildHikariDataSource(); Statement statement = ds.getConnection().createStatement(); statement.execute("SELECT 1 FROM dual"); ResultSet resultSet = statement.getResultSet(); resultSet.next(); int resultSetInt = resultSet.getInt(1); assertEquals("A basic SELECT query succeeds", 1, resultSetInt); } private HikariDataSource buildHikariDataSource() { HikariConfig hikariConfig […]

高级Docker和Dockerfile卷/书写理解

我正在开发一个Maven项目,并在这个项目中使用Junit进行testing。 我是新来的docker,我想写一个Dockerfile,生成一个图像,创build一个容器,运行时,执行testing,并输出在target/failsafe-reportsfind的XML结果(Maven插件的输出文件夹总结了Junittesting的结果)。 我一直在尝试使用像Dockerfile参考和pipe理容器中的数据的链接。 我的导师编写了一个使用docker run -it –rm –name containerName -v "$PWD":/usr/src/tests -v /Users/theUser/.m2:/root/.m2 -w /usr/src/tests maven:3.5-alpine mvn clean verify来实现这一点的命令行docker run -it –rm –name containerName -v "$PWD":/usr/src/tests -v /Users/theUser/.m2:/root/.m2 -w /usr/src/tests maven:3.5-alpine mvn clean verify 。 上面的行在我的项目的根目录中(在pom和Dockerfile所在的位置)被调用,所以$PWD引用了我的项目的根目录。 我的问题是在Dockerfile中可以自动完成多less工作? 在我使用和运行Dockerfile的尝试中,我没有能够得到任何写有当前Dockerfile的东西。 FROM maven:3.5-alpine COPY ["./", "/usr/local/tests"] VOLUME /usr/local/tests/target/failsafe-reports ENTRYPOINT mvn -f /usr/local/tests/pom.xml verify 我用docker build . -t imageName构build它docker […]

jenkins没有跑新的junittestingpipe道

在我进行junittesting后,jenkinsfind了他们,但是报告存在一些问题。 这是我的pipe道: pipeline { agent { node { label 'agent1' } } stages { stage('Build') { steps { git "https://github.com/vforv/hapi-seneca-ts" sh ''' ./system/fuge/ci/docker-up.sh ./system/fuge/ci/docker-down.sh ''' } } stage('Test') { steps { sh ''' ./system/fuge/ci/docker-up-test.sh ''' sh ''' mkdir -p test docker cp devtest_api_1:home/app/test/api.xml test/api.xml ''' } } } post { always { junit 'test/*.xml' } […]

如何在Docker容器中运行JUnittesting,并在JUnit失败时让容器启动失败?

我想在Docker容器中运行Junittesting,如果testing失败,容器将失败。 在我的Docker文件中,我有: FROM maven:3.2-jdk-7-onbuild CMD mvn verify 我从一个运行docker compose命令的Go CI服务器踢它。 我所看到的是,这开始执行的后台线程,testing开始运行 – Go CI服务器得到一个OK – 就像maven进程已经开始。 testing结束运行有一些失败,但到那时,Go服务器已经显示一个绿色的“所有好”的状态。 部分问题是我需要EXEC命令,直到testing结束。 我的问题是: 如何在Docker容器中运行JUnittesting,并在JUnit失败时让容器启动失败?

与Docker并行运行JUnittesting

我试图与Docker并行运行JUnit Test。 我使用存储在Amazon AWS RDS上的数据库实例。 我应该在一个单独的Docker镜像中运行数据库实例。 计划是在它自己的Docker实例中运行每个JUnittesting。 目前我有我的所有unit testing,包括Maven的configuration,Git和jenkins我的jar文件。 我试图在一个Docker容器中运行我的jar文件,这是成功的。 是否有任何现有的插件可能可以帮助我并行执行我的testingJenkins或Maven? 任何tipps或引用将真正appriciated。 :) 谢谢,