当我们发现我们的一个Protractor Jasmine2规范存在错误时,我们通常希望跳过测试直到错误得到解决.
我知道如何使用xit
or pending()
,并且JasmineReporters TerminalReporter在颜色突出显示和列出待定规范方面做得很好.
但是,待处理的测试总是报告No reason given
,这意味着可以给出跳过测试的原因.
我目前用一个问题编号评论规范,但是报告禁用测试的原因和问题编号会非常好.
UPDATE
根据要求,添加示例终端输出(fdescribe示例,因此报告大多数套件已禁用):
版本:Protractor 2.1.0和Jasmine 2.3.1
运用 xit
Skipped
* will display the platform if available ...
...
SUCCESS: 85 specs, 0 failures, 1 skipped, 72 disabled in 34.734s.
Pending:
1) will display the platform if available
No reason given
Run Code Online (Sandbox Code Playgroud)
运用 pending()
这似乎已经开始标记失败,可能与https://github.com/angular/protractor/issues/1852有关
Failures:
1) will display the platform if available
Message:
Failed: => marked Pending
Stack:
Error: Failed: => marked Pending
Run Code Online (Sandbox Code Playgroud)
更新:此功能的相关功能请求和问题
如果您想要跟进进度,目前有一项功能请求支持Protractor/jasminewd未决的待处理(消息):
我在版本2.32.2的管道中使用Jenkins文件.
由于各种原因,我想从pom中提取版本字符串.我希望我不必添加maven帮助插件并使用evaluate.
我很快想出了一个小的sed表达式,将它从使用管道的pom中取出,并在执行程序的jenkins工作区中的命令行上运行.
$ sed -n '/<version>/,/<version/p' pom.xml | head -1 | sed 's/[[:blank:]]*<\/*version>//g'
1.0.0-SNAPSHOT
它可能会被优化,但我想理解为什么管道似乎在管道sh命令失败.我玩过各种字符串格式,目前正在使用一个美元的字符串.
管道步骤如下所示,以便轻松输出命令字符串:
script {
def ver_script = $/sed -n '/<version>/,/<version/p' pom.xml | head -1 | sed 's/[[:blank:]]*<\/*version>//g'/$
echo "${ver_script}"
POM_VERSION = sh(script: "${ver_script}", returnStdout: true)
echo "${POM_VERSION}"
}
Run Code Online (Sandbox Code Playgroud)
当在jenkins管道中运行时,我得到以下控制台输出,它似乎将管道命令分离为单独的命令:
[Pipeline] script
[Pipeline] {
[Pipeline] echo
sed -n '/<version>/,/<version/p' pom.xml | head -1 | sed 's/[[:blank:]]*<\/*version>//g'
[Pipeline] sh
[FRA-198-versioned-artifacts-44SD6DBQOGOI54UEF7NYE4ECARE7RMF7VQYXDPBVFOHS5CMSTFLA] Running shell script
+ sed -n /<version>/,/<version/p pom.xml
+ head -1
+ sed s/[[:blank:]]*<\/*version>//g
sed: couldn't write …
Run Code Online (Sandbox Code Playgroud) 我正在使用一个项目,我们有两个rspec测试覆盖Ruby代码,我们已经设置了通过Grunt任务运行的Karma JavaScript单元测试.
我已经设置了咕噜-卡玛-工作服,并可以得到它运行时生成本地coveralls.json grunt test
和dryRun: true
.但是我不知道如何配置我的Coveralls repo_token.
我也有一个.coveralls.yml,它成功地将rspec测试的报告发送给了工作服.
我不确定是否以及如何将rspec的覆盖率报告和grunt-karma报告发送给Coveralls.
grunt test
,但是更喜欢将它包含在某个地方的配置中我现在有一个rake任务,设置repo令牌,执行所有npm和包设置,并运行grunt测试任务.
我也成功地向工作服发送了两份单独的报告
我还是想知道是否有人成功合并了JS套件和Coveralls上的Ruby套件的覆盖率报告.
我想我可以做一些Simplecov hackery,并使用Coveralls push rake来推送一个合并的报告.
coveralls ×1
gruntjs ×1
jasmine ×1
javascript ×1
jenkins ×1
karma-runner ×1
pipe ×1
protractor ×1
rspec ×1
subshell ×1
testing ×1