小编Tom*_*ard的帖子

在UNIX中标识和删除空字符

我有一个包含不需要的空字符的文本文件(ASCII NUL,\0).当我尝试查看它时,vi我看到^@符号,在普通文本中交错.我怎么能够:

  1. 确定文件中的哪些行包含空字符?我曾尝试grepping为\0\x0,但没有奏效.

  2. 删除空字符?strings在文件上运行清理它,但我只是想知道这是否是最好的方法?

unix shell null special-characters

84
推荐指数
5
解决办法
11万
查看次数

Gradle脚本测试指南

测试Gradle脚本的最佳实践是什么?

我目前使用antunit对我的ant脚本进行单元测试,但我希望迁移到Gradle.我只能找到有关从Gradle或Groovy测试Java代码的文章,但没有关于测试我创建或一般测试Groovy的Gradle任务的内容.是否有相当于Gradle的蚂蚁?有没有人玩BDD框架(如黄瓜)来测试Gradle脚本?

例如,我目前有以下Ant目标

<target name="dist-bin" depends="build" description="creates a zip distribution of the current build">
    <zip destfile="build/TIBant-bin.zip">
        <zipfileset dir="src/ant" includes="**" />
        <zipfileset dir="test" includes="**" prefix="test" />
        <zipfileset dir="build" includes="TIBant.jar" />
        <zipfileset dir="build" includes="TIBant-*.html" />
        <zipfileset dir="build/examples/XMLtoProperties"
                    includes="XMLtoProperties.html"
                    prefix="examples/XMLtoProperties" />
        <zipfileset dir="lib" includes="**" prefix="lib" />
        <zipfileset dir="src/xslt" includes="**" excludes="test/**,userguide.xslt" prefix="lib/xslt" />
        <zipfileset dir="." includes="copyright.html,LICENSE.txt" />
        <zipfileset dir="examples"
                    includes="**"
                    excludes="**/build/**,**/config/default.properties"
                    prefix="examples" />
    </zip>
</target>
Run Code Online (Sandbox Code Playgroud)

你可以想象,在重构项目时很容易打破这个,所以我有以下的antunit测试来检查它.

<target name="test-dist-bin">
    <delete file="build/TIBant-bin.zip" />
    <au:assertFalse message="Bin dist still present"> …
Run Code Online (Sandbox Code Playgroud)

testing bdd unit-testing gradle

15
推荐指数
2
解决办法
3584
查看次数

"真正的"执行时间限制

使用set_time_limit()max_execution_time,并不"真正"限制(在Windows上除外)执行时间,因为如PHP手册中所述:

注意:

set_time_limit()函数的功能和配置指令 的max_execution_time只影响脚本本身的执行时间.在确定脚本运行的最长时间时,不会包括在执行脚本之外发生的任何活动,例如使用system()的系统调用,流操作,数据库查询等.在测量时间真实的Windows上,情况并非如此.

在PHP评论中提出了一个解决方案,它具有像我正在寻找的"实际"执行时间限制,但我发现它不清楚/令人困惑.

php execution-time

12
推荐指数
1
解决办法
1558
查看次数

使用Selenium确定打印介质元素的可见性

我想确定在CSS @media规则的控制下打印时页面上的特定元素是否可见.

有没有办法用Selenium做到这一点?

我知道有一个isDisplayed方法,它考虑了CSS,但我找不到告诉Selenium要应用哪种媒体类型.

有没有办法做到这一点?

或者是否有另一种方法来测试网页以确保打印所需的元素(以及那些不打印的元素)?

更新:

为清楚起见,没有计划使用javascript打印按钮.用户将使用浏览器的常规打印功能(Chrome,FF和IE)进行打印.@mediacss规则将用于控制显示和隐藏的内容.我希望Selenium假装它是打印机而不是屏幕,所以我可以测试某些元素是否会在页面的打印版本中可见.

css selenium-webdriver

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

在C中printf()的意外行为

#include <stdio.h>

int main()
{
    short int a = 5;
    printf("%d" + 1, a);
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

printf无论变量的值和类型如何,代码都会打印括在引号中的字母a.如果添加任何其他数字,除了1没有打印.为什么会这样?

c printf

-3
推荐指数
1
解决办法
258
查看次数