mysql - 无法在 Bluemix Build & Deploy Pipeline 中运行单元测试,因为服务器无法连接到 ClearDB MySQL

标签 mysql unit-testing maven ibm-cloud devops

已解决!

看起来 Bluemix 中的管道服务已更新,与 ClearDB 的连接现在运行良好!感谢插入这一变化的人! :)

--

我在 Bluemix 构建和部署管道中运行代码,而不是在 Liberty Profile 应用程序服务器中运行代码(应用程序在那里运行良好),问题在于运行我的单元时管道的构建阶段(mvn clean install)测试,这里是错误信息

Building new Hibernate SessionFactory 2015-04-11 15:04:49 [main] ERROR o.h.util.JDBCExceptionReporter - Communications link failure

The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.

单元测试类无法连接到数据库。

我的代码没有什么特别之处,您可以在 JUnit 测试类中创建任何标准的 JDBC 连接并尝试与数据库建立连接,但如果您想轻松确认此连接限制,请按以下方法进行测试没有任何 Java 代码:

  • 使用一些入门代码创建 Liberty Profile 应用
  • 创建并绑定(bind)“ClearDB MySQL”服务
  • 在 App Overview 页面中,通过点击“Show 凭据”并复制主机名(例如, us-cdbr-test-west-07.cleardb.net)。
  • 添加 GIT,返回 App Overview,点击 EDIT CODE,点击 “Build & Deploy”,点击“BUILD”的配置图标 Stage”,选择“Configure Stage”并添加以下代码到 命令框:

代码

REMOTEHOST=us-cdbr-test-west-07.cleardb.net
REMOTEPORT=3306
TIMEOUT=1
    
if nc -w $TIMEOUT -z $REMOTEHOST $REMOTEPORT; then
    echo "I was able to connect to ${REMOTEHOST}:${REMOTEPORT}"
else
    echo "Connection to ${REMOTEHOST}:${REMOTEPORT} failed; exit code from netcat was $?"
fi
  • 启动 BUILD Stage 并检查是否显示此消息:
[86d18f86-4ade-4e02-8282-171dc9757272] $ /bin/bash /tmp/hudson5506792757013948518.sh
Connection to us-cdbr-test-west-07.cleardb.net:3306 failed; exit code from netcat was 1

如果有一种方法可以配置管道以便它可以与 ClearDB 通信,请告知。

最佳答案

Bluemix 中的管道服务已更新,修复了此错误。与“ClearDB”服务的连接现在应该可以正常工作。

关于mysql - 无法在 Bluemix Build & Deploy Pipeline 中运行单元测试,因为服务器无法连接到 ClearDB MySQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29606154/

相关文章:

c++ - 在 MacOS Catalina 上使用 CMake 编译/链接 mysql-connector-c++

python - 如何为 python unittest 指定测试超时?

java - Maven依赖库路径

.net - MSTest 是否有流畅的断言 API?

java - Gradle:Springboot 重写依赖项(jersey 和 apache httpclient)

java - 创建一个包含用户无法访问的敏感信息的 jar

java - Spring boot schema.sql 不适用于 mysqldump 文件

mysql - 插入时顺序重要吗?

mysql - 如何通过显示最新行数据来使用组

java - 无法模拟类,抛出异常