相关疑难解决方法(0)

Grep正则表达式不包含字符串

我正在传递一个正则表达式模式列表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)

regex grep

162
推荐指数
3
解决办法
22万
查看次数

Gradle:如何在控制台中显示androidTest结果?

如其他线程中所述,可以将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)

当我查看控制台中的输出时,我错过了为单元测试编写的单个测试结果.如何为仪器测试配置测试日志记录?

android integration-testing gradle android-testing

24
推荐指数
2
解决办法
2167
查看次数

Gradle Android:如何在不使用--info的情况下显示测试结果

我正在使用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任务时,我可以使用其他选项/闭包来打印单个测试结果而没有其他所有"冗长".

android gradle

8
推荐指数
1
解决办法
2697
查看次数

找不到Gradle DSL方法:test()

试图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)

我错过了什么?

unit-testing gradle android-studio

5
推荐指数
1
解决办法
2184
查看次数

无法解析符号 testLogging、事件、异常格式- Gradle

我试图按照这篇文章将更多日志打印到我的控制台: /sf/answers/2529132721/,但我不断收到这些错误:

  1. 无法解析符号 testLogging
  2. 无法解析符号事件
  3. 无法解析符号异常格式
  4. 无法解析符号调试等。

这是我的代码

构建.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)

gradle

5
推荐指数
1
解决办法
2148
查看次数