我想知道是否有人知道需要什么URL(作为GET或POST)来获取上一个Jenkins作业的状态代码(结果)(当调用GET请求的客户端不知道构建#时)?我只是想能够检测结果是红色还是绿色/蓝色.
我有这个代码示例,但我需要调整它以便它适用于Jenkins,为此目的(如上所述):
public class Main {
public static void main(String[] args) throws Exception {
URL url = new URL("http://localhost/jenkins/api/xml");
Document dom = new SAXReader().read(url);
for( Element job : (List<Element>)dom.getRootElement().elements("job")) {
System.out.println(String.format("Name:%s\tStatus:%s",
job.elementText("name"), job.elementText("color")));
}
}
}
Run Code Online (Sandbox Code Playgroud)
一旦我找到答案,我将分享一个完整的例子,说明我如何使用它.我想创建一个工作,收集20多个工作的测试套件的信息,并通过电子邮件报告所有这些工作.
我有一些TestNG代码,我在其中传递一个名为的Test annotation参数timeOut = TESTNG_TEST_TIMEOUT.
@Test(description = "Tests something.", groups = { "regression" },
timeOut = TESTNG_TEST_TIMEOUT, enabled = true)
Run Code Online (Sandbox Code Playgroud)
在我的TestBase类中,我有这个成员:
public final static long TESTNG_TEST_TIMEOUT = TimeUnit.MINUTES.toMillis(5);
Run Code Online (Sandbox Code Playgroud)
当我使用上面的代码行时,我在Eclipse中得到一个'属性值必须是常量'错误.
但是,如果我只是这样定义成员,它的工作原理是:
public final static long TESTNG_TEST_TIMEOUT = 300000;
Run Code Online (Sandbox Code Playgroud)
TimeUnit的使用不是常数吗?
如何获取Google Maps"Places API"以返回邮政编码信息?在我在互联网上找到的所有示例中,没有一个显示包含邮政编码的返回结果.有这个诀窍还是不可能?
为什么我的Maven构建在命令行上运行得很好但是当我在Eclipse中运行时,它需要我将此部分添加到我的pom.xml中,否则我收到此错误:
Plugin execution not covered by lifecycle configuration
: org.apache.maven.plugins:maven-compiler-plugin:3.1:testCompile
(execution: default-testCompile, phase: test-compile)
Run Code Online (Sandbox Code Playgroud)
围绕'maven-compiler-plugin'插件发生这种情况并不奇怪吗?我无法在谷歌的任何地方找到这样的其他问题,尽管我发现很多关于第三方插件的修复建议.我已经做了大量的研究和搜索,并没有找到解释,甚至没有从这里.
并且pom.xml需要解决此问题:
<!--This plugin's configuration is used to store Eclipse m2e
settings only. It has no influence on the Maven build itself.-->
<plugin>
<groupId>org.eclipse.m2e</groupId>
<artifactId>lifecycle-mapping</artifactId>
<version>1.0.0</version>
<configuration>
<lifecycleMappingMetadata>
<pluginExecutions>
<pluginExecution>
<pluginExecutionFilter>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<versionRange>[3.1,)</versionRange>
<goals>
<goal>testCompile</goal>
</goals>
</pluginExecutionFilter>
<action>
<ignore></ignore>
</action>
</pluginExecution>
</pluginExecutions>
</lifecycleMappingMetadata>
</configuration>
</plugin>
Run Code Online (Sandbox Code Playgroud)
而且,如果您想查看我的源代码,这是我在GitHub上的简单项目.
我有一些需要使用数据提供程序参数完成的init语句,并且希望在@BeforeMethodsetup方法中访问数据提供程序参数值.这可能吗?
如何让我的TestNG报告显示报告中控制台输出的链接?我之前见过TestNG,但是我现在正在处理的项目没有显示任何输出,我找不到任何有关如何打开它的信息.我尝试在testng.xml套件标签中设置"verbose"选项,但这根本没有任何效果.
我无法在我之间下定决心
@MyAnnotation(param1="paramval")
public void foo(){}
Run Code Online (Sandbox Code Playgroud)
和
@MyAnnotation(param1="paramval") public void foo(){}
Run Code Online (Sandbox Code Playgroud)
是否出现了最佳实践?
我想从批处理文件启动我的Java程序.这是我想用来启动应用程序的脚本,但问题是我无法将控制台输出重定向到日志文件.任何人都可以提供任何提示,而无需编辑任何代码,并使用Java命令行选项或什么?
@echo off
set TASK=MyApp
TITLE %TASK%
start javaw.exe -cp .;Server.jar;Util.jar com.manage.Program %1 > log.log 2>&1
taskkill /T /FI "WINDOWTITLE eq %TASK%"
Run Code Online (Sandbox Code Playgroud)
所以,上面的工作,实际上杀死了生成我的Swing应用程序的cmd窗口,但是它没有记录日志文件中的任何内容,大概是因为"start"将进程从"> log.log 2>&1中分离出来"arg?
我可以通过使用start调用另一个批处理文件来修复它,但我希望得到一个更优雅的答案.
使用硒,我可以得到一个不可见元素的文本吗?我尝试使用driver.getElement().getText()但我得到一个空字符串.
<p id="versionInfo" style="display: none;">
4.7.2<br/>
20130714-1512
</p>
</footer></body>
Run Code Online (Sandbox Code Playgroud)