2006年11月6日
#
摘要: 目前我们在开发和测试Win7下面的活动目录管理工具,用WPF写的。测试方面的三大重要任务:
1. 因为我们的产品是跟在Win7里面的,所以编译,发布流程是跟着Windows的走。换句话说,每次测试新版本都需要重新装刚刚编译出来的Windows 7。其次,活动目录不是一个机器就可以了,要搭建多个服务器节点(DC)。所以如何高效自动地完成测试环境的搭建是很有挑战的
2. 完成WPF程序的自动化测试。简单地说,就是要通过代码去模拟用户的UI操作。比如点鼠标,输入数据,点确定按钮等等。大家排排脑袋想下这个事情的难度。比如给你一个WPF写的计算器,你知道怎么做么?如何写出高效,稳定和全面的UI自动化也是很有挑战的
3. 熟悉活动目录。熟悉活动目录的就知道这个东西有多复杂。当然不熟悉的也没关系,不能指望一个人什么都知道
我们招人的目的就是做好上面三点工作。技术方面的话,能搞定C#和Windows就可以了。搞定的意思是指能搞定技术细节,比如:
......
阅读全文
《Windows 高效排错》 可以在CSDN读书频道预览了
地址在这里:
http://book.csdn.net/bookfiles/555/
读书频道的排版有些问题,看起来不是很舒服。如果想看PDF的,可以在这里下载
http://www.cnblogs.com/lixiong/archive/2006/08/16/475520.html
纸板书籍估计在11月中下旬面世
现在在China-pub, dearbook等网上书店已经有介绍,地址分别
http://www.china-pub.com/computers/common/info.asp?id=37008
http://www.dearbook.com.cn/book/230727
您的看法非常重要。如果你看过这本书的PDF,了解本书的内容和潜在读者,请您在上面的链接中留下你的观点,便于其它不了解这本书的人选择。
Dudu, 书中有关于cnblogs性能优化的案例,Jeffery Zhao,补充链接中有WCF Assembly Loading的案例。非常希望听到你们两位的评价。
如果您通过这本书介绍的方法解决过实际的问题,非常希望您能够分享您的经验。您可以发邮件到eparg@msn.com。如果您的分享能够帮助其它读者,我非常希望能够送书给您作为答谢。
如果您对书中所述内容有疑惑,也欢迎您写信来讨论。我会尽快回复。如果我们之间的讨论对其他读者有帮助,我也会放到网上,同时送书给您作为答谢。
摘要: 最近一位朋友的ASP.NET程序怀疑有内存泄露问题。几个简单的页面,起来运行几分钟后,虚拟内存就到600多MB。从性能监视上看,private bytes只有200多MB。这样的问题从经验上来说,十有八九都是内存碎片了。ASP.NET程序发生内存碎片的原因比较多,我常见的有:1.Web.config中的debug=true,导致batch compilation=false,使得每一个ASPX页面...
阅读全文
1. 安装Windbg到C:\Debuggers目录
2. 安装Application Verifier。对需要调试的程序激活“Handles - Detect invalid handle usage”
3. 确保编译的时候生成了目标程序的symbol文件,并且统一部署到自定义的symbol目录。
4. 启动目标程序
5. 启动性能监视器开始监视目标程序,添加
Process
Processor
Memory
System
6. 启动windbg,设定好symbol路径,开始监视目标程序
7. 在windbg命令窗口输入:
.logopen c:\log.txt
记录windbg输出到文本文件
8. 运行!handle和!htrace命令,等待命令执行完成
9. 输入下列命令避免1st chance exception干扰问题的重现
SXN *
SXN av
SXN clr
SXN eh
SXN cc
10. 输入g命令,让目标程序开始运行
11. 重现问题,问题发生后用windbg挂起程序
12. 再次输入!handle和!htrace,保存handle信息
13. 运行.dump命令抓取问题发生后的dump文件
14. 输入.logclose关闭log文件
15. 收集性能日志文件
通过分析C:\log.txt文件中问题发生前后的差异,找到发生泄漏的handle是在什么callstack中分配的,以及handle的类型。在结合源代码定位。