Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
FIY695
jenkins
提交
d85b0362
J
jenkins
项目概览
FIY695
/
jenkins
与 Fork 源项目一致
从无法访问的项目Fork
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
J
jenkins
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
d85b0362
编写于
8月 26, 2015
作者:
T
tfennelly
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Some docs
上级
67208cf5
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
42 addition
and
0 deletion
+42
-0
test/src/main/java/com/gargoylesoftware/htmlunit/README.md
test/src/main/java/com/gargoylesoftware/htmlunit/README.md
+39
-0
test/src/main/java/com/gargoylesoftware/htmlunit/html/HtmlFormUtil.java
...java/com/gargoylesoftware/htmlunit/html/HtmlFormUtil.java
+3
-0
未找到文件。
test/src/main/java/com/gargoylesoftware/htmlunit/README.md
0 → 100644
浏览文件 @
d85b0362
# Overview
Jenkins used to maintain a forked version of HtmlUnit and use it via
`JenkinsRule`
(and
`HudsonTestCase`
). Moving
away from the forked version has allowed Jenkins GUI to start using more modern JavaScript libraries than were
possible through the forked version.
Moving away from the forked version also means that some tests in plugins may no longer compile due to the
fact that they were using some methods that were added to the fork, but not available in the mainstream HtmlUnit.
To help with that, the test harness now provides static utilities for all of this functionality.
# WebClientUtil
The
`WebClientUtil`
class provides static utilities for interacting asynchronously with HtmlUnit's
`WebClient`
,
supporting
`waitForJSExec`
calls to allow your test code wait for background (asynchronous) JavaScript code to complete
before the test continues. Calling these methods are not required in many cases as they are called for you from
other static utilities (e.g.
`HtmlFormUtil.submit`
), but sometimes it is required to call them directly.
Because HtmlUnit executes JavaScript asynchronously, it's usually not possible to block and catch exceptions. For
that reason,
`WebClientUtil`
provides the
`addExceptionListener`
utility as a way of registering an exception listener.
This typically needs to be used in conjunction with the
`waitForJSExec`
method e.g.
```
WebClient webClient = jenkinsRule.createWebClient();
WebClientUtil.ExceptionListener exceptionListener = WebClientUtil.addExceptionListener(webClient);
// Interact with Jenkins UI as normal in a test...
// Make sure all background JavaScript has completed so as expected exceptions have been thrown.
WebClientUtil.waitForJSExec(webClient);
// Now we can check for exceptions etc...
exceptionListener.assertHasException();
ScriptException e = exceptionListener.getScriptException();
Assert.assertTrue(e.getMessage().contains("simulated error"));
```
# HtmlElementUtil, HtmlFormUtil and DomNodeUtil
These classes provide static utility methods to replace functionality that was added to the forked HtmlUnit e.g.
for triggering
`<form>`
submit, triggering a click event on an element etc.
Use your IDE to access these utility classes and the static methods available.
\ No newline at end of file
test/src/main/java/com/gargoylesoftware/htmlunit/html/HtmlFormUtil.java
浏览文件 @
d85b0362
...
...
@@ -33,6 +33,9 @@ import java.util.List;
/**
* {@link HtmlForm} helper functions.
* <p>
* In many cases, the methods defined here replace methods of the same name that were
* added to the {@link HtmlForm} class on the old forked version of HtmlUnit.
*
* @author <a href="mailto:tom.fennelly@gmail.com">tom.fennelly@gmail.com</a>
*/
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录