本地环境能够跑通,但只要一上机器人环境,便会出现错误。通常这种状况都是因为本地与travis
的JDK
版本不一致形成的。然而,机器人又有日志大粘限制,这就决定了,咱们不可能将日志等级开启到debug
来调试错误。java
思索:是否可使用日志插件,将日志保存为文件,而后将文件回传到咱们的服务器,再而后查看问题所在呢?
有没有办法来规避这一状况呢?git
统一本地与机器人的版本了。
但:虽然版本统一了,但操做系统又很难统一。再结合开发环境与生产环境的不一样,咱们很难作到全部的环境彻底统一。github
既然只有机器人报错,那么本地测试好后,能够考虑将机器人报错的部分作排除。虽然这不是最好的方法,但在时间宝贵的前提下(机器人10分钟测试跑一次,改一次再测试10分钟,改了6次,就要等1小时),也只能如此了。spring
将机器人环境统一写到配置文件的某profiles
中,而后命名:travis
,并在启用机器人测试时,启用该命名:shell
spring: profiles: # 开发过程当中,请将 travis 修改成 test active: ${active:test}
@Value("${spring.profiles.active}") private String active; public void test() { if (!this.active.equals("travis")) { // 机器人中报错的代码 } }
生产环境、测试环境、开发环境的不一致问题,会带来必定的困扰,并且一旦发生问题,好比生产环境中发现问题,因为缺乏中断环境,则会在排错时浪费大量的时间。服务器
travis
虽然好用,但却不能本身定义具体的JDK信息(它的JDK就那几种,好比ORACLE-JDK8就一个),打造本身的单元测试服务器迫在眉睫。单元测试
构想:
开发环境(不限)、测试环境同生产环境(OPENJDK)。因为openjdk能够安装到Linux系统中,一旦开发环境(非liunx)与测试环境表现不一致,则能够切到liunx系统中来进行问题的调试。学习
学习机器人自动生成的shell,创建本身的shell。同时,开发一个小应用,来对接github
。接收到github
信息后,检出相应的分支,执行单元测试,并将测试的结果推送给github
测试
I need help! Thank you!this