Details
-
Type:
Bug
-
Status: Closed (View Workflow)
-
Priority:
Major
-
Resolution: Cannot Reproduce
-
Component/s: tap-plugin
-
Labels:None
-
Environment:TAP plugin 1.24
Jenkins 1.645
-
Similar Issues:
Description
When viewing the TAP Extended Test Results page, there are some unresolved HTML tags on top of the page (see attached screenshot).
Attachments
Attachments
Issue Links
- is duplicated by
-
JENKINS-35478 TAP Plugin: yaml not displaying in extended test results
-
- Closed
-
Activity
I find that if I use --cdns in yslow command:
phantomjs --cookies-file=cookies.txt ~/yslow.js -i grade --cdns "172.16.250.11,wpa.b.qq.com,combo.b.qq.com" --format tap "${url}"
Tap plugin will parse error:
Processing '/var/lib/jenkins/jobs/aircare_stress_testing/builds/41/tap-master-files/购物车列表页面.tap' Parsing TAP test result [/var/lib/jenkins/jobs/aircare_stress_testing/builds/41/tap-master-files/购物车列表页面.tap]. org.tap4j.parser.ParserException: Error parsing TAP Stream: Error parsing YAML [ message: <p>Using these CDN hostnames from your preferences: 172.16.250.11,wpa.b.qq.com,combo.b.qq.com</p> ]: null; mapping values are not allowed here; in 'string', line 1, column 62: ... hostnames from your preferences: 172.16.250.11,wpa.b.qq.com,com ... ^ at org.tap4j.parser.Tap13Parser.parse(Tap13Parser.java:221) at org.tap4j.parser.Tap13Parser.parseFile(Tap13Parser.java:187) at org.tap4j.plugin.TapParser.parse(TapParser.java:153) at org.tap4j.plugin.TapPublisher.loadResults(TapPublisher.java:329) at org.tap4j.plugin.TapPublisher.perform(TapPublisher.java:251) at hudson.tasks.BuildStepMonitor$2.perform(BuildStepMonitor.java:32) at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:782) at hudson.model.AbstractBuild$AbstractBuildExecution.performAllBuildSteps(AbstractBuild.java:723) at hudson.model.Build$BuildExecution.post2(Build.java:185) at hudson.model.AbstractBuild$AbstractBuildExecution.post(AbstractBuild.java:668) at hudson.model.Run.execute(Run.java:1763) at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43) at hudson.model.ResourceController.execute(ResourceController.java:98) at hudson.model.Executor.run(Executor.java:410) Caused by: org.tap4j.parser.ParserException: Error parsing YAML [ message: <p>Using these CDN hostnames from your preferences: 172.16.250.11,wpa.b.qq.com,combo.b.qq.com</p> ]: null; mapping values are not allowed here; in 'string', line 1, column 62: ... hostnames from your preferences: 172.16.250.11,wpa.b.qq.com,com ... ^ at org.tap4j.parser.Tap13Parser.parseDiagnostics(Tap13Parser.java:537) at org.tap4j.parser.Tap13Parser.parseLine(Tap13Parser.java:303) at org.tap4j.parser.Tap13Parser.parse(Tap13Parser.java:216) ... 13 more Caused by: mapping values are not allowed here in 'string', line 1, column 62: ... hostnames from your preferences: 172.16.250.11,wpa.b.qq.com,com ... ^ at org.yaml.snakeyaml.scanner.ScannerImpl.fetchValue(ScannerImpl.java:866) at org.yaml.snakeyaml.scanner.ScannerImpl.fetchMoreTokens(ScannerImpl.java:360) at org.yaml.snakeyaml.scanner.ScannerImpl.checkToken(ScannerImpl.java:226) at org.yaml.snakeyaml.parser.ParserImpl$ParseBlockMappingKey.produce(ParserImpl.java:558) at org.yaml.snakeyaml.parser.ParserImpl.peekEvent(ParserImpl.java:158) at org.yaml.snakeyaml.parser.ParserImpl.checkEvent(ParserImpl.java:143) at org.yaml.snakeyaml.composer.Composer.composeMappingNode(Composer.java:230) at org.yaml.snakeyaml.composer.Composer.composeNode(Composer.java:159) at org.yaml.snakeyaml.composer.Composer.composeDocument(Composer.java:122) at org.yaml.snakeyaml.composer.Composer.getSingleNode(Composer.java:105) at org.yaml.snakeyaml.constructor.BaseConstructor.getSingleData(BaseConstructor.java:120) at org.yaml.snakeyaml.Yaml.loadFromReader(Yaml.java:481) at org.yaml.snakeyaml.Yaml.load(Yaml.java:400) at org.tap4j.parser.Tap13Parser.parseDiagnostics(Tap13Parser.java:533) ... 15 more
And here is the sample tap file that generated from yslow:
TAP version 13 1..24 ok 1 A (90) overall score not ok 2 D (60) ynumreq: Make fewer HTTP requests --- message: This page has 10 external Javascript scripts. Try combining them into one. This page has 5 external stylesheets. Try combining them into one. ... ok 3 A (100) ycdn: Use a Content Delivery Network (CDN) --- message: <p>Using these CDN hostnames from your preferences: 172.16.250.11,wpa.b.qq.com,combo.b.qq.com</p> ... ok 4 A (100) yemptysrc: Avoid empty src or href not ok 5 E (56) yexpires: Add Expires headers --- message: There are 4 static components without a far-future expiration date. offenders: - "http://combo.b.qq.com/c/=/crm/wpa/release/3.3.7/wpa/SelectPanel.js,/crm/wpa/release/3.3.7/util/css.js,/crm/wpa/release/3.3.7/lang/extend.js,/crm/wpa/release/3.3.7/util/contains.js?v=3.3.7.20160126" - "http://combo.b.qq.com/c/=/crm/wpa/release/3.3.7/util/onIframeLoaded.js,/crm/wpa/release/3.3.7/util/GUID.js,/crm/wpa/release/3.3.7/wpa/getQQVersion.js,/crm/wpa/release/3.3.7/wpa/ViewHelper.js,/crm/wpa/release/3.3.7/wpa/views.js,/crm/wpa/release/3.3.7/wpa/sid.js,/crm/wpa/release/3.3.7/util/blockStorage.js,/crm/wpa/release/3.3.7/util/className.js,/crm/wpa/release/3.3.7/util/Style.js,/crm/wpa/release/3.3.7/util/sessionStorage.js,/crm/wpa/release/3.3.7/util/localStorage.js?v=3.3.7.20160126" - "http://combo.b.qq.com/c/=/crm/wpa/release/3.3.7/util/domain.js,/crm/wpa/release/3.3.7/wpa/wpaMgr.js,/crm/wpa/release/3.3.7/wpa/visitor.js,/crm/wpa/release/3.3.7/wpa/kfuin.js,/crm/wpa/release/3.3.7/util/proxy.js,/crm/wpa/release/3.3.7/util/titleFlash.js,/crm/wpa/release/3.3.7/util/cookie.js,/crm/wpa/release/3.3.7/wpa/WPA.js,/crm/wpa/release/3.3.7/util/getJSONP.js,/crm/wpa/release/3.3.7/wpa/filter.js,/crm/wpa/release/3.3.7/wpa/ta.js,/crm/wpa/release/3.3.7/wpa/invite.js,/crm/wpa/release/3.3.7/util/taskMgr.js,/crm/wpa/release/3.3.7/lang/browser.js,/crm/wpa/release/3.3.7/util/pad.js,/crm/wpa/release/3.3.7/util/Bits.js,/crm/wpa/release/3.3.7/util/events.js,/crm/wpa/release/3.3.7/util/onLoad.js,/crm/wpa/release/3.3.7/util/offset.js,/crm/wpa/release/3.3.7/util/Panel.js?v=3.3.7.20160126" - "http://wpa.b.qq.com/cgi/wpa.php?key=XzkzODA0NDAyMV8zNjYwNzlfNDAwNjk5NjE2Nl8" ... ok 6 A (100) ycompress: Compress components with gzip ok 7 A (100) ycsstop: Put CSS at top ok 8 A (100) yjsbottom: Put JavaScript at bottom ok 9 A (100) yexpressions: Avoid CSS expressions ok 10 N/A (-1) yexternal: Make JavaScript and CSS external # SKIP score N/A --- message: Only consider this if your property is a common user home page. offenders: - "There is a total of 3 inline css" - "There is a total of 5 inline scripts" ... ok 11 A (100) ydns: Reduce DNS lookups --- offenders: - "combo.b.qq.com: 3 components, 137.2K (95.7K GZip)" - "wpa.b.qq.com: 1 component, 11.4K (11.4K GZip)" ... not ok 12 F (20) yminify: Minify JavaScript and CSS --- message: There are 8 components that can be minified offenders: - "inline <style> tag #1" - "inline <style> tag #2" - "inline <style> tag #3" - "inline <script> tag #1" - "inline <script> tag #2" - "inline <script> tag #3" - "inline <script> tag #4" - "inline <script> tag #5" ... ok 13 A (100) yredirects: Avoid URL redirects ok 14 A (100) ydupes: Remove duplicate JavaScript and CSS ok 15 A (100) yetags: Configure entity tags (ETags) ok 16 A (100) yxhr: Make AJAX cacheable ok 17 A (100) yxhrmethod: Use GET for AJAX requests ok 18 A (100) ymindom: Reduce the number of DOM elements ok 19 A (100) yno404: Avoid HTTP 404 (Not Found) error ok 20 A (100) ymincookie: Reduce cookie size ok 21 A (100) ycookiefree: Use cookie-free domains ok 22 A (100) ynofilter: Avoid AlphaImageLoader filter ok 23 A (100) yimgnoscale: Do not scale images in HTML ok 24 A (95) yfavicon: Make favicon small and cacheable --- message: Favicon is more than 2000 bytes ...
So far no success reproducing it, but using the current version in my development environment: 1.580.3, with the latest version of the plug-in.
One last try, now with Jenkins LTS 2.7.2, and latest version of the plug-in.
feng yu, couldn't test with your TAP stream. Something odd with it. Tested some of your YAMLish in http://www.yamllint.com/ and it failed, which explains why the TAP parser is failing as well (btw, we use SnakeYAML for parsing YAML).
Working fine with Jenkins 2.7.2. Closing, as the related issue JENKINS-35478 has been confirmed as already fixed as well.
Same issue here.
Here is my sample tap file:
And here is the TAP Extended Test Results:

Jenkins version: 1.652.
TAP plugin version: 1.24