在产品的研发阶段,会有一个非常有意思的阶段,叫Dogfood,中文直译是狗食。
上次和一个朋友说这个词的时候,她一脸的不解
其实这个Dogfood阶段,说白了,就是产品的研发人员要每天都使用自己的产品,比如手机,每天都把自己的产品带着并且把它当作主要的手机来用,这样才可以更贴近实际的使用场景,以发现很多在办公室或者实验室不容易发现的问题。当然处于研发阶段的产品问题多多,可用性也很差,感觉就和吃狗食一样难受(比如我现在就是裤兜里装个N个手机,穿行于北京地铁之间,不小心被C某CC黑了600RMB的使用费)。
但为了保证产品的质量,Dogfood是必不可少的阶段,至于好不好吃就要研发人员自己感受了。
今天更新了下Blog,
更新了下信息,也正式和MVP项目告别了,
很感谢MVP项目:
- 让我认识了很多堆朋友(比如,Windows Mobile堆,Windows Client堆,Windows Server堆,等等等等);
- 让我认识了现在的老板;
- 让我彻底转行;
- 哦,对了,最重要的,当年相亲的时候俺老婆知道俺是MVP,很是崇拜o(∩_∩)o
今后我会是一名测试工程师,主要关注Windows Phone 7的用户体验,如果你觉得某个设计让你很不爽,欢迎和我讨论。
希望:
1. Eddie老大不要把俺们给忘了,比如“小易”的召唤,俺还是会100%支持的。
2. Sisley美女如果和产品组开会也要记得俺。
3. 希望Windows Phone 7这东东早点发布,这样俺就可以不用老是发灌水贴了,说些不痛不痒的东东。
1. 我的Email 2.4G的邮件,这东东没说啥都给你下载下来,最有用的才是最好的。
2. 我的Email里面定义了一堆自定义文件夹和规则,用到现在为止还没发现出过什么错。
3. 这东西的UI设计虽然很简单(从色彩和样式上),但是很漂亮,而且考虑到了移动的特点(室外光线变化)
4. 在北京N多人会有1小时左右的时间在路上(地铁),现在的使用感觉,用WP7,你起码可以早走一些,避开高峰,而同时你处理邮件又不会耽误,这是最吸引我的地方...
另外,WP7这东西的很多内建的功能会让IT Pro们很熟悉....
第一次拿到Windows Phone 7的测试版设备(我们测试工程师说的Dogfood Device),第一个感觉,黑,这东东通体黑了吧唧,里面运行的系统底色也是黑的,偶尔刷机遇到bug把这宝贝刷成黑屏开不了机的,那就彻底成为了一块黑砖头了。说真的刚刚看到这WP7还真没一见钟情(我对iPhone开始有点好感,但看到满大街的都是一个样子的iPhone,就渐渐对它没啥好感了)。
所以其实开始的时候,我是带着“有色”眼镜去接触WP7的,自然对她的印象就好不到那里去,不过一天的使用下来,感觉到几点:
1. 这东西4次触摸之内肯定能找到你要的应用程序,而通常来说你最常用的程序2~3次触摸基本就能开启了,其中包括一次滑开锁屏。
2. 这东西点起来很容易,因为图标大,想想WM6.X那很小的图标,再想想地铁上一个个埋头苦点的兄弟姐妹们(估计他们CS一定好?)
3. 这东西的“后退”,“Win 徽标”,“搜索”键很是方便,其实主要还是“后退”和“Win徽标”,因为WP7是多任务的系统,所以切换程序就太方便了,“后退”一下就回到上次你打开的程序,“Win徽标”一下就回到了主界面,其实仔细想想这个主界面和Windows桌面版的开始菜单非常相似,但在Phone上做成了主界面,这个设计还真是很巧妙,用Windows的人一定会感觉这东西操作起来很熟悉,但是和桌面的Windows完全不一样。
4. 界面简化了,WM6.X的手机(当然OEM会对手机界面做优化定制,比如三星这点做的比较好)那标准界面就是个Windows XP,只是为了适应2~3寸的屏幕缩小了而已,所以你会感觉特别压抑,WP7这次功能界面很简洁明了,有种豁然开朗的感觉(我不能说的太详细了),总体来说你可以把更多的时间花在与别人交流上,而不是寻找和看清一个个小控件上。
终于,微软这次吸取了教训,不在以做PC的方式来对待手机了,这点还是很值得赞赏的!
2月15日,一个值得纪念的日子,因为今年这个春节又在美国贡献给了Windows Phone7测试,
可以说这东东很牛,有些颠覆传统,另外这Phone的硬件也很牛.....
考虑买手机的,要记得微软的传统- 后来的才是最好的。
WP7 这东西不能说的太多, 期待吧! 哥不只是个传说!
Windows Virtual PC(VPC7),这个东东很拉风,不过有些CPU无法支持它,我的Dell OptiPlex 755上的Intel(R) Core(TM)2 Duo CPU E7200 @ 2.53GHz,2533 Mhz,就是如此,貌似当年为了控制成本,不少商用机CPU都没带 Intel™ Virtualization Technology/AMD-V®(说实话,我也是在VPC7出来之后才注意到有这么个技术的...)。
那我还想用VPC怎么办?
答案1:选择VPC 2007 SP1,下载:http://www.microsoft.com/downloads/details.aspx?FamilyId=28C97D22-6EB8-4A09-A7F7-F6C7A1F000B5&displaylang=en
不过有个地方要注意(我被这个地方骗了):
如果你的Windows 7RC上已经安装了Windows Virtual PC(VPC7),你发现自己CPU无法支持,想安装VPC2007时会出现以下的提示:

