从命令行运行测试时输出Console.WriteLine内容

测试方法调用Console.WriteLine()System.Diagnostics.Trace.WriteLine()时,Visual Studio测试管理器的测试输出窗口能成功显示追踪内容。

但是,如果用dotnet test ,则不会输出追踪内容。

难道Visual Studio使用了某种魔法获取了追踪内容吗?

其实,Visual Studio调用的不是dotnet test,而是vstest.console/Logger:trx选项可以把测试结果保存为文件,该文件里保存有追踪内容。我猜想Visual Studio正是读取了trx文件把测试[……]

继续阅读

.NET测试框架测评

最近用了xUnit.net,结构简洁。用[Fact]标记无参测试方法,用[Theory]标记有参测试方法并用[InlineData]提供参数。而且,xUnit.net可以使用静态类作为测试类。这使得编写简洁的测试代码成为可能。

美中不足是xUnit的断言除了Assert.True()Assert.False()以外,都不接受自定义错误消息。当在持续集成服务器上出错,且本地无法重现时,根本无法知晓到底具体的出错情况。

xUnit.net团队坚持认为不应添加自定义消息。[ref]””. . . [].

继续阅读

选择空格还是制表符?

关于代码缩进用空格还是制表符的问题,一直以来大家都各执一词,往往说“只要统一最重要”[1]夕夕. 写代码时,缩进使用 tab 还是空格? . . 2013-07-08 [2018-06-03].[ref]”陈龙”. . . [].

继续阅读

   [ + ]

1. 夕夕. 写代码时,缩进使用 tab 还是空格? . . 2013-07-08 [2018-06-03].

Git GUI客户端测评

我今天要找一下哪些Git GUI客户端支持--find-copies-harder,于是写本文记录一下。

TortoiseGit

我最常用的是TortoiseGit,因为以前用的是TortoiseSvn,觉得比较顺手。

我发现查看diff是我日常git操作。提交前可能查看不止一次(比如使用提交后恢复)。查看历史时当然也要双击文件看diff。TortoiseGit可以查看那补丁,但没有内嵌双栏对比工具,而我比较喜欢用Beyond Compare查看差异。

没有内嵌双栏差异比较工具可能算是TortoiseGit的一个劣势。

另外,TortoiseGit不能在日志窗口调用-[......]

继续阅读

uMatrix介绍

单元格左上角的三角形表示已提交的规则。如果已提交规则与当前规则的放行结果不同,总是可以使用橡皮擦按钮还原规则。

Git笔记

如何查看提交中是否包含重命名或复制?

$ git log --name-status -M -C -1  
commit c04ecb6edd602a8463b5239a5fde900b2b3 (HEAD -> 256818)
Author: gqqnbig <gqqnbig@gmail.com>
Date: Wed Nov 15 10:45:17 2017 -0800

Extract controls from ReviewApplication.aspx so that they can be reused in viewSummary.aspx.
BugzI[......]

继续阅读

群星攻略

假设平均星球人口11.4

如果基础科学实验室的价格为在51和54矿之间,

  • 当占领3颗星时,就要开始在产出为3的宇宙研究点数上造科研站。
  • 当占领7颗星时,就要开始在产出为2的宇宙研究点数上造科研站。
  • 当占领18颗星时,就要开始在产出为1的宇宙研究点数上造科研站。

如果走机器人路线,要在有典藏扎格教授在时点机械飞升,这时一般是第三个飞升。

建设星球时,殖民地盖在产电地块。如果庇护所位置实在太差,在升级成行星首府前拆掉。

星球有5人口才能造行星首府,在这之前,不造基础矿场、基础水培农场、基础发电站,因为有了行星首府后可以直接造更高级建筑。当[……]

继续阅读

论markdown

markdown是近几年来非常火的一门轻量级标记语言,主打易读性。这里的易读性,说的是在源代码层面易读。但是我觉得markdown被过于吹捧,以至于有人记笔记用markdown、写书也用makrdown,不一定是最好的选择。

Github支持用markdown、asciidoc、mediawiki等写readme文件。我想过,为什么GitHub不支持HTML或者Latex语法的Readme呢。原因可能是两个。

第一,markdown文件可以在文本编辑器里保持可读性,程序员克隆仓库后,用记事本就能看Readme,阅读体验比把markdown渲染成HTML差得不太多。如果Readme是[……]

继续阅读