我正在传递一个正则表达式模式列表grep来检查syslog文件.它们通常匹配IP地址和日志条目;
grep "1\.2\.3\.4.*Has exploded" syslog.log
Run Code Online (Sandbox Code Playgroud)
它只是一个模式列表,比如"1\.2\.3\.4.*Has exploded"我传递的部分,在一个循环中,所以我不能传递"-v"例如.
我很困惑,试图做上面的逆,一个NOT匹配线与某个IP地址和错误所以"!1.2.3.4.*已爆炸"将匹配系统日志行除1.2.3.4以外的任何东西告诉我它已爆炸.我必须能够包含一个不匹配的IP.
我在StackOverflor上看过各种类似的帖子,但是他们使用了我似乎无法使用的正则表达式模式grep.有人可以提供一个工作示例grep吗?
更新: 这发生在这样的脚本中;
patterns[1]="1\.2\.3\.4.*Has exploded"
patterns[2]="5\.6\.7\.8.*Has died"
patterns[3]="\!9\.10\.11\.12.*Has exploded"
for i in {1..3}
do
grep "${patterns[$i]}" logfile.log
done
Run Code Online (Sandbox Code Playgroud) 如其他线程中所述,可以将Gradle配置为将测试结果记录到控制台中:
基本上,这可以通过以下任务设置:
tasks.withType(Test) {
testLogging {
// Custom configuration
}
}
Run Code Online (Sandbox Code Playgroud)
这适用于单元测试,看起来有点像这样:
...
:app:assembleDebugUnitTest
:app:testDebugUnitTest
:app:processDebugResources
com.example.StringsTest > formatValue PASSED
com.example.StringsTest > formatValueWithDecimals FAILED
1 test completed, 1 failed
Run Code Online (Sandbox Code Playgroud)
此外,单元测试我也使用以下命令运行集成测试:
$ ./gradlew connectedAndroidTest
Run Code Online (Sandbox Code Playgroud)
当我查看控制台中的输出时,我错过了为单元测试编写的单个测试结果.如何为仪器测试配置测试日志记录?
我正在使用Gradle Android插件运行Android测试,并希望查看单独的测试结果.
从问题的答案Gradle:如何在控制台中实时显示测试结果?似乎我可以使用--info(打印出很多我不关心的其他详细垃圾)或者使用这个仅适用于Java插件(不是Android插件)的闭包
test {
afterTest { desc, result ->
println "Executing test ${desc.name} [${desc.className}] with result: ${result.resultType}"
}
}Run Code Online (Sandbox Code Playgroud)
当我运行connectedCheck任务时,我可以使用其他选项/闭包来打印单个测试结果而没有其他所有"冗长".
试图build.gradle在Android-Studio 1.2中的文件末尾添加以下代码(如本文所述):
test {
testLogging {
events "passed", "skipped", "failed", "standardOut", "standardError"
}
}
Run Code Online (Sandbox Code Playgroud)
但得到了:
Error:(40, 0) Gradle DSL method not found: 'test()'
Possible causes:
- The project 'xxxxx' may be using a version of Gradle that does not contain the method.
- The build file may be missing a Gradle plugin.
Run Code Online (Sandbox Code Playgroud)
我错过了什么?
我试图按照这篇文章将更多日志打印到我的控制台: /sf/answers/2529132721/,但我不断收到这些错误:
这是我的代码
构建.gradle 文件:
import org.gradle.api.tasks.testing.logging.TestExceptionFormat
import org.gradle.api.tasks.testing.logging.TestLogEvent
apply plugin: 'groovy'
apply plugin: 'idea'
apply plugin: 'java'
repositories {
jcenter()
mavenCentral()
}
tasks.withType(Test) {
testLogging {
// set options for log level LIFECYCLE
events TestLogEvent.FAILED,
TestLogEvent.PASSED,
TestLogEvent.SKIPPED,
TestLogEvent.STANDARD_OUT
exceptionFormat TestExceptionFormat.FULL
showExceptions true
showCauses true
showStackTraces true
// set options for log level DEBUG and INFO
debug {
events TestLogEvent.STARTED,
TestLogEvent.FAILED,
TestLogEvent.PASSED,
TestLogEvent.SKIPPED,
TestLogEvent.STANDARD_ERROR,
TestLogEvent.STANDARD_OUT
exceptionFormat TestExceptionFormat.FULL
}
info.events = debug.events
info.exceptionFormat = debug.exceptionFormat …Run Code Online (Sandbox Code Playgroud)