要解决这个问题,你需要关掉安装的Windows Virtual PC 7:
1.控制面板-> 程序->程序和功能->打开或关闭Windows功能,
2. 去掉Windows Virtual PC的选项,如下图:

3.重启Win7,然后双击VPC2007的安装程序完成安装。
答案2: 安装VMware,不过这个东东要付钱,我就没试过了,不过据说可以...
Windows 7 Beta发布以来,一个感觉,7会针对Vista带来的问题进行改善:
工作时当你真正淹没在Word, Excel, Outlook, Project,IE,VSTS,MSN, QQ, Office Communicater, Windows Explorer 的时候,你最希望什么?简单点,快速的切换窗口。
UAC改变了你的使用习惯,鼠标右键,鼠标左键...,能快点吗?
Runas参数真多,但是你想在Vista上以其他用户身份运行应用程序又能怎样呢?
如果你想了解答案,那么就来看看技术指引视频:
http://technet.microsoft.com/zh-cn/dd793600.aspx
如果你使用VSTS 2008 SP1的WEB TEST向服务器上传文件时出现下列现象的:
Request failed: Cannot close stream until all bytes are written.
System.Net.WebException: The request was aborted: The request was canceled. ---> System.IO.IOException: Cannot close stream until all bytes are written.
at System.Net.ConnectStream.CloseInternal(Boolean internalCall, Boolean aborting)
--- End of inner exception stack trace ---
at System.Net.ConnectStream.CloseInternal(Boolean internalCall, Boolean aborting)
at System.Net.ConnectStream.System.Net.ICloseEx.CloseEx(CloseExState closeState)
at System.Net.ConnectStream.Dispose(Boolean disposing)
at System.IO.Stream.Close()
at Microsoft.VisualStudio.TestTools.WebStress.DataCaptureStream.CloseStreamAndBaseStreams(Stream stream)
at Microsoft.VisualStudio.TestTools.WebStress.DataCaptureStream.Dispose(Boolean disposing)
at System.IO.Stream.Close()
at Microsoft.VisualStudio.TestTools.WebTesting.FormPostHttpBody.WriteHttpBody(WebTestRequest request, Stream bodyStream, Boolean excludeFileContents, Int64& contentLength)
at Microsoft.VisualStudio.TestTools.WebTesting.FormPostHttpBody.WriteHttpBody(WebTestRequest request, Stream bodyStream)
at Microsoft.VisualStudio.TestTools.WebStress.WebTestTransaction.IssueRequestWithBody(IAsyncResult ar)
就说明你指定文件没找到(This is actually casued by File Not Found),要注意的是这个东东需要填全路径,而且不能用这种样式:"C:\Doument and Settings\a.jpg", 不能带"
来淘宝上逛逛,申请了支付宝的数字证书,得,IE一到登录界面立马挂掉...
WinDBG attach到IE上,抓了一下,是支付宝安全登录控件的那个ActiveX控件的事情,这家伙要读取本地证书,可是这个是需要本地的管理员权限的...
在Microsoft这么久,UAC这东西习惯性的不关,自然支付宝的控件是没权限读了,于是乎,这控件倒是很牛,直接崩溃了...很是无语,我是做测试的...应该说这是最基本的一个Scenario了...唉,感叹一下。
上支付宝上面瞧了一眼Known Issue,上面让关Vista的UAC...又是无语,做了一个安全控件来保障安全,但是却要关别人的安全机制,很是讽刺。
整个解决方案告诉大家吧,别关UAC!
在开始菜单上面找到IE的图标(开始菜单->所有程序),右键,选择“以管理员身份运行”,之后UAC弹出框选择允许,然后上支付宝就没问题了。
看一下Debug的信息(AV Exception happen):
ntdll!DbgBreakPoint:
77d17dfe cc int 3
0:029> g
ModLoad: 02670000 0268a000 C:\Program Files\Dell\QuickSet\dadkeyb.dll
ModLoad: 703b0000 703bc000 C:\PROGRA~1\COMMON~1\MICROS~1\OFFICE12\MSOXMLMF.DLL
ModLoad: 6c4b0000 6c507000 C:\Windows\system32\Dxtmsft.dll
ModLoad: 65260000 66178000 C:\Windows\system32\imageres.dll
ModLoad: 05c80000 05d2d000 C:\Windows\system32\aliedit\aliedit.dll
echoTest 被执行
结束输入密码
ModLoad: 64340000 65258000 C:\Windows\system32\imageres.dll
echoTest 被执行
结束输入密码
ModLoad: 65260000 66178000 C:\Windows\system32\imageres.dll
ModLoad: 64340000 65258000 C:\Windows\system32\imageres.dll
ModLoad: 684f0000 68516000 C:\Windows\system32\dssenh.dll
ModLoad: 0b510000 0b530000 C:\Windows\system32\aliedit\pta.dll
(1370.10e0): Access violation - code c0000005 (first chance)
First chance exceptions are reported before any exception handling.
This exception may be expected and handled.
eax=00000000 ebx=75f0dbbe ecx=07a4408c edx=00000000 esi=00000000 edi=00000044
eip=75f0db57 esp=126aedd0 ebp=126aeddc iopl=0 nv up ei pl zr na pe nc
cs=001b ss=0023 ds=0023 es=0023 fs=003b gs=0000 efl=00010246
*** ERROR: Symbol file could not be found. Defaulted to export symbols for C:\Windows\system32\CRYPT32.dll -
CRYPT32!CertOpenStore+0x60e:
75f0db57 8b07 mov eax,dword ptr [edi] ds:0023:00000044=????????
Call Stack (PTA是支付宝的ActiveX控件):
STACK_TEXT:
WARNING: Stack unwind information not available. Following frames may be wrong.
126aeddc 75f0db7b 00000000 126aee00 75f0dbdd CRYPT32!CertOpenStore+0x60e
126aede8 75f0dbdd 00000000 00000000 75f0db30 CRYPT32!CertOpenStore+0x632
126aee00 0b513acf 00000000 00000000 00000003 CRYPT32!CertEnumCertificatesInStore+0x1f
126aee3c 0b513a74 0059004d 0b510000 00000000 pta+0x3acf
126aee64 0b514641 0b51f240 00010000 00dde300 pta+0x3a74
126aee84 765b7951 079ffed8 126aeee4 00d3dce0 pta+0x4641
126aeea0 765b7bfc 079ffed8 00000020 00000004 OLEAUT32!DispCallFunc+0xb2
126aef30 0b517346 05199244 079ffed8 00000000 OLEAUT32!DispCallFunc+0x35d
126aef58 6c79262c 079ffed8 00000002 6c78edfc pta!DllUnregisterServer+0x4f7
126aef94 04ebe9b7 07b788a8 079ffed8 00000002 jscript!DllCanUnloadNow+0xb1cb
126aeffc 04ebc017 04c4031e 07b788a8 079ffed8 Scxpx86!GetFactory+0x4387
126af07c 6c792524 07b788a8 079ffed8 00000002 Scxpx86!GetFactory+0x19e7
126af0f0 6c792c0e 07b788a8 079ffed8 00000002 jscript!DllCanUnloadNow+0xb0c3
126af134 6c792b05 07b788a8 126af184 00000002 jscript!DllCanUnloadNow+0xb7ad
126af1e8 6c791019 00000000 00000000 00d12500 jscript!DllCanUnloadNow+0xb6a4
126af200 6c792aa8 00000000 00000000 00d3dde0 jscript!DllCanUnloadNow+0x9bb8
126af28c 6c7900f2 07b788a8 0000002c 00000001 jscript!DllCanUnloadNow+0xb647
126af2b8 6c792bb0 07b788a8 00000000 00000001 jscript!DllCanUnloadNow+0x8c91
126af370 6c791019 126af3b4 00000000 07be1738 jscript!DllCanUnloadNow+0xb74f
126af388 6c791b7f 126af3b4 00000000 00000000 jscript!DllCanUnloadNow+0x9bb8
126af3f8 6c77f9d2 07be1738 126af5a8 00000000 jscript!DllCanUnloadNow+0xa71e
126af448 6c77fdf7 126af5a8 126af588 11a55e6c jscript!DllGetClassObject+0x25fc
126af4ac 6c77fc46 1133e00c 0cb95eec 00000000 jscript!DllGetClassObject+0x2a21
126af4d8 0712ca36 11a55e6c 1133e00c 0cb95eec jscript!DllGetClassObject+0x2870
126af538 0712c867 00000000 084d7ce8 08801aa0 mshtml!DllGetClassObject+0x2c7c5
126af5f4 0712c687 00000000 00000000 085c5708 mshtml!DllGetClassObject+0x2c5f6
126af628 0710fe99 084b6ef0 00000000 00000000 mshtml!DllGetClassObject+0x2c416
126af678 0711fc00 00731b98 00000000 084b6ef0 mshtml!DllGetClassObject+0xfc28
126af690 0712595f 0712597d 086baa60 084b6ef0 mshtml!DllGetClassObject+0x1f98f
126af74c 071200f1 0014e50e 086baa60 084b6ef0 mshtml!DllGetClassObject+0x256ee
126af764 07120072 0014e50e 086baa60 084b6ef0 mshtml!DllGetClassObject+0x1fe80
126af77c 07120224 086baa60 0014e50e 084b6ef0 mshtml!DllGetClassObject+0x1fe01
126af79c 07120191 084b6ef0 00000001 126af7bc mshtml!DllGetClassObject+0x1ffb3
126af7ac 07162281 085ba458 084b6ef0 126af7f0 mshtml!DllGetClassObject+0x1ff20
126af7bc 07185647 085ba458 00000000 00000000 mshtml!DllGetClassObject+0x62010
126af7f0 07191df7 126af88c 00008002 00000000 mshtml!DllGetClassObject+0x853d6
126af810 7672f8d2 000107cc 00000015 00000000 mshtml!DllGetClassObject+0x91b86
126af83c 7672f794 07191d46 000107cc 00008002 USER32!GetMessageW+0x93
126af8b4 76730008 00000000 07191d46 000107cc USER32!GetWindowLongW+0x115
126af918 76730060 07191d46 00000000 126af990 USER32!PeekMessageW+0x269
126af928 70bc42c1 126af940 00000000 00000000 USER32!DispatchMessageW+0xf
126af990 76e84911 087c9ab0 126af9dc 77d0e4b6 IEFRAME!Ordinal224+0x11101
126af99c 77d0e4b6 0cb7d4a0 65a07d7d 00000000 kernel32!BaseThreadInitThunk+0x12
126af9dc 77d0e489 70bc3fdb 0cb7d4a0 00000000 ntdll!RtlInitializeExceptionChain+0x63
126af9f4 00000000 70bc3fdb 0cb7d4a0 00000000 ntdll!RtlInitializeExceptionChain+0x36
随着Windows 7的M3版本发布(从connect.microsoft.com上可以下载), 终于亲手体验了一下传说中的7.
Windows Media Player12,更新的计算器,Gadget的排列方式更智能可以像Mac 的图标方式排列,无疑这个版本带来了很多的用户体验。
随着使用的深入,发现其实内核的变化不多,UAC还在,只是更贴心,不会时不时的蹦出来要你确认,如果你的计算机是触摸屏幕,你甚至可以体验到传说中的Surface技术,有想过放弃鼠标和键盘吗?一切都是你的双手控制...
突然想到...
Windows 2000和Windows XP的故事,Windows 2000的版本号Windows NT 5.0,Windows XP版本号 Windows NT 5.1,
Windows XP的UI是一次飞跃,但内核没有太大变化...
我们来猜想...
Windows Vista和Windows 7的故事, Windows Vista版本号6.0, Windows 7的版本号 6.1(目前的信息是这样的)
Windows7的UI又是一次飞跃,但内核和Wndows Vista比较没有太大变化...
看来是时候来迎接Windows 6时代的黄金系统喽!
啥也不说了,大家用标题做关键字搜一下GOOGLE,进入服务了,有啥bug记得发Email给我。youyang1983AThotmail.com
特别关心的一个问题:
1. 中国的网络上传和下载有多快。美国这里竟然到了 16M下载/4M上传的速度。
唉,感叹啊!
顺便说下,微软的摄像头还是蛮不错的,面部识别和跟踪的效率不错,哈哈,为同一个team的产品打打广告了。
从这个帖子起,我的Blog也正式转向了测试技术...
因为产品测试周期太紧,所以我现在是忙晕了的状态,所以尽量发一些简洁的快讯吧。
切入正题:
Microsoft Silverlight V1.0相信很多朋友都见过了,大有与Flash分天下的趋势,但是在V1.0版本中,并没有实现Accessbility的APIs,也就是说,你用Automation Test Framework是无法找到Sliverlight中的控件的,因此你的自动化测试基本就别想了,目前这个问题会在V2.0中解决,V2.0 Beta1好像已经出来了...
今天MSW上一个醒目的标题-“Bill 说Windows7明年会发布”,想想Windows 6那漫长的开发周期,心里不禁感叹,微软的Windows开发也终于开始提速了,其实,从我的感觉,微软里面很多人会有很鲜明的风格,最明显的Bill和Steven,Bill偏重于技术,往往会重视新技术的研发,但多多少少会忽略一些用户的需求,听很多老前辈说,多年以前,微软里面常常是Developer告诉PM,这个功能不能实现,而相信大家也会感觉到Windows/Office的“霸道”,往往新版本中让用户去适应新的变化,当然,我觉得这也是微软的功绩之一,因为它通过这种变化向用户传递了一种创新。而Steven是做市场出身,相信大家有看到过N年前Steven卖Windows的那个广告,很张扬的性格,但是我觉得市场确实需要这样的人,随着Bill王朝的渐渐退去,微软也正慢慢的进行着变革,产品开发周期的缩短,更注重市场,相信对我们来说是一个好消息。
Boss说,到Redmond工作3个月,Have fun,于是乎我就被扔到了这个半里地看不到人影的地方...
作为80后的我们,当技术已经不是障碍的时候,与人的交流与沟通才是真正的难点,整天不停的开会,脑子里面充斥着美语,西班牙口音英语,中国口音的英语,最烦人的是印度人的英语,我的老天爷啊。其次,还得考虑咱说的话他们听了Happy不,好难啊...
Microsoft这个地方,不管你有什么需求,都会有产品满足你,结果就导致了一个问题,不能说我们作不到,只能去赶快的把这个新东西搞定,用圈内兄弟们的话,如果产品搞不定,就搞定人。
老大们的脑子里面经常是10几个Projects,所以,你别指望老大们帮你想今天要干什么,只能自己去想,实际上更形象的说,老大们就是公章,你有啥需求了,发封信给老大们,他们找相应的人,如果你也不知道让你的老大干什么,那么你的老大也会让你不知道干什么的。
你干IT之前,特别是到Redmond这种地方之前,一定要下定决心,要么找到老婆赶快结婚,要不你就35以后再说,现在是巨痛苦的,哎,望着大韩航空的空姐们只能感叹了,原来国际航线的空姐漂亮都是为了照顾我这样的...
Redmond这边每小时最低工资7.99USD,我每小时的工资7.50USD,得,还没够上人家的最低工资标准....
呵呵,有些对不起盆老大,N久没上来,上来就发招聘广告,不过最近确实N忙,顺便发则招聘广告
Microsoft R&D Group下的CTI Team现在招Tester,
要求:
1. 对Testing感兴趣,以前没有经验的也可,不过你得想出来这样一个问题:
让你测NOTEPAD的打开功能,你至少要想出10种以上的Case
2.在Windows Client(Windows Vista/XP),Windows Server 2003, MOSS 2007,SQL SERVER, ASP.NET, IIS, AD的一个方面,或者多个方面(越多越好)有一定的研究,比如:
你知道Windows Vista的 网络知晓服务的原理吗?
你知道AD的组策略分发的原理吗?
3. Coding技巧(可选): 熟悉C++/C#, Batch, Script, PowerShell
4. 英文,我前一阵发现某些同志大学CET 6都过了,结果Release不知道是啥意思,所以,英文的读写功底是要有的,因为Team整个沟通都是英文,至于口语,如果你说的好,倒是有机会被扔到Redmond工作去。
其他
Vendor职位,工作地点在Beijing SIGMA Building,Microsoft R&D Group
MVP优先,有工作经验者优先(2~3年)(刚毕业的同志们,如果你们觉得自己在Testing方面有天赋,那么欢迎),
最后我加一条,是MM的,并且是PLMM的,我负责Training你的Testing Skill,呵呵。
我的联系方式自己找,就像Windows Team面试一样,你首先得能找到面试的地方才有的谈。
中英文简历,你对上面3个问题的回答,PLMM的,你的照片一张,呵呵