1

我们一直在玩新的 MonoTouch NUnit 测试项目,它非常棒。

我们已经在 Windows 上的 CI 软件中运行了其中一些测试,并且我们在控制台上打印了很多东西,以查看测试过程中出了什么问题。

如果我们为 MonoTouch 构建并运行这些测试,并在 XCode 的管理器中查看控制台,它们看起来很丑:

Feb 20 10:34:57 unknown UIKitApplication:com.ourcompany.ourapp[0xab78][8329] <Notice>: [Our usually pretty rainbows and unicorn console output here]

有没有办法在 iOS 中清理这个输出?至少用更有意义的东西替换“未知”,或者完全删除它和 UIKitApplication 会很好。

此外,我们不介意以某种方式调用NSLog而不是Console.WriteLine它是否会解决此问题。

4

2 回答 2

2

我认为不需要更改现有测试的最简单方法是:

  • 使用可选的 网络记录器。这会将每个测试结果发送到套接字服务器,将它们与来自 iOS 设备的其他日志分开;和

  • 作为参数调用Console.SetOut(在 AppDelegate.cs 中)。TouchRunner.Writer这应该(现在未经测试;-)将您对控制台的所有现有写入记录到网络记录器中。

于 2012-02-20T18:01:07.753 回答
1

据我所知,没有办法修改写入 Xcode 控制台的内容,因为每行开头的内容都是由系统自动编写的。

不过,您可以在终端中使用 mtouch、grep 和 sed 做一些魔术:

/Developer/MonoTouch/usr/bin/mtouch --logdev | grep com.yourcompany.yourapp | sed 's/.*<.*>: //' 
于 2012-02-20T21:40:16.647 回